From f018462e1b533c74c458bfbb2a0a4b5a1622b982 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20F=C3=BCrmetz?= Date: Wed, 31 Jul 2019 16:13:27 +0200 Subject: Add support for backtab Fixes #69 --- vterm-module.c | 2 ++ vterm.el | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/vterm-module.c b/vterm-module.c index bf9483c..edf8237 100644 --- a/vterm-module.c +++ b/vterm-module.c @@ -546,6 +546,8 @@ static void term_process_key(Term *term, unsigned char *key, size_t len, vterm_keyboard_end_paste(term->vt); } else if (is_key(key, len, "")) { vterm_keyboard_key(term->vt, VTERM_KEY_TAB, modifier); + } else if (is_key(key, len, "") || is_key(key, len, "")) { + vterm_keyboard_key(term->vt, VTERM_KEY_TAB, VTERM_MOD_SHIFT); } else if (is_key(key, len, "")) { vterm_keyboard_key(term->vt, VTERM_KEY_BACKSPACE, modifier); } else if (is_key(key, len, "")) { diff --git a/vterm.el b/vterm.el index 51e9ee9..1c9e8f4 100644 --- a/vterm.el +++ b/vterm.el @@ -244,6 +244,7 @@ If nil, never delay") ;; Keybindings (define-key vterm-mode-map [tab] #'vterm--self-insert) +(define-key vterm-mode-map [backtab] #'vterm--self-insert) (define-key vterm-mode-map [backspace] #'vterm--self-insert) (define-key vterm-mode-map [M-backspace] #'vterm--self-insert) (define-key vterm-mode-map [return] #'vterm--self-insert) @@ -291,7 +292,7 @@ If nil, never delay") (when vterm--term (let ((inhibit-redisplay t) (inhibit-read-only t)) - (when (and shift (not meta) (not ctrl)) + (when (and (not (symbolp last-input-event)) shift (not meta) (not ctrl)) (setq key (upcase key))) (vterm--update vterm--term key shift meta ctrl)))) -- cgit v1.0