Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Re: Super simple progress (Twirling baton alternative)

by jcb (Priest)
on Dec 31, 2019 at 00:53 UTC ( #11110790=note: print w/replies, xml ) Need Help??

in reply to Super simple progress

The "twirling baton" is another simple progress indicator that may be more suited to large jobs with indeterminate ends. Here's a simple implementation that I wrote years ago, long before even finding this site:

BEGIN { my @chars=('-','\\','|','/','-','\\','|','/'); my $step=0; sub baton_start { $step=0 ; goto &baton_step } sub baton_step { print STDERR $chars[$step++],"\b"; $step=0 if $step >=8 } sub baton_end { print STDERR "\b "; } }

I have used this in many one-off scripts and I generally just copy and paste it when needed, since it is so simple.

Replies are listed 'Best First'.
Re^2: Super simple progress (Twirling baton alternative)
by Anonymous Monk on Dec 31, 2019 at 03:10 UTC
    Not on windows you havent :) \r\r\r\r\r\r\r\r\r\r\r\r

      You are correct about that; none of my personal stuff has been on Windows for over a decade now. Come to think of it, none of the "heavy lifting" at $WORK has been on Windows either.

      I presume the builtin Windows excuse for a terminal emulator does not properly handle ASCII backspace and overwrite? Have you tried rxvt or other ports of X11-native terminal emulators that actually work? There is even a MinGW X server if I recall correctly, so you could use xterm on Windows. :)

        doesn't work in whatever old version i have :)

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://11110790]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (5)
As of 2020-05-27 00:28 GMT
Find Nodes?
    Voting Booth?
    If programming languages were movie genres, Perl would be:

    Results (152 votes). Check out past polls.