From ac22923c691dfaf40830bedf056ee8948427dced Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Mon, 7 Sep 2015 20:28:55 -0700 Subject: linenoise: Ctrl-Z suspend. * linenoise.c (key_action): New enum constant, CTRL_Z. (edit): Implement Ctrl-Z suspend. --- linenoise/linenoise.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'linenoise') diff --git a/linenoise/linenoise.c b/linenoise/linenoise.c index 5ebd2b62..75479513 100644 --- a/linenoise/linenoise.c +++ b/linenoise/linenoise.c @@ -116,6 +116,7 @@ #include #include #include +#include #include "linenoise.h" #define LINENOISE_DEFAULT_HISTORY_MAX_LEN 100 @@ -174,6 +175,7 @@ enum key_action { CTRL_U = 21, CTRL_V = 22, CTRL_W = 23, + CTRL_Z = 26, ESC = 27, BACKSPACE = 127 }; @@ -958,6 +960,12 @@ static int edit(lino_t *l, const char *prompt) case CTRL_W: edit_delete_prev_word(l); break; + case CTRL_Z: + disable_raw_mode(l); + raise(SIGTSTP); + enable_raw_mode(l); + refresh_line(l); + break; } } return l->len; -- cgit v1.2.3