Progress::Any::Output::TermProgressBarColor - Output progress to terminal as color bar
use Progress::Any::Output; Progress::Any::Output->set('TermProgressBarColor', width=>50);
THIS IS AN EARLY RELEASE, SOME THINGS ARE NOT YET IMPLEMENTED E.G. TEMPLATE, STYLES, COLOR THEMES.
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:
XXX option to cleanup when complete or not (like in Term::ProgressBar) and should default to 1.
Instantiate. Usually called through
Width of progress bar. The default is to detect terminal width and use the whole width.
Choose color theme. To see what color themes are available, use
Choose style. To see what styles are available, use
list_styles(). Styles determine the characters used for drawing the bar, alignment, etc.
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.
Can be used to force or disable color.
Can be used to override color depth detection. See Color::ANSI::Util.
Can be used to override terminal width detection.
Background updating (through threads or forked process), so progress can still be updated even though the main process is waiting on I/O or external process. But we need to think of a good way to synchronize output.
Animations, like rotating line (
- / | \ -) or pulsating (
. o O o .). Also animation by varying colors.
Detect connection speed and degrade to lower-frequency updating if connection is slow.
Styles. Preset formats as well as some behaviors like animation.
Detection of column change. On each update(), retrieve terminal width again.
Ruby library: ruby-progressbar, https://github.com/jfelchner/ruby-progressbar
Steven Haryanto <firstname.lastname@example.org>
This software is copyright (c) 2013 by Steven Haryanto.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.