1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
//! Will tell you what key you pressed immediately after you press it, without the need to press enter

use console_input::{
    keypress::{self, Input},
    printr,
};
use crossterm::event::{Event, KeyCode, KeyEvent, KeyEventKind};

fn main() {
    keypress::enable_raw_mode();

    loop {
        if let Some(Event::Key(key_event)) = Input::read().exit_on_kb_interrupt().event {
            match key_event {
                KeyEvent {
                    code: KeyCode::Char(char),
                    ..
                } => printr!("You pressed the {} key!", char),
                KeyEvent {
                    code: KeyCode::Enter,
                    kind: KeyEventKind::Press,
                    ..
                } => printr!("You pressed enter!"),
                _ => (),
            }
        }
    }
}