Commit d5994b4

Roberto E. Vargas Caballero <k0ga@shike2.com>
2012-11-25 16:13:29
Add support for End key
- Shift + End : Delete until end of line. - Control + End : Delete until end of screen. When the End key is pressed without any modifier is not generated the correct sequence for it (going to the end of the screen), because the size of the terminal is not known, so it is not possible write a sequence for this purpouse. --- config.def.h | 10 ++++++++-- st.info | 2 ++ 2 files changed, 10 insertions(+), 2 deletions(-)
1 parent 7c34ff1
Changed files (2)
config.def.h
@@ -121,7 +121,10 @@ static Key key[] = {
 	{ XK_KP_Prior,      ShiftMask,      "\033[5;2~",     0,    0,    0},
 	{ XK_KP_Prior,      XK_ANY_MOD,     "\033[5~",	     0,    0,    0},
 	{ XK_KP_Begin,      XK_ANY_MOD,     "\033[E",        0,    0,    0},
-	{ XK_KP_End,        ShiftMask,      "\033[1;2F",     0,    0,    0},
+	{ XK_KP_End,        ControlMask,    "\033[J",       -1,    0,    0},
+	{ XK_KP_End,        ControlMask,    "\033[1;5F",    +1,    0,    0},
+	{ XK_KP_End,        ShiftMask,      "\033[K",       -1,    0,    0},
+	{ XK_KP_End,        ShiftMask,      "\033[1;2F",    +1,    0,    0},
 	{ XK_KP_End,        XK_ANY_MOD,     "\033[4~",       0,    0,    0},
 	{ XK_KP_Next,       ShiftMask,      "\033[6;2~",     0,    0,    0},
 	{ XK_KP_Next,       XK_ANY_MOD,     "\033[6~",       0,    0,    0},
@@ -196,7 +199,10 @@ static Key key[] = {
 	{ XK_Home,          ShiftMask,      "\033[1;2H",     0,    0,    0},
 	{ XK_Home,          XK_ANY_MOD,     "\033[H",        0,   -1,    0},
 	{ XK_Home,          XK_ANY_MOD,     "\033[1~",       0,   +1,    0},
-	{ XK_End,           ShiftMask,      "\033[1;2F",     0,    0,    0},
+	{ XK_End,           ControlMask,    "\033[J",       -1,    0,    0},
+	{ XK_End,           ControlMask,    "\033[1;5F",    +1,    0,    0},
+	{ XK_End,           ShiftMask,      "\033[K",       -1,    0,    0},
+	{ XK_End,           ShiftMask,      "\033[1;2F",    +1,    0,    0},
 	{ XK_End,           XK_ANY_MOD,     "\033[4~",       0,    0,    0},
 	{ XK_Prior,         XK_NO_MOD,      "\033[5~",       0,    0,    0},
 	{ XK_Next,          ShiftMask,      "\033[6;2~",     0,    0,    0},
st.info
@@ -49,6 +49,8 @@ st| simpleterm,
 	invis=\E[8m,
 	is2=\E[4l\E>,
 	it#8,
+	kel=\E[1;2F,
+	ked=\E[1;5F,
 	ka1=\E[1~,
 	ka3=\E[5~,
 	kc1=\E[4~,