summaryrefslogtreecommitdiffstats
path: root/tty-keys.c
diff options
context:
space:
mode:
authornicm <nicm>2014-07-21 10:25:48 +0000
committernicm <nicm>2014-07-21 10:25:48 +0000
commit2056a9ef9e91996c294b5db0a3d01ed415e95e56 (patch)
treed3cab1d59dae813b25182e5eb22e633d174c17c6 /tty-keys.c
parentc5253ad8f7236662d0186dec1080288eb2d38b72 (diff)
Drop explicit support for F13-F20 and change to match the xterm terminfo
entry: F13-F24 are S-F1 to S-F12 F25-F36 are C-F1 to C-F12 F37-F48 are C-S-F1 to C-S-F12 F49-F60 are M-F1 to M-F12 and F61-F63 are M-S-F1 to M-S-F3 This should be no difference for applications inside tmux, but means that any key binding for F13 will need to be replaced by S-F1 and so on.
Diffstat (limited to 'tty-keys.c')
-rw-r--r--tty-keys.c89
1 files changed, 57 insertions, 32 deletions
diff --git a/tty-keys.c b/tty-keys.c
index 932367ef..967decaf 100644
--- a/tty-keys.c
+++ b/tty-keys.c
@@ -113,14 +113,6 @@ const struct tty_default_key_raw tty_default_raw_keys[] = {
{ "\033[21^", KEYC_F10|KEYC_CTRL },
{ "\033[23^", KEYC_F11|KEYC_CTRL },
{ "\033[24^", KEYC_F12|KEYC_CTRL },
- { "\033[25^", KEYC_F13|KEYC_CTRL },
- { "\033[26^", KEYC_F14|KEYC_CTRL },
- { "\033[28^", KEYC_F15|KEYC_CTRL },
- { "\033[29^", KEYC_F16|KEYC_CTRL },
- { "\033[31^", KEYC_F17|KEYC_CTRL },
- { "\033[32^", KEYC_F18|KEYC_CTRL },
- { "\033[33^", KEYC_F19|KEYC_CTRL },
- { "\033[34^", KEYC_F20|KEYC_CTRL },
{ "\033[2^", KEYC_IC|KEYC_CTRL },
{ "\033[3^", KEYC_DC|KEYC_CTRL },
{ "\033[7^", KEYC_HOME|KEYC_CTRL },
@@ -140,14 +132,6 @@ const struct tty_default_key_raw tty_default_raw_keys[] = {
{ "\033[21$", KEYC_F10|KEYC_SHIFT },
{ "\033[23$", KEYC_F11|KEYC_SHIFT },
{ "\033[24$", KEYC_F12|KEYC_SHIFT },
- { "\033[25$", KEYC_F13|KEYC_SHIFT },
- { "\033[26$", KEYC_F14|KEYC_SHIFT },
- { "\033[28$", KEYC_F15|KEYC_SHIFT },
- { "\033[29$", KEYC_F16|KEYC_SHIFT },
- { "\033[31$", KEYC_F17|KEYC_SHIFT },
- { "\033[32$", KEYC_F18|KEYC_SHIFT },
- { "\033[33$", KEYC_F19|KEYC_SHIFT },
- { "\033[34$", KEYC_F20|KEYC_SHIFT },
{ "\033[2$", KEYC_IC|KEYC_SHIFT },
{ "\033[3$", KEYC_DC|KEYC_SHIFT },
{ "\033[7$", KEYC_HOME|KEYC_SHIFT },
@@ -167,14 +151,6 @@ const struct tty_default_key_raw tty_default_raw_keys[] = {
{ "\033[21@", KEYC_F10|KEYC_CTRL|KEYC_SHIFT },
{ "\033[23@", KEYC_F11|KEYC_CTRL|KEYC_SHIFT },
{ "\033[24@", KEYC_F12|KEYC_CTRL|KEYC_SHIFT },
- { "\033[25@", KEYC_F13|KEYC_CTRL|KEYC_SHIFT },
- { "\033[26@", KEYC_F14|KEYC_CTRL|KEYC_SHIFT },
- { "\033[28@", KEYC_F15|KEYC_CTRL|KEYC_SHIFT },
- { "\033[29@", KEYC_F16|KEYC_CTRL|KEYC_SHIFT },
- { "\033[31@", KEYC_F17|KEYC_CTRL|KEYC_SHIFT },
- { "\033[32@", KEYC_F18|KEYC_CTRL|KEYC_SHIFT },
- { "\033[33@", KEYC_F19|KEYC_CTRL|KEYC_SHIFT },
- { "\033[34@", KEYC_F20|KEYC_CTRL|KEYC_SHIFT },
{ "\033[2@", KEYC_IC|KEYC_CTRL|KEYC_SHIFT },
{ "\033[3@", KEYC_DC|KEYC_CTRL|KEYC_SHIFT },
{ "\033[7@", KEYC_HOME|KEYC_CTRL|KEYC_SHIFT },
@@ -206,14 +182,63 @@ const struct tty_default_key_code tty_default_code_keys[] = {
{ TTYC_KF10, KEYC_F10 },
{ TTYC_KF11, KEYC_F11 },
{ TTYC_KF12, KEYC_F12 },
- { TTYC_KF13, KEYC_F13 },
- { TTYC_KF14, KEYC_F14 },
- { TTYC_KF15, KEYC_F15 },
- { TTYC_KF16, KEYC_F16 },
- { TTYC_KF17, KEYC_F17 },
- { TTYC_KF18, KEYC_F18 },
- { TTYC_KF19, KEYC_F19 },
- { TTYC_KF20, KEYC_F20 },
+
+ { TTYC_KF13, KEYC_F1|KEYC_SHIFT },
+ { TTYC_KF14, KEYC_F2|KEYC_SHIFT },
+ { TTYC_KF15, KEYC_F3|KEYC_SHIFT },
+ { TTYC_KF16, KEYC_F4|KEYC_SHIFT },
+ { TTYC_KF17, KEYC_F5|KEYC_SHIFT },
+ { TTYC_KF18, KEYC_F6|KEYC_SHIFT },
+ { TTYC_KF19, KEYC_F7|KEYC_SHIFT },
+ { TTYC_KF20, KEYC_F8|KEYC_SHIFT },
+ { TTYC_KF21, KEYC_F9|KEYC_SHIFT },
+ { TTYC_KF22, KEYC_F10|KEYC_SHIFT },
+ { TTYC_KF23, KEYC_F11|KEYC_SHIFT },
+ { TTYC_KF24, KEYC_F12|KEYC_SHIFT },
+
+ { TTYC_KF25, KEYC_F1|KEYC_CTRL },
+ { TTYC_KF26, KEYC_F2|KEYC_CTRL },
+ { TTYC_KF27, KEYC_F3|KEYC_CTRL },
+ { TTYC_KF28, KEYC_F4|KEYC_CTRL },
+ { TTYC_KF29, KEYC_F5|KEYC_CTRL },
+ { TTYC_KF30, KEYC_F6|KEYC_CTRL },
+ { TTYC_KF31, KEYC_F7|KEYC_CTRL },
+ { TTYC_KF32, KEYC_F8|KEYC_CTRL },
+ { TTYC_KF33, KEYC_F9|KEYC_CTRL },
+ { TTYC_KF34, KEYC_F10|KEYC_CTRL },
+ { TTYC_KF35, KEYC_F11|KEYC_CTRL },
+ { TTYC_KF36, KEYC_F12|KEYC_CTRL },
+
+ { TTYC_KF37, KEYC_F1|KEYC_SHIFT|KEYC_CTRL },
+ { TTYC_KF38, KEYC_F2|KEYC_SHIFT|KEYC_CTRL },
+ { TTYC_KF39, KEYC_F3|KEYC_SHIFT|KEYC_CTRL },
+ { TTYC_KF40, KEYC_F4|KEYC_SHIFT|KEYC_CTRL },
+ { TTYC_KF41, KEYC_F5|KEYC_SHIFT|KEYC_CTRL },
+ { TTYC_KF42, KEYC_F6|KEYC_SHIFT|KEYC_CTRL },
+ { TTYC_KF43, KEYC_F7|KEYC_SHIFT|KEYC_CTRL },
+ { TTYC_KF44, KEYC_F8|KEYC_SHIFT|KEYC_CTRL },
+ { TTYC_KF45, KEYC_F9|KEYC_SHIFT|KEYC_CTRL },
+ { TTYC_KF46, KEYC_F10|KEYC_SHIFT|KEYC_CTRL },
+ { TTYC_KF47, KEYC_F11|KEYC_SHIFT|KEYC_CTRL },
+ { TTYC_KF48, KEYC_F12|KEYC_SHIFT|KEYC_CTRL },
+
+ { TTYC_KF49, KEYC_F1|KEYC_ESCAPE },
+ { TTYC_KF50, KEYC_F2|KEYC_ESCAPE },
+ { TTYC_KF51, KEYC_F3|KEYC_ESCAPE },
+ { TTYC_KF52, KEYC_F4|KEYC_ESCAPE },
+ { TTYC_KF53, KEYC_F5|KEYC_ESCAPE },
+ { TTYC_KF54, KEYC_F6|KEYC_ESCAPE },
+ { TTYC_KF55, KEYC_F7|KEYC_ESCAPE },
+ { TTYC_KF56, KEYC_F8|KEYC_ESCAPE },
+ { TTYC_KF57, KEYC_F9|KEYC_ESCAPE },
+ { TTYC_KF58, KEYC_F10|KEYC_ESCAPE },
+ { TTYC_KF59, KEYC_F11|KEYC_ESCAPE },
+ { TTYC_KF60, KEYC_F12|KEYC_ESCAPE },
+
+ { TTYC_KF61, KEYC_F1|KEYC_ESCAPE|KEYC_SHIFT },
+ { TTYC_KF62, KEYC_F2|KEYC_ESCAPE|KEYC_SHIFT },
+ { TTYC_KF63, KEYC_F3|KEYC_ESCAPE|KEYC_SHIFT },
+
{ TTYC_KICH1, KEYC_IC },
{ TTYC_KDCH1, KEYC_DC },
{ TTYC_KHOME, KEYC_HOME },