7 releases

0.2.2 Jul 8, 2020
0.2.1 Jul 8, 2020
0.1.3 Apr 23, 2020

#1244 in Asynchronous

MIT license

17KB
287 lines

Command-line typewriter output stream.

This crate provides a wrapper around the stdout and allows for writing messages to the terminal output.

Usage

let mut out = Typout::default();

// write a simple message
out.write("Hello");
out.write(" World!");
out.flush(); // -> Hello World!

// pin/unpin a message to the end
out.pin("ID1", "Please wait ...");
out.unpin("ID1");

// spin/unpin an animated message to the end
out.spin("ID2", "Processing ...");
out.unpin("ID1");

See it in action by running cargo run --example simulate.

Dependencies

~2MB
~37K SLoC