termstatus is a tool that lets you inform the user the progress of your program by displaying the status. It looks similar to the status texts displayed by rustc or cargo.
Simply use $ cargo add termstatus or add the following dependency to your
Cargo.toml:
[dependencies]
termstatus = "0.2"Create an enum whose variants are the different status labels and derive it
from TermStatus:
extern crate termstatus;
use termstatus::TermStatus;
#[allow(dead_code)]
#[derive(TermStatus)]
enum Status {
Building,
Built,
Compiled,
Compiling,
#[style(red, bold)]
Error,
Finished,
Running,
}Display is automatically
implemented for that enum and can therefore be used with
println or
format for example:
println!("{} foo", Status::Building);
println!("{} foo", Status::Built);
println!("{} bar", Status::Compiling);
println!("{} bar", Status::Compiled);
println!("{} build of project", Status::Finished);The result will look as follows:
Building foo
Built foo
Compiling bar
Compiled bar
Finished build of project
- use of
#[default_style(on_cyan, italic)]on the derivedenum - support of bright colors
- implement planned features
- include GIF demo in README

