SYNOPSIS
use Progress::Any::Output;
# use default options
Progress::Any::Output->set('TermProgressBarColor');
# set options
Progress::Any::Output->set('TermProgressBarColor',
width=>50, fh=>\*STDERR, show_delay=>5);
DESCRIPTION
THIS IS AN EARLY RELEASE, SOME THINGS ARE NOT YET IMPLEMENTED E.G.
TEMPLATE, STYLES, COLOR THEMES.
Sample screenshots:
This output displays progress indicators as colored progress bar on
terminal. It produces output similar to that produced by
Term::ProgressBar, except that it uses the Progress::Any framework and
has additional features:
* colors and color themes
* template and styles
* displaying message text in addition to bar/percentage number
* wide character support
XXX option to cleanup when complete or not (like in Term::ProgressBar)
and should default to 1.
METHODS
new(%args) => OBJ
Instantiate. Usually called through
Progress::Any::Output->set("TermProgressBarColor", %args).
Known arguments:
* wide => bool
If set to 1, enable wide character support (requires
Text::ANSI::WideUtil.
* width => INT
Width of progress bar. The default is to detect terminal width and
use the whole width.
* color_theme => STR
Not yet implemented.
Choose color theme. To see what color themes are available, use
list_color_themes().
* style => STR
Not yet implemented.
Choose style. To see what styles are available, use list_styles().
Styles determine the characters used for drawing the bar, alignment,
etc.
* template => STR (default: '%p [%B]%e')
Not yet implemented.
See fill_template in Progress::Any's documentation. Aside from
template strings supported by Progress::Any, this output recognizes
these additional strings: %b to display the progress bar (using the
rest of the available width), %B to display the progress bar as well
as the message inside it.
* fh => handle (default: \*STDOUT)
Instead of the default STDOUT, you can direct the output to another
filehandle.
* show_delay => int
If set, will delay showing the progress bar until the specified
number of seconds. This can be used to create, e.g. a CLI application
that is relatively not chatty but will display progress after several
seconds of seeming inactivity to indicate users that the process is
still going on.
keep_delay_showing()
Can be called to reset the timer that counts down to show progress bar
when show_delay is defined. For example, if show_delay is 5 seconds and
two seconds have passed, it should've been 3 seconds before progress
bar is shown in the next update(). However, if you call this method, it
will be 5 seconds again before showing.
ENVIRONMENT
COLOR => BOOL
Can be used to force or disable color. See Color::ANSI::Util.
COLOR_DEPTH => INT
Can be used to override color depth detection. See Color::ANSI::Util.
COLUMNS => INT
Can be used to override terminal width detection.
SEE ALSO
Progress::Any
Term::ProgressBar
Ruby library: ruby-progressbar,
https://github.com/jfelchner/ruby-progressbar