logbar 0.1.1

Log-friendly progress bar
Documentation
  • Coverage
  • 100%
    14 out of 14 items documented12 out of 14 items with examples
  • Size
  • Source code size: 15 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.86 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Links
  • a-maier/logbar
    1 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • a-maier

logbar

A log-friendly command-line progress bar.

Many progress bar implementations update the progress report in place, by going back and overwriting previous output. This allows for beautiful progress displays, but becomes a problem when moving backwards is not possible, for example when writing to a pipe. This crate's progress bar never tries to modify what was printed before, so the output can be piped directly to a log file.

Usage

Add this to your Cargo.toml:

[dependencies]
logbar = "0.1"

Examples

This example creates a default progress bar for a ten-step process:

let bar = logbar::ProgressBar::new(10);
// first step (10%) done
bar.inc(1);
// next three steps done
bar.inc(3);
// everything done
bar.finish();

We can also customise the style of the progress bar:

let style = Style::default()
    .width(80) // 80 characters wide
    .labels(false) // no XX% labels
    .tick('').bar('-') // rendered as ↓---↓---↓ etc.
    .indicator('') // indicating the progress with '█' characters
;
let bar = logbar::ProgressBar::with_style(10, style);
bar.finish();

License: GPL-3.0-or-later