From 26b6aba78469147c5a75ab9ad94e17305f24e76c Mon Sep 17 00:00:00 2001 From: jixiuf Date: Thu, 1 Aug 2019 23:13:50 +0800 Subject: replace `ctrl-s` and `ctrl-q` with tcflow(term->pty_fd,TCOON/TCOOFF); --- vterm-module.c | 4 ++++ vterm.el | 15 +++++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/vterm-module.c b/vterm-module.c index edf8237..6ad3a6f 100644 --- a/vterm-module.c +++ b/vterm-module.c @@ -540,6 +540,10 @@ static void term_process_key(Term *term, unsigned char *key, size_t len, } else { vterm_keyboard_key(term->vt, VTERM_KEY_ENTER, modifier); } + } else if (is_key(key, len, "")) { + tcflow(term->pty_fd, TCOON); + } else if (is_key(key, len, "")) { + tcflow(term->pty_fd, TCOOFF); } else if (is_key(key, len, "")) { vterm_keyboard_start_paste(term->vt); } else if (is_key(key, len, "")) { diff --git a/vterm.el b/vterm.el index da80143..70a4a8b 100644 --- a/vterm.el +++ b/vterm.el @@ -288,9 +288,9 @@ If nil, never delay") (if vterm-copy-mode (progn ;enable vterm-copy-mode (use-local-map nil) - (vterm-send-key "s" nil nil t)) + (vterm-send-stop)) (use-local-map vterm-mode-map) - (vterm-send-key "q" nil nil t))) + (vterm-send-start))) (defun vterm--self-insert () "Sends invoking key to libvterm." @@ -312,6 +312,17 @@ If nil, never delay") (setq key (upcase key))) (vterm--update vterm--term key shift meta ctrl)))) +(defun vterm-send-start () + "Output from the system is started when the system receives START." + (interactive) + (vterm-send-key "")) + +(defun vterm-send-stop () + "Output from the system is stopped when the system receives STOP." + (interactive) + (vterm-send-key "")) + + (defun vterm-send-ctrl-c () "Sends `C-c' to the libvterm." (interactive) -- cgit v1.0