diff options
author | bfredl <bjorn.linse@gmail.com> | 2025-01-14 14:46:34 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-14 14:46:34 +0100 |
commit | 7eabc8899af8b2fed1472165b74f43965282974f (patch) | |
tree | 85332ffa92ee59b3aaa9ecfb2cbe27fee2429156 /src/nvim/getchar.c | |
parent | 25d8c3a5ad7e9c5668841e66540ebe34ceda73a7 (diff) | |
parent | 913e81c35f162c1e2647565397608f63f38d7043 (diff) | |
download | rneovim-7eabc8899af8b2fed1472165b74f43965282974f.tar.gz rneovim-7eabc8899af8b2fed1472165b74f43965282974f.tar.bz2 rneovim-7eabc8899af8b2fed1472165b74f43965282974f.zip |
Merge pull request #31932 from bfredl/termtab
fix(getchar): do not simplify keycodes in terminal mode
Diffstat (limited to 'src/nvim/getchar.c')
-rw-r--r-- | src/nvim/getchar.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/nvim/getchar.c b/src/nvim/getchar.c index 60aa1055c3..6cf4556a9f 100644 --- a/src/nvim/getchar.c +++ b/src/nvim/getchar.c @@ -1518,9 +1518,11 @@ int merge_modifiers(int c_arg, int *modifiers) if (*modifiers & MOD_MASK_CTRL) { if ((c >= '`' && c <= 0x7f) || (c >= '@' && c <= '_')) { - c &= 0x1f; - if (c == NUL) { - c = K_ZERO; + if (!(State & MODE_TERMINAL) || !(c == 'I' || c == 'J' || c == 'M' || c == '[')) { + c &= 0x1f; + if (c == NUL) { + c = K_ZERO; + } } } else if (c == '6') { // CTRL-6 is equivalent to CTRL-^ |