lb 0.6.0

A TUI library with ASCII/Unicode graphics.
Documentation
use std::io;
use std::thread;
use std::time;

use lb::term;
use lb::term::key;
use lb::term::key::Key;

fn main() {
    println!("Chars {:?}", term::size());
    println!("Pixels {:?}", term::size_in_pixels());

    let _raw = term::uncook().unwrap();

    print!("\r\nPress any key. Press q, ^C, or Esc to quit.\r\n");

    let mut stdin = io::stdin();
    let buf = &mut [0u8; 32];

    'outer: loop {
        let keys = key::Keys::new(&mut stdin, buf).unwrap();

        print!("{:?} ", keys.bytes());

        for key in keys {
            match key {
                Key::Char(b'q' | b'\x03') | Key::Esc => break 'outer,
                Key::Char(byte) => print!("{}, ", byte as char),
                Key::Up => print!("Up, "),
                Key::Down => print!("Down, "),
                Key::Left => print!("Left, "),
                Key::Right => print!("Right, "),
            }
        }

        print!("\r\n");

        thread::sleep(time::Duration::from_millis(333));
    }
}