single_char_input/
single-char-input.rs1use 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}