diff options
Diffstat (limited to 'module/output')
-rw-r--r-- | module/output/terminal.scm | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/module/output/terminal.scm b/module/output/terminal.scm index 52d34331..20740cac 100644 --- a/module/output/terminal.scm +++ b/module/output/terminal.scm @@ -146,7 +146,16 @@ ((#\k #\K) (unless (= cur-event 0) (set! cur-event = (- 1)))) ((#\g) (set! cur-event 0)) - ((#\G) (set! cur-event (1- (length events))))) + ((#\G) (set! cur-event (1- (length events)))) + ((#\() (set-cursor-pos 0 (1- height)) + (let* ((attr (make-termios))) + (tcgetattr! attr) + (set! (lflag attr) (logior ECHO (lflag attr))) + (tcsetattr! attr) + (display (readline ">") + (current-error-port)) + (set! (lflag attr) (logand (lognot ECHO) (lflag attr))) + (tcsetattr! attr)))) (when (or (eof-object? char) (memv char '(#\q))) |