X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=linenoise.c;h=aee34470d9316d317bd4afd15ca4e84c57246365;hb=29aedbd22b5e3529aff1f85ec1b3164118b83291;hp=f65d3834170fd0e12ca8e4e9db9a144127ddfcd5;hpb=e795d44159bbbd636c599b7827c64e7533fc9334;p=linenoise.git diff --git a/linenoise.c b/linenoise.c index f65d383..aee3447 100644 --- a/linenoise.c +++ b/linenoise.c @@ -129,6 +129,7 @@ #include #include #include +#include #include #include @@ -1230,6 +1231,16 @@ process_char: case ctrl('C'): /* ctrl-c */ errno = EAGAIN; return -1; + case ctrl('Z'): /* ctrl-z */ +#ifdef SIGTSTP + /* send ourselves SIGSUSP */ + disableRawMode(current); + raise(SIGTSTP); + /* and resume */ + enableRawMode(current); + refreshLine(current->prompt, current); +#endif + continue; case 127: /* backspace */ case ctrl('H'): if (remove_char(current, current->pos - 1) == 1) {