aboutsummaryrefslogtreecommitdiffstats
path: root/src/term.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/term.rs')
-rw-r--r--src/term.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/term.rs b/src/term.rs
index 9c7e2cc..3a56091 100644
--- a/src/term.rs
+++ b/src/term.rs
@@ -68,6 +68,7 @@ pub fn raw() -> Result<RawHandle, Box<dyn Error>> {
pub enum Key {
CtrlQ,
CtrlS,
+ CtrlZ,
Up,
Down,
Left,
@@ -79,6 +80,7 @@ pub enum Key {
pub fn read_key() -> Result<Key, Box<dyn Error>> {
const CTRL_Q: u8 = 17;
const CTRL_S: u8 = 19;
+ const CTRL_Z: u8 = 26;
const BACKSPACE: u8 = 127;
const ESC: u8 = 27;
@@ -91,6 +93,9 @@ pub fn read_key() -> Result<Key, Box<dyn Error>> {
if buf[0] == CTRL_S {
return Ok(Key::CtrlS);
}
+ if buf[0] == CTRL_Z {
+ return Ok(Key::CtrlZ);
+ }
if buf[0] == BACKSPACE {
return Ok(Key::Backspace);
}