diff options
author | zeertzjq <zeertzjq@outlook.com> | 2022-04-26 12:51:07 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-04-26 12:51:07 +0100 |
commit | 17c95d9608370559441bb73941ba6d9a4b6b26bd (patch) | |
tree | 35b1f01870169d44d32a5f5d4eb04264fc6ca664 /src/getchar.c | |
parent | abeb09b2c53054513812d1e56716e2a5abe8f354 (diff) | |
download | vim-git-17c95d9608370559441bb73941ba6d9a4b6b26bd.tar.gz |
patch 8.2.4829: a key may be simplified to NULv8.2.4829
Problem: A key may be simplified to NUL.
Solution: Use K_ZERO instead. Use macros instead of hard coded values.
(closes #10290)
Diffstat (limited to 'src/getchar.c')
-rw-r--r-- | src/getchar.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/getchar.c b/src/getchar.c index 73cf4208b..4caa89eb3 100644 --- a/src/getchar.c +++ b/src/getchar.c @@ -1637,7 +1637,11 @@ merge_modifyOtherKeys(int c_arg, int *modifiers) if (*modifiers & MOD_MASK_CTRL) { if ((c >= '`' && c <= 0x7f) || (c >= '@' && c <= '_')) + { c &= 0x1f; + if (c == NUL) + c = K_ZERO; + } else if (c == '6') // CTRL-6 is equivalent to CTRL-^ c = 0x1e; @@ -3661,7 +3665,7 @@ inchar( for (;;) { len = ui_inchar(dum, DUM_LEN, 0L, 0); - if (len == 0 || (len == 1 && dum[0] == 3)) + if (len == 0 || (len == 1 && dum[0] == Ctrl_C)) break; } return retesc; |