extern crate nixterm;
use nixterm::events::Key;
use nixterm::Term;
pub fn main() {
let term = Term::new().unwrap();
let settings = term.settings();
term.print("Entering raw mode...\n").unwrap();
term.update(settings.clone().raw().stop_output('\0').start_output('\0'))
.unwrap();
term.print("Try pressing a few keys keys (Ctrl-C to quit): ")
.unwrap();
for key in term
.read_keys()
.map(Result::unwrap)
.take_while(|k| k != &Key::Control('C'))
{
term.save_cursor();
term.clear_line_after_cursor();
term.print(format!("{:?}", key)).unwrap();
term.flush();
term.restore_cursor();
}
term.print("\n\r").unwrap();
term.update(settings).unwrap();
}