single_char_input/
single-char-input.rs

1//! Will tell you what key you pressed immediately after you press it, without the need to press enter
2
3use console_input::{
4    keypress::{self, read_and_handle_kb_interrupt},
5    printr,
6};
7use crossterm::event::{Event, KeyCode, KeyEvent, KeyEventKind};
8
9fn main() {
10    keypress::enable_raw_mode();
11
12    loop {
13        let Some(Event::Key(key_event)) = read_and_handle_kb_interrupt(true) else {
14            continue;
15        };
16
17        match key_event {
18            KeyEvent {
19                code: KeyCode::Char(char),
20                ..
21            } => printr!("You pressed the {} key!", char),
22            KeyEvent {
23                code: KeyCode::Enter,
24                kind: KeyEventKind::Press,
25                ..
26            } => printr!("You pressed enter!"),
27            _ => (),
28        }
29    }
30}