term-snip

Crates.ioterm-snip
lib.rsterm-snip
version0.1.8
sourcesrc
created_at2021-04-25 15:11:49.328835
updated_at2024-01-28 08:47:06.641052
descriptionWrite limited number of lines to terminal
homepage
repositoryhttps://github.com/sorcerersr/term-snip
max_upload_size
id389333
size20,003
Stefan Rabmund (sorcerersr)

documentation

README

Build and Tests codecov crates.io docs.rs

term-snip

Description

A small utility crate using https://crates.io/crates/console to write to stdout but limited to a given number of lines. The oldest line is removed when writing a new line.

Usage

From examples/five.rs:

use term_snip::TermSnip;

use std::{thread, time};

/// A simple example writing 15 lines to stdout but only showing
/// a maximum of five lines. 
fn main() {
    let half_sec = time::Duration::from_millis(500);
    
    let mut term = TermSnip::new(5);
    for n in 1..15 {
        term.write_line(&format!("{} - line number {}", n, n)).unwrap();
        
        // just to slow down for demonstration 
        thread::sleep(half_sec);
    }
}
 

Screenshot

Screenshot showing above example in action

Screenshot of example five.rs

Clearing the written lines afterwards (cargo run --example clear)

Screenshot of example clear.rs

License

Licensed under either of

at your option.

Commit count: 0

cargo fmt