aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2023-07-22 08:00:42 +0800
committerGitHub <noreply@github.com>2023-07-22 08:00:42 +0800
commitb74262a336d3e5cf69930fcec69a12fdad16d76c (patch)
treed772b4e136aaac483b2a9a9c84e574778c1d9efe /src
parent02d859a07387a952442a72e913b23521ec39c199 (diff)
downloadrneovim-b74262a336d3e5cf69930fcec69a12fdad16d76c.tar.gz
rneovim-b74262a336d3e5cf69930fcec69a12fdad16d76c.tar.bz2
rneovim-b74262a336d3e5cf69930fcec69a12fdad16d76c.zip
fix(terminal): send Shift-Home Shift-End Ctrl-Home Ctrl-End (#24418)
Diffstat (limited to 'src')
-rw-r--r--src/nvim/terminal.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c
index caa4674cef..1dacc496b6 100644
--- a/src/nvim/terminal.c
+++ b/src/nvim/terminal.c
@@ -1095,6 +1095,8 @@ static void convert_modifiers(int key, VTermModifier *statep)
case K_S_DOWN:
case K_S_LEFT:
case K_S_RIGHT:
+ case K_S_HOME:
+ case K_S_END:
case K_S_F1:
case K_S_F2:
case K_S_F3:
@@ -1112,6 +1114,8 @@ static void convert_modifiers(int key, VTermModifier *statep)
case K_C_LEFT:
case K_C_RIGHT:
+ case K_C_HOME:
+ case K_C_END:
*statep |= VTERM_MOD_CTRL;
break;
}
@@ -1158,8 +1162,16 @@ static VTermKey convert_key(int key, VTermModifier *statep)
return VTERM_KEY_INS;
case K_DEL:
return VTERM_KEY_DEL;
+ case K_S_HOME:
+ FALLTHROUGH;
+ case K_C_HOME:
+ FALLTHROUGH;
case K_HOME:
return VTERM_KEY_HOME;
+ case K_S_END:
+ FALLTHROUGH;
+ case K_C_END:
+ FALLTHROUGH;
case K_END:
return VTERM_KEY_END;
case K_PAGEUP: