Expand description
§termstatus
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.
§Installation
Simply use $ cargo add termstatus or add the following dependency to your
Cargo.toml:
[dependencies]
termstatus = "0.2"§Usage
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§Planned Features
- use of
#[default_style(on_aqua, italic)]on the derivedenum
§TODO
- implement planned features
- include GIF demo in README
Derive Macros§
- Term
Status - Turns an
enuminto an Terminal Status.