Handle C-Tab correctly with extended keys, GitHub issue 2642.

This commit is contained in:
nicm 2021-04-13 05:23:34 +00:00
parent e6abe55134
commit 715835510b
1 changed files with 7 additions and 4 deletions

View File

@ -955,9 +955,12 @@ tty_keys_extended_key(struct tty *tty, const char *buf, size_t len,
*/ */
if (nkey & KEYC_CTRL) { if (nkey & KEYC_CTRL) {
onlykey = (nkey & KEYC_MASK_KEY); onlykey = (nkey & KEYC_MASK_KEY);
if (onlykey < 32) if (onlykey < 32) {
if (onlykey != 9)
onlykey = (nkey & ~KEYC_CTRL); onlykey = (nkey & ~KEYC_CTRL);
else { else
onlykey = (9|KEYC_CTRL);
} else {
if (onlykey >= 97 && onlykey <= 122) if (onlykey >= 97 && onlykey <= 122)
onlykey -= 96; onlykey -= 96;
else if (onlykey >= 64 && onlykey <= 95) else if (onlykey >= 64 && onlykey <= 95)