mirror of
git://git.sv.gnu.org/nano.git
synced 2025-02-20 15:24:17 +03:00
input: distinguish <Shift+Home> from <Home> on an rxvt terminal
That is: when --rebindkeypad is in effect -- without this option they were already getting distinguished.
This commit is contained in:
parent
0333b87ad7
commit
3cc561e36e
18
src/winio.c
18
src/winio.c
@ -1027,10 +1027,20 @@ int convert_sequence(const int *seq, size_t seq_len)
|
||||
* Linux console/xterm/Terminal;
|
||||
* Esc [ 6 ^ == PageDown on Eterm. */
|
||||
return KEY_NPAGE;
|
||||
case '7': /* Esc [ 7 ~ == Home on rxvt. */
|
||||
return KEY_HOME;
|
||||
case '8': /* Esc [ 8 ~ == End on rxvt. */
|
||||
return KEY_END;
|
||||
case '7': /* Esc [ 7 ~ == Home on Eterm/rxvt,
|
||||
* Esc [ 7 $ == Shift-Home on Eterm/rxvt. */
|
||||
if (seq_len > 2 && seq[2] == '~')
|
||||
return KEY_HOME;
|
||||
else if (seq_len > 2 && seq[2] == '$')
|
||||
return SHIFT_HOME;
|
||||
break;
|
||||
case '8': /* Esc [ 8 ~ == End on Eterm/rxvt.
|
||||
* Esc [ 8 $ == Shift-End on Eterm/rxvt. */
|
||||
if (seq_len > 2 && seq[2] == '~')
|
||||
return KEY_END;
|
||||
else if (seq_len > 2 && seq[2] == '$')
|
||||
return SHIFT_END;
|
||||
break;
|
||||
case '9': /* Esc [ 9 == Delete on Mach console. */
|
||||
return KEY_DC;
|
||||
case '@': /* Esc [ @ == Insert on Mach console. */
|
||||
|
Loading…
x
Reference in New Issue
Block a user