diff options
Diffstat (limited to 'src/nvim')
-rw-r--r-- | src/nvim/keymap.c | 27 | ||||
-rw-r--r-- | src/nvim/keymap.h | 27 | ||||
-rw-r--r-- | src/nvim/terminal.c | 27 |
3 files changed, 81 insertions, 0 deletions
diff --git a/src/nvim/keymap.c b/src/nvim/keymap.c index b724d82f7c..dbe09b9c6b 100644 --- a/src/nvim/keymap.c +++ b/src/nvim/keymap.c @@ -223,6 +223,33 @@ static const struct key_name_entry { { K_F36, "F36" }, { K_F37, "F37" }, + { K_F38, "F38" }, + { K_F39, "F39" }, + { K_F40, "F40" }, + { K_F41, "F41" }, + { K_F42, "F42" }, + { K_F43, "F43" }, + { K_F44, "F44" }, + { K_F45, "F45" }, + { K_F46, "F46" }, + { K_F47, "F47" }, + { K_F48, "F48" }, + { K_F49, "F49" }, + { K_F50, "F50" }, + { K_F51, "F51" }, + { K_F52, "F52" }, + { K_F53, "F53" }, + { K_F54, "F54" }, + { K_F55, "F55" }, + { K_F56, "F56" }, + { K_F57, "F57" }, + { K_F58, "F58" }, + { K_F59, "F59" }, + { K_F60, "F60" }, + { K_F61, "F61" }, + { K_F62, "F62" }, + { K_F63, "F63" }, + { K_XF1, "xF1" }, { K_XF2, "xF2" }, { K_XF3, "xF3" }, diff --git a/src/nvim/keymap.h b/src/nvim/keymap.h index 9fc44f6f84..9a2732c4a5 100644 --- a/src/nvim/keymap.h +++ b/src/nvim/keymap.h @@ -327,6 +327,33 @@ enum key_extra { #define K_F36 TERMCAP2KEY('F', 'Q') #define K_F37 TERMCAP2KEY('F', 'R') +#define K_F38 TERMCAP2KEY('F', 'S') +#define K_F39 TERMCAP2KEY('F', 'T') +#define K_F40 TERMCAP2KEY('F', 'U') +#define K_F41 TERMCAP2KEY('F', 'V') +#define K_F42 TERMCAP2KEY('F', 'W') +#define K_F43 TERMCAP2KEY('F', 'X') +#define K_F44 TERMCAP2KEY('F', 'Y') +#define K_F45 TERMCAP2KEY('F', 'Z') +#define K_F46 TERMCAP2KEY('F', 'a') +#define K_F47 TERMCAP2KEY('F', 'b') +#define K_F48 TERMCAP2KEY('F', 'c') +#define K_F49 TERMCAP2KEY('F', 'd') +#define K_F50 TERMCAP2KEY('F', 'e') +#define K_F51 TERMCAP2KEY('F', 'f') +#define K_F52 TERMCAP2KEY('F', 'g') +#define K_F53 TERMCAP2KEY('F', 'h') +#define K_F54 TERMCAP2KEY('F', 'i') +#define K_F55 TERMCAP2KEY('F', 'j') +#define K_F56 TERMCAP2KEY('F', 'k') +#define K_F57 TERMCAP2KEY('F', 'l') +#define K_F58 TERMCAP2KEY('F', 'm') +#define K_F59 TERMCAP2KEY('F', 'n') +#define K_F60 TERMCAP2KEY('F', 'o') +#define K_F61 TERMCAP2KEY('F', 'p') +#define K_F62 TERMCAP2KEY('F', 'q') +#define K_F63 TERMCAP2KEY('F', 'r') + // extra set of shifted function keys F1-F4, for vt100 compatible xterm #define K_S_XF1 TERMCAP2KEY(KS_EXTRA, KE_S_XF1) #define K_S_XF2 TERMCAP2KEY(KS_EXTRA, KE_S_XF2) diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c index 3335fa500a..c141888a56 100644 --- a/src/nvim/terminal.c +++ b/src/nvim/terminal.c @@ -1059,6 +1059,33 @@ static VTermKey convert_key(int key, VTermModifier *statep) case K_F36: return VTERM_KEY_FUNCTION(36); case K_F37: return VTERM_KEY_FUNCTION(37); + case K_F38: return VTERM_KEY_FUNCTION(38); + case K_F39: return VTERM_KEY_FUNCTION(39); + case K_F40: return VTERM_KEY_FUNCTION(40); + case K_F41: return VTERM_KEY_FUNCTION(41); + case K_F42: return VTERM_KEY_FUNCTION(42); + case K_F43: return VTERM_KEY_FUNCTION(43); + case K_F44: return VTERM_KEY_FUNCTION(44); + case K_F45: return VTERM_KEY_FUNCTION(45); + case K_F46: return VTERM_KEY_FUNCTION(46); + case K_F47: return VTERM_KEY_FUNCTION(47); + case K_F48: return VTERM_KEY_FUNCTION(48); + case K_F49: return VTERM_KEY_FUNCTION(49); + case K_F50: return VTERM_KEY_FUNCTION(50); + case K_F51: return VTERM_KEY_FUNCTION(51); + case K_F52: return VTERM_KEY_FUNCTION(52); + case K_F53: return VTERM_KEY_FUNCTION(53); + case K_F54: return VTERM_KEY_FUNCTION(54); + case K_F55: return VTERM_KEY_FUNCTION(55); + case K_F56: return VTERM_KEY_FUNCTION(56); + case K_F57: return VTERM_KEY_FUNCTION(57); + case K_F58: return VTERM_KEY_FUNCTION(58); + case K_F59: return VTERM_KEY_FUNCTION(59); + case K_F60: return VTERM_KEY_FUNCTION(60); + case K_F61: return VTERM_KEY_FUNCTION(61); + case K_F62: return VTERM_KEY_FUNCTION(62); + case K_F63: return VTERM_KEY_FUNCTION(63); + default: return VTERM_KEY_NONE; } } |