terminology/src/bin/tty_keys.h

1306 lines
40 KiB
C

/* /!\\ This file was heavily generated by gen_tty_keys.sh */
#define KH(in) { in, sizeof(in) - 1 }
static const Tty_Key tty_keys[] = {
{
"F1",
sizeof("F1") - 1,
{
KH("\033OP"), // default F1
KH("\033[O3P"), // default Alt+F1
KH("\033[1;5P"), // default Ctrl+F1
KH("\033[1;7P"), // default Ctrl+Alt+F1
KH("\033[1;2P"), // default Shift+F1
KH("\033[1;4P"), // default Shift+Alt+F1
KH("\033[1;6P"), // default Shift+Ctrl+F1
KH("\033[1;8P"), // default Shift+Ctrl+Alt+F1
},
{
KH("\033OP"), // cursor F1
KH("\033[O3P"), // cursor Alt+F1
KH("\033[1;5P"), // cursor Ctrl+F1
KH("\033[1;7P"), // cursor Ctrl+Alt+F1
KH("\033[1;2P"), // cursor Shift+F1
KH("\033[1;4P"), // cursor Shift+Alt+F1
KH("\033[1;6P"), // cursor Shift+Ctrl+F1
KH("\033[1;8P"), // cursor Shift+Ctrl+Alt+F1
},
},
{
"F2",
sizeof("F2") - 1,
{
KH("\033OQ"), // default F2
KH("\033[O3Q"), // default Alt+F2
KH("\033[1;5Q"), // default Ctrl+F2
KH("\033[1;7Q"), // default Ctrl+Alt+F2
KH("\033[1;2Q"), // default Shift+F2
KH("\033[1;4Q"), // default Shift+Alt+F2
KH("\033[1;6Q"), // default Shift+Ctrl+F2
KH("\033[1;8Q"), // default Shift+Ctrl+Alt+F2
},
{
KH("\033OQ"), // cursor F2
KH("\033[O3Q"), // cursor Alt+F2
KH("\033[1;5Q"), // cursor Ctrl+F2
KH("\033[1;7Q"), // cursor Ctrl+Alt+F2
KH("\033[1;2Q"), // cursor Shift+F2
KH("\033[1;4Q"), // cursor Shift+Alt+F2
KH("\033[1;6Q"), // cursor Shift+Ctrl+F2
KH("\033[1;8Q"), // cursor Shift+Ctrl+Alt+F2
},
},
{
"F3",
sizeof("F3") - 1,
{
KH("\033OR"), // default F3
KH("\033[O3R"), // default Alt+F3
KH("\033[1;5R"), // default Ctrl+F3
KH("\033[1;7R"), // default Ctrl+Alt+F3
KH("\033[1;2R"), // default Shift+F3
KH("\033[1;4R"), // default Shift+Alt+F3
KH("\033[1;6R"), // default Shift+Ctrl+F3
KH("\033[1;8R"), // default Shift+Ctrl+Alt+F3
},
{
KH("\033OR"), // cursor F3
KH("\033[O3R"), // cursor Alt+F3
KH("\033[1;5R"), // cursor Ctrl+F3
KH("\033[1;7R"), // cursor Ctrl+Alt+F3
KH("\033[1;2R"), // cursor Shift+F3
KH("\033[1;4R"), // cursor Shift+Alt+F3
KH("\033[1;6R"), // cursor Shift+Ctrl+F3
KH("\033[1;8R"), // cursor Shift+Ctrl+Alt+F3
},
},
{
"F4",
sizeof("F4") - 1,
{
KH("\033OS"), // default F4
KH("\033[O3S"), // default Alt+F4
KH("\033[1;5S"), // default Ctrl+F4
KH("\033[1;7S"), // default Ctrl+Alt+F4
KH("\033[1;2S"), // default Shift+F4
KH("\033[1;4S"), // default Shift+Alt+F4
KH("\033[1;6S"), // default Shift+Ctrl+F4
KH("\033[1;8S"), // default Shift+Ctrl+Alt+F4
},
{
KH("\033OS"), // cursor F4
KH("\033[O3S"), // cursor Alt+F4
KH("\033[1;5S"), // cursor Ctrl+F4
KH("\033[1;7S"), // cursor Ctrl+Alt+F4
KH("\033[1;2S"), // cursor Shift+F4
KH("\033[1;4S"), // cursor Shift+Alt+F4
KH("\033[1;6S"), // cursor Shift+Ctrl+F4
KH("\033[1;8S"), // cursor Shift+Ctrl+Alt+F4
},
},
{
"F5",
sizeof("F5") - 1,
{
KH("\033[15~"), // default F5
KH("\033[15;3~"), // default Alt+F5
KH("\033[15;5~"), // default Ctrl+F5
KH("\033[15;7~"), // default Ctrl+Alt+F5
KH("\033[15;2~"), // default Shift+F5
KH("\033[15;4~"), // default Shift+Alt+F5
KH("\033[15;6~"), // default Shift+Ctrl+F5
KH("\033[15;8~"), // default Shift+Ctrl+Alt+F5
},
{
KH("\033[15~"), // cursor F5
KH("\033[15;3~"), // cursor Alt+F5
KH("\033[15;5~"), // cursor Ctrl+F5
KH("\033[15;7~"), // cursor Ctrl+Alt+F5
KH("\033[15;2~"), // cursor Shift+F5
KH("\033[15;4~"), // cursor Shift+Alt+F5
KH("\033[15;6~"), // cursor Shift+Ctrl+F5
KH("\033[15;8~"), // cursor Shift+Ctrl+Alt+F5
},
},
{
"F6",
sizeof("F6") - 1,
{
KH("\033[17~"), // default F6
KH("\033[17;3~"), // default Alt+F6
KH("\033[17;5~"), // default Ctrl+F6
KH("\033[17;7~"), // default Ctrl+Alt+F6
KH("\033[17;2~"), // default Shift+F6
KH("\033[17;4~"), // default Shift+Alt+F6
KH("\033[17;6~"), // default Shift+Ctrl+F6
KH("\033[17;8~"), // default Shift+Ctrl+Alt+F6
},
{
KH("\033[17~"), // cursor F6
KH("\033[17;3~"), // cursor Alt+F6
KH("\033[17;5~"), // cursor Ctrl+F6
KH("\033[17;7~"), // cursor Ctrl+Alt+F6
KH("\033[17;2~"), // cursor Shift+F6
KH("\033[17;4~"), // cursor Shift+Alt+F6
KH("\033[17;6~"), // cursor Shift+Ctrl+F6
KH("\033[17;8~"), // cursor Shift+Ctrl+Alt+F6
},
},
{
"F7",
sizeof("F7") - 1,
{
KH("\033[18~"), // default F7
KH("\033[18;3~"), // default Alt+F7
KH("\033[18;5~"), // default Ctrl+F7
KH("\033[18;7~"), // default Ctrl+Alt+F7
KH("\033[18;2~"), // default Shift+F7
KH("\033[18;4~"), // default Shift+Alt+F7
KH("\033[18;6~"), // default Shift+Ctrl+F7
KH("\033[18;8~"), // default Shift+Ctrl+Alt+F7
},
{
KH("\033[18~"), // cursor F7
KH("\033[18;3~"), // cursor Alt+F7
KH("\033[18;5~"), // cursor Ctrl+F7
KH("\033[18;7~"), // cursor Ctrl+Alt+F7
KH("\033[18;2~"), // cursor Shift+F7
KH("\033[18;4~"), // cursor Shift+Alt+F7
KH("\033[18;6~"), // cursor Shift+Ctrl+F7
KH("\033[18;8~"), // cursor Shift+Ctrl+Alt+F7
},
},
{
"F8",
sizeof("F8") - 1,
{
KH("\033[19~"), // default F8
KH("\033[19;3~"), // default Alt+F8
KH("\033[19;5~"), // default Ctrl+F8
KH("\033[19;7~"), // default Ctrl+Alt+F8
KH("\033[19;2~"), // default Shift+F8
KH("\033[19;4~"), // default Shift+Alt+F8
KH("\033[19;6~"), // default Shift+Ctrl+F8
KH("\033[19;8~"), // default Shift+Ctrl+Alt+F8
},
{
KH("\033[19~"), // cursor F8
KH("\033[19;3~"), // cursor Alt+F8
KH("\033[19;5~"), // cursor Ctrl+F8
KH("\033[19;7~"), // cursor Ctrl+Alt+F8
KH("\033[19;2~"), // cursor Shift+F8
KH("\033[19;4~"), // cursor Shift+Alt+F8
KH("\033[19;6~"), // cursor Shift+Ctrl+F8
KH("\033[19;8~"), // cursor Shift+Ctrl+Alt+F8
},
},
{
"F9",
sizeof("F9") - 1,
{
KH("\033[20~"), // default F9
KH("\033[20;3~"), // default Alt+F9
KH("\033[20;5~"), // default Ctrl+F9
KH("\033[20;7~"), // default Ctrl+Alt+F9
KH("\033[20;2~"), // default Shift+F9
KH("\033[20;4~"), // default Shift+Alt+F9
KH("\033[20;6~"), // default Shift+Ctrl+F9
KH("\033[20;8~"), // default Shift+Ctrl+Alt+F9
},
{
KH("\033[20~"), // cursor F9
KH("\033[20;3~"), // cursor Alt+F9
KH("\033[20;5~"), // cursor Ctrl+F9
KH("\033[20;7~"), // cursor Ctrl+Alt+F9
KH("\033[20;2~"), // cursor Shift+F9
KH("\033[20;4~"), // cursor Shift+Alt+F9
KH("\033[20;6~"), // cursor Shift+Ctrl+F9
KH("\033[20;8~"), // cursor Shift+Ctrl+Alt+F9
},
},
{
"F10",
sizeof("F10") - 1,
{
KH("\033[21~"), // default F10
KH("\033[21;3~"), // default Alt+F10
KH("\033[21;5~"), // default Ctrl+F10
KH("\033[21;7~"), // default Ctrl+Alt+F10
KH("\033[21;2~"), // default Shift+F10
KH("\033[21;4~"), // default Shift+Alt+F10
KH("\033[21;6~"), // default Shift+Ctrl+F10
KH("\033[21;8~"), // default Shift+Ctrl+Alt+F10
},
{
KH("\033[21~"), // cursor F10
KH("\033[21;3~"), // cursor Alt+F10
KH("\033[21;5~"), // cursor Ctrl+F10
KH("\033[21;7~"), // cursor Ctrl+Alt+F10
KH("\033[21;2~"), // cursor Shift+F10
KH("\033[21;4~"), // cursor Shift+Alt+F10
KH("\033[21;6~"), // cursor Shift+Ctrl+F10
KH("\033[21;8~"), // cursor Shift+Ctrl+Alt+F10
},
},
{
"F11",
sizeof("F11") - 1,
{
KH("\033[23~"), // default F11
KH("\033[23;3~"), // default Alt+F11
KH("\033[23;5~"), // default Ctrl+F11
KH("\033[23;7~"), // default Ctrl+Alt+F11
KH("\033[23;2~"), // default Shift+F11
KH("\033[23;4~"), // default Shift+Alt+F11
KH("\033[23;6~"), // default Shift+Ctrl+F11
KH("\033[23;8~"), // default Shift+Ctrl+Alt+F11
},
{
KH("\033[23~"), // cursor F11
KH("\033[23;3~"), // cursor Alt+F11
KH("\033[23;5~"), // cursor Ctrl+F11
KH("\033[23;7~"), // cursor Ctrl+Alt+F11
KH("\033[23;2~"), // cursor Shift+F11
KH("\033[23;4~"), // cursor Shift+Alt+F11
KH("\033[23;6~"), // cursor Shift+Ctrl+F11
KH("\033[23;8~"), // cursor Shift+Ctrl+Alt+F11
},
},
{
"F12",
sizeof("F12") - 1,
{
KH("\033[24~"), // default F12
KH("\033[24;3~"), // default Alt+F12
KH("\033[24;5~"), // default Ctrl+F12
KH("\033[24;7~"), // default Ctrl+Alt+F12
KH("\033[24;2~"), // default Shift+F12
KH("\033[24;4~"), // default Shift+Alt+F12
KH("\033[24;6~"), // default Shift+Ctrl+F12
KH("\033[24;8~"), // default Shift+Ctrl+Alt+F12
},
{
KH("\033[24~"), // cursor F12
KH("\033[24;3~"), // cursor Alt+F12
KH("\033[24;5~"), // cursor Ctrl+F12
KH("\033[24;7~"), // cursor Ctrl+Alt+F12
KH("\033[24;2~"), // cursor Shift+F12
KH("\033[24;4~"), // cursor Shift+Alt+F12
KH("\033[24;6~"), // cursor Shift+Ctrl+F12
KH("\033[24;8~"), // cursor Shift+Ctrl+Alt+F12
},
},
{
"Left",
sizeof("Left") - 1,
{
KH("\033[D"), // default Left
KH("\033[1;3D"), // default Alt+Left
KH("\033[1;5D"), // default Ctrl+Left
KH("\033[1;7D"), // default Ctrl+Alt+Left
KH("\033[1;2D"), // default Shift+Left
KH("\033[1;4D"), // default Shift+Alt+Left
KH("\033[1;6D"), // default Shift+Ctrl+Left
KH("\033[1;8D"), // default Shift+Ctrl+Alt+Left
},
{
KH("\033OD"), // cursor Left
KH("\033[1;3D"), // cursor Alt+Left
KH("\033[1;5D"), // cursor Ctrl+Left
KH("\033[1;7D"), // cursor Ctrl+Alt+Left
KH("\033[1;2D"), // cursor Shift+Left
KH("\033[1;4D"), // cursor Shift+Alt+Left
KH("\033[1;6D"), // cursor Shift+Ctrl+Left
KH("\033[1;8D"), // cursor Shift+Ctrl+Alt+Left
},
},
{
"Right",
sizeof("Right") - 1,
{
KH("\033[C"), // default Right
KH("\033[1;3C"), // default Alt+Right
KH("\033[1;5C"), // default Ctrl+Right
KH("\033[1;7C"), // default Ctrl+Alt+Right
KH("\033[1;2C"), // default Shift+Right
KH("\033[1;4C"), // default Shift+Alt+Right
KH("\033[1;6C"), // default Shift+Ctrl+Right
KH("\033[1;8C"), // default Shift+Ctrl+Alt+Right
},
{
KH("\033OC"), // cursor Right
KH("\033[1;3C"), // cursor Alt+Right
KH("\033[1;5C"), // cursor Ctrl+Right
KH("\033[1;7C"), // cursor Ctrl+Alt+Right
KH("\033[1;2C"), // cursor Shift+Right
KH("\033[1;4C"), // cursor Shift+Alt+Right
KH("\033[1;6C"), // cursor Shift+Ctrl+Right
KH("\033[1;8C"), // cursor Shift+Ctrl+Alt+Right
},
},
{
"Up",
sizeof("Up") - 1,
{
KH("\033[A"), // default Up
KH("\033[1;3A"), // default Alt+Up
KH("\033[1;5A"), // default Ctrl+Up
KH("\033[1;7A"), // default Ctrl+Alt+Up
KH("\033[1;2A"), // default Shift+Up
KH("\033[1;4A"), // default Shift+Alt+Up
{NULL, 0}, // default Shift+Ctrl+Up
{NULL, 0}, // default Shift+Ctrl+Alt+Up
},
{
KH("\033OA"), // cursor Up
KH("\033[1;3A"), // cursor Alt+Up
KH("\033[1;5A"), // cursor Ctrl+Up
KH("\033[1;7A"), // cursor Ctrl+Alt+Up
KH("\033[1;2A"), // cursor Shift+Up
KH("\033[1;4A"), // cursor Shift+Alt+Up
{NULL, 0}, // cursor Shift+Ctrl+Up
{NULL, 0}, // cursor Shift+Ctrl+Alt+Up
},
},
{
"Down",
sizeof("Down") - 1,
{
KH("\033[B"), // default Down
KH("\033[1;3B"), // default Alt+Down
KH("\033[1;5B"), // default Ctrl+Down
KH("\033[1;7B"), // default Ctrl+Alt+Down
KH("\033[1;2B"), // default Shift+Down
KH("\033[1;4B"), // default Shift+Alt+Down
KH("\033[1;6B"), // default Shift+Ctrl+Down
KH("\033[1;8B"), // default Shift+Ctrl+Alt+Down
},
{
KH("\033OB"), // cursor Down
KH("\033[1;3B"), // cursor Alt+Down
KH("\033[1;5B"), // cursor Ctrl+Down
KH("\033[1;7B"), // cursor Ctrl+Alt+Down
KH("\033[1;2B"), // cursor Shift+Down
KH("\033[1;4B"), // cursor Shift+Alt+Down
KH("\033[1;6B"), // cursor Shift+Ctrl+Down
KH("\033[1;8B"), // cursor Shift+Ctrl+Alt+Down
},
},
{
"Home",
sizeof("Home") - 1,
{
KH("\033[H"), // default Home
KH("\033[1;3H"), // default Alt+Home
KH("\033[1;5H"), // default Ctrl+Home
KH("\033[1;7H"), // default Ctrl+Alt+Home
KH("\033[1;2H"), // default Shift+Home
KH("\033[1;4H"), // default Shift+Alt+Home
KH("\033[1;6H"), // default Shift+Ctrl+Home
KH("\033[1;8H"), // default Shift+Ctrl+Alt+Home
},
{
KH("\033OH"), // cursor Home
KH("\033[1;3H"), // cursor Alt+Home
KH("\033[1;5H"), // cursor Ctrl+Home
KH("\033[1;7H"), // cursor Ctrl+Alt+Home
KH("\033[1;2H"), // cursor Shift+Home
KH("\033[1;4H"), // cursor Shift+Alt+Home
KH("\033[1;6H"), // cursor Shift+Ctrl+Home
KH("\033[1;8H"), // cursor Shift+Ctrl+Alt+Home
},
},
{
"End",
sizeof("End") - 1,
{
KH("\033[F"), // default End
KH("\033[1;3F"), // default Alt+End
KH("\033[1;5F"), // default Ctrl+End
KH("\033[1;7F"), // default Ctrl+Alt+End
KH("\033[1;2F"), // default Shift+End
KH("\033[1;4F"), // default Shift+Alt+End
KH("\033[1;6F"), // default Shift+Ctrl+End
KH("\033[1;8F"), // default Shift+Ctrl+Alt+End
},
{
KH("\033OF"), // cursor End
KH("\033[1;3F"), // cursor Alt+End
KH("\033[1;5F"), // cursor Ctrl+End
KH("\033[1;7F"), // cursor Ctrl+Alt+End
KH("\033[1;2F"), // cursor Shift+End
KH("\033[1;4F"), // cursor Shift+Alt+End
KH("\033[1;6F"), // cursor Shift+Ctrl+End
KH("\033[1;8F"), // cursor Shift+Ctrl+Alt+End
},
},
{
"Insert",
sizeof("Insert") - 1,
{
KH("\033[2~"), // default Insert
KH("\033[2;3~"), // default Alt+Insert
KH("\033[2;5~"), // default Ctrl+Insert
KH("\033[2;7~"), // default Ctrl+Alt+Insert
KH("\033[2;2~"), // default Shift+Insert
KH("\033[2;4~"), // default Shift+Alt+Insert
KH("\033[2;6~"), // default Shift+Ctrl+Insert
KH("\033[2;8~"), // default Shift+Ctrl+Alt+Insert
},
{
KH("\033[2~"), // cursor Insert
KH("\033[2;3~"), // cursor Alt+Insert
KH("\033[2;5~"), // cursor Ctrl+Insert
KH("\033[2;7~"), // cursor Ctrl+Alt+Insert
KH("\033[2;2~"), // cursor Shift+Insert
KH("\033[2;4~"), // cursor Shift+Alt+Insert
KH("\033[2;6~"), // cursor Shift+Ctrl+Insert
KH("\033[2;8~"), // cursor Shift+Ctrl+Alt+Insert
},
},
{
"Delete",
sizeof("Delete") - 1,
{
KH("\033[3~"), // default Delete
KH("\033[3;3~"), // default Alt+Delete
KH("\033[3;5~"), // default Ctrl+Delete
KH("\033[3;7~"), // default Ctrl+Alt+Delete
KH("\033[3;2~"), // default Shift+Delete
KH("\033[3;4~"), // default Shift+Alt+Delete
KH("\033[3;6~"), // default Shift+Ctrl+Delete
KH("\033[3;8~"), // default Shift+Ctrl+Alt+Delete
},
{
KH("\033[3~"), // cursor Delete
KH("\033[3;3~"), // cursor Alt+Delete
KH("\033[3;5~"), // cursor Ctrl+Delete
KH("\033[3;7~"), // cursor Ctrl+Alt+Delete
KH("\033[3;2~"), // cursor Shift+Delete
KH("\033[3;4~"), // cursor Shift+Alt+Delete
KH("\033[3;6~"), // cursor Shift+Ctrl+Delete
KH("\033[3;8~"), // cursor Shift+Ctrl+Alt+Delete
},
},
{
"Prior",
sizeof("Prior") - 1,
{
KH("\033[5~"), // default Prior
KH("\033[5;3~"), // default Alt+Prior
KH("\033[5;5~"), // default Ctrl+Prior
KH("\033[5;7~"), // default Ctrl+Alt+Prior
KH("\033[5;2~"), // default Shift+Prior
KH("\033[5;4~"), // default Shift+Alt+Prior
KH("\033[5;6~"), // default Shift+Ctrl+Prior
KH("\033[5;8~"), // default Shift+Ctrl+Alt+Prior
},
{
KH("\033[5~"), // cursor Prior
KH("\033[5;3~"), // cursor Alt+Prior
KH("\033[5;5~"), // cursor Ctrl+Prior
KH("\033[5;7~"), // cursor Ctrl+Alt+Prior
KH("\033[5;2~"), // cursor Shift+Prior
KH("\033[5;4~"), // cursor Shift+Alt+Prior
KH("\033[5;6~"), // cursor Shift+Ctrl+Prior
KH("\033[5;8~"), // cursor Shift+Ctrl+Alt+Prior
},
},
{
"Next",
sizeof("Next") - 1,
{
KH("\033[6~"), // default Next
KH("\033[6;3~"), // default Alt+Next
KH("\033[6;5~"), // default Ctrl+Next
KH("\033[6;7~"), // default Ctrl+Alt+Next
KH("\033[6;2~"), // default Shift+Next
KH("\033[6;4~"), // default Shift+Alt+Next
KH("\033[6;6~"), // default Shift+Ctrl+Next
KH("\033[6;8~"), // default Shift+Ctrl+Alt+Next
},
{
KH("\033[6~"), // cursor Next
KH("\033[6;3~"), // cursor Alt+Next
KH("\033[6;5~"), // cursor Ctrl+Next
KH("\033[6;7~"), // cursor Ctrl+Alt+Next
KH("\033[6;2~"), // cursor Shift+Next
KH("\033[6;4~"), // cursor Shift+Alt+Next
KH("\033[6;6~"), // cursor Shift+Ctrl+Next
KH("\033[6;8~"), // cursor Shift+Ctrl+Alt+Next
},
},
{
"ISO_Left_Tab",
sizeof("ISO_Left_Tab") - 1,
{
KH("\t"), // default Tab
KH("\x89"), // default Alt+Tab
KH("\t"), // default Ctrl+Tab
KH("\x89"), // default Ctrl+Alt+Tab
KH("\033[Z"), // default Shift+Tab
KH("\033[Z"), // default Shift+Alt+Tab
KH("\033[Z"), // default Shift+Ctrl+Tab
KH("\033[Z"), // default Shift+Ctrl+Alt+Tab
},
{
KH("\t"), // cursor Tab
KH("\x89"), // cursor Alt+Tab
KH("\t"), // cursor Ctrl+Tab
KH("\x89"), // cursor Ctrl+Alt+Tab
KH("\033[Z"), // cursor Shift+Tab
KH("\033[Z"), // cursor Shift+Alt+Tab
KH("\033[Z"), // cursor Shift+Ctrl+Tab
KH("\033[Z"), // cursor Shift+Ctrl+Alt+Tab
},
},
{
"Tab",
sizeof("Tab") - 1,
{
KH("\t"), // default Tab
KH("\x89"), // default Alt+Tab
KH("\t"), // default Ctrl+Tab
KH("\x89"), // default Ctrl+Alt+Tab
KH("\033[Z"), // default Shift+Tab
KH("\033[Z"), // default Shift+Alt+Tab
KH("\033[Z"), // default Shift+Ctrl+Tab
KH("\033[Z"), // default Shift+Ctrl+Alt+Tab
},
{
KH("\t"), // cursor Tab
KH("\x89"), // cursor Alt+Tab
KH("\t"), // cursor Ctrl+Tab
KH("\x89"), // cursor Ctrl+Alt+Tab
KH("\033[Z"), // cursor Shift+Tab
KH("\033[Z"), // cursor Shift+Alt+Tab
KH("\033[Z"), // cursor Shift+Ctrl+Tab
KH("\033[Z"), // cursor Shift+Ctrl+Alt+Tab
},
},
{
"minus",
sizeof("minus") - 1,
{
KH("-"), // default minus
KH("\033-"), // default Alt+minus
KH("\x1f"), // default Ctrl+minus
KH("\033-"), // default Ctrl+Alt+minus
KH("_"), // default Shift+minus
KH("\xdf"), // default Shift+Alt+minus
KH("\x1f"), // default Shift+Ctrl+minus
KH("\x9f"), // default Shift+Ctrl+Alt+minus
},
{
KH("-"), // cursor minus
KH("\033-"), // cursor Alt+minus
KH("\x1f"), // cursor Ctrl+minus
KH("\033-"), // cursor Ctrl+Alt+minus
KH("_"), // cursor Shift+minus
KH("\xdf"), // cursor Shift+Alt+minus
KH("\x1f"), // cursor Shift+Ctrl+minus
KH("\x9f"), // cursor Shift+Ctrl+Alt+minus
},
},
{
"underscore",
sizeof("underscore") - 1,
{
KH("_"), // default underscore
KH("\033_"), // default Alt+underscore
KH("\x1f"), // default Ctrl+underscore
KH("\x9f"), // default Ctrl+Alt+underscore
KH("_"), // default Shift+underscore
KH("\033_"), // default Shift+Alt+underscore
KH("\x1f"), // default Shift+Ctrl+underscore
KH("\x9f"), // default Shift+Ctrl+Alt+underscore
},
{
KH("_"), // cursor underscore
KH("\033_"), // cursor Alt+underscore
KH("\x1f"), // cursor Ctrl+underscore
KH("\x9f"), // cursor Ctrl+Alt+underscore
KH("_"), // cursor Shift+underscore
KH("\033_"), // cursor Shift+Alt+underscore
KH("\x1f"), // cursor Shift+Ctrl+underscore
KH("\x9f"), // cursor Shift+Ctrl+Alt+underscore
},
},
{
"space",
sizeof("space") - 1,
{
KH(" "), // default space
KH("\xa0"), // default Alt+space
KH("\0"), // default Ctrl+space
KH("\x80"), // default Ctrl+Alt+space
KH(" "), // default Shift+space
KH("\xa0"), // default Shift+Alt+space
KH("\0"), // default Shift+Ctrl+space
KH("\x80"), // default Shift+Ctrl+Alt+space
},
{
KH(" "), // cursor space
KH("\xa0"), // cursor Alt+space
KH("\0"), // cursor Ctrl+space
KH("\x80"), // cursor Ctrl+Alt+space
KH(" "), // cursor Shift+space
KH("\xa0"), // cursor Shift+Alt+space
KH("\0"), // cursor Shift+Ctrl+space
KH("\x80"), // cursor Shift+Ctrl+Alt+space
},
},
{
"Menu",
sizeof("Menu") - 1,
{
KH("\033[29~"), // default Menu
KH("\033[29;3~"), // default Alt+Menu
KH("\033[29;5~"), // default Ctrl+Menu
KH("\033[29;7~"), // default Ctrl+Alt+Menu
KH("\033[29;2~"), // default Shift+Menu
KH("\033[29;4~"), // default Shift+Alt+Menu
KH("\033[29;6~"), // default Shift+Ctrl+Menu
KH("\033[29;8~"), // default Shift+Ctrl+Alt+Menu
},
{
KH("\033[29~"), // cursor Menu
KH("\033[29;3~"), // cursor Alt+Menu
KH("\033[29;5~"), // cursor Ctrl+Menu
KH("\033[29;7~"), // cursor Ctrl+Alt+Menu
KH("\033[29;2~"), // cursor Shift+Menu
KH("\033[29;4~"), // cursor Shift+Alt+Menu
KH("\033[29;6~"), // cursor Shift+Ctrl+Menu
KH("\033[29;8~"), // cursor Shift+Ctrl+Alt+Menu
},
},
{
"Find",
sizeof("Find") - 1,
{
KH("\033[1~"), // default Find
KH("\033[1;3~"), // default Alt+Find
KH("\033[1;5~"), // default Ctrl+Find
KH("\033[1;7~"), // default Ctrl+Alt+Find
KH("\033[1;2~"), // default Shift+Find
KH("\033[1;4~"), // default Shift+Alt+Find
KH("\033[1;6~"), // default Shift+Ctrl+Find
KH("\033[1;8~"), // default Shift+Ctrl+Alt+Find
},
{
KH("\033[1~"), // cursor Find
KH("\033[1;3~"), // cursor Alt+Find
KH("\033[1;5~"), // cursor Ctrl+Find
KH("\033[1;7~"), // cursor Ctrl+Alt+Find
KH("\033[1;2~"), // cursor Shift+Find
KH("\033[1;4~"), // cursor Shift+Alt+Find
KH("\033[1;6~"), // cursor Shift+Ctrl+Find
KH("\033[1;8~"), // cursor Shift+Ctrl+Alt+Find
},
},
{
"Help",
sizeof("Help") - 1,
{
KH("\033[28~"), // cursor Help
KH("\033[28;3~"), // default Alt+Help
KH("\033[28;5~"), // default Ctrl+Help
KH("\033[28;7~"), // default Ctrl+Alt+Help
KH("\033[28;2~"), // default Shift+Help
KH("\033[28;4~"), // default Shift+Alt+Help
KH("\033[28;6~"), // default Shift+Ctrl+Help
KH("\033[28;8~"), // default Shift+Ctrl+Alt+Help
},
{
KH("\033[28~"), // cursor Help
KH("\033[28;3~"), // cursor Alt+Help
KH("\033[28;5~"), // cursor Ctrl+Help
KH("\033[28;7~"), // cursor Ctrl+Alt+Help
KH("\033[28;2~"), // cursor Shift+Help
KH("\033[28;4~"), // cursor Shift+Alt+Help
KH("\033[28;6~"), // cursor Shift+Ctrl+Help
KH("\033[28;8~"), // cursor Shift+Ctrl+Alt+Help
},
},
{
"Execute",
sizeof("Execute") - 1,
{
KH("\033[3~"), // default Execute
KH("\033[3;3~"), // default Alt+Execute
KH("\033[3;5~"), // default Ctrl+Execute
KH("\033[3;7~"), // default Ctrl+Alt+Execute
KH("\033[3;2~"), // default Shift+Execute
KH("\033[3;4~"), // default Shift+Alt+Execute
KH("\033[3;6~"), // default Shift+Ctrl+Execute
KH("\033[3;8~"), // default Shift+Ctrl+Alt+Execute
},
{
KH("\033[3~"), // cursor Execute
KH("\033[3;3~"), // cursor Alt+Execute
KH("\033[3;5~"), // cursor Ctrl+Execute
KH("\033[3;7~"), // cursor Ctrl+Alt+Execute
KH("\033[3;2~"), // cursor Shift+Execute
KH("\033[3;4~"), // cursor Shift+Alt+Execute
KH("\033[3;6~"), // cursor Shift+Ctrl+Execute
KH("\033[3;8~"), // cursor Shift+Ctrl+Alt+Execute
},
},
{
"Select",
sizeof("Select") - 1,
{
KH("\033[4~"), // default Select
KH("\033[4;3~"), // default Alt+Select
KH("\033[4;5~"), // default Ctrl+Select
KH("\033[4;7~"), // default Ctrl+Alt+Select
KH("\033[4;2~"), // default Shift+Select
KH("\033[4;4~"), // default Shift+Alt+Select
KH("\033[4;6~"), // default Shift+Ctrl+Select
KH("\033[4;8~"), // default Shift+Ctrl+Alt+Select
},
{
KH("\033[4~"), // cursor Select
KH("\033[4;3~"), // cursor Alt+Select
KH("\033[4;5~"), // cursor Ctrl+Select
KH("\033[4;7~"), // cursor Ctrl+Alt+Select
KH("\033[4;2~"), // cursor Shift+Select
KH("\033[4;4~"), // cursor Shift+Alt+Select
KH("\033[4;6~"), // cursor Shift+Ctrl+Select
KH("\033[4;8~"), // cursor Shift+Ctrl+Alt+Select
},
},
};
static const Tty_Key tty_keys_kp_plain[] = {
{
"KP_Up",
sizeof("KP_Up") - 1,
{
KH("\033[A"), // default KP_Up
KH("\033[A"), // default Alt+KP_Up
KH("\033[A"), // default Ctrl+KP_Up
KH("\033[A"), // default Ctrl+Alt+KP_Up
KH("8"), // default Shift+KP_Up
KH("8"), // default Shift+Alt+KP_Up
KH("8"), // default Shift+Ctrl+KP_Up
KH("8"), // default Shift+Ctrl+Alt+KP_Up
},
{
KH("\033OA"), // cursor KP_Up
KH("\033OA"), // cursor Alt+KP_Up
KH("\033OA"), // cursor Ctrl+KP_Up
KH("\033OA"), // cursor Ctrl+Alt+KP_Up
KH("8"), // cursor Shift+KP_Up
KH("8"), // cursor Shift+Alt+KP_Up
KH("8"), // cursor Shift+Ctrl+KP_Up
KH("8"), // cursor Shift+Ctrl+Alt+KP_Up
},
},
{
"KP_Down",
sizeof("KP_Down") - 1,
{
KH("\033[B"), // default KP_Down
KH("\033[B"), // default Alt+KP_Down
KH("\033[B"), // default Ctrl+KP_Down
KH("\033[B"), // default Ctrl+Alt+KP_Down
KH("2"), // default Shift+KP_Down
KH("2"), // default Shift+Alt+KP_Down
KH("2"), // default Shift+Ctrl+KP_Down
KH("2"), // default Shift+Ctrl+Alt+KP_Down
},
{
KH("\033OB"), // cursor KP_Down
KH("\033OB"), // cursor Alt+KP_Down
KH("\033OB"), // cursor Ctrl+KP_Down
KH("\033OB"), // cursor Ctrl+Alt+KP_Down
KH("2"), // cursor Shift+KP_Down
KH("2"), // cursor Shift+Alt+KP_Down
KH("2"), // cursor Shift+Ctrl+KP_Down
KH("2"), // cursor Shift+Ctrl+Alt+KP_Down
},
},
{
"KP_Right",
sizeof("KP_Right") - 1,
{
KH("\033[C"), // default KP_Right
KH("\033[C"), // default Alt+KP_Right
KH("\033[C"), // default Ctrl+KP_Right
KH("\033[C"), // default Ctrl+Alt+KP_Right
KH("6"), // default Shift+KP_Right
KH("6"), // default Shift+Alt+KP_Right
KH("6"), // default Shift+Ctrl+KP_Right
KH("6"), // default Shift+Ctrl+Alt+KP_Right
},
{
KH("\033OC"), // cursor KP_Right
KH("\033OC"), // cursor Alt+KP_Right
KH("\033OC"), // cursor Ctrl+KP_Right
KH("\033OC"), // cursor Ctrl+Alt+KP_Right
KH("6"), // cursor Shift+KP_Right
KH("6"), // cursor Shift+Alt+KP_Right
KH("6"), // cursor Shift+Ctrl+KP_Right
KH("6"), // cursor Shift+Ctrl+Alt+KP_Right
},
},
{
"KP_Left",
sizeof("KP_Left") - 1,
{
KH("\033[D"), // default KP_Left
KH("\033[D"), // default Alt+KP_Left
KH("\033[D"), // default Ctrl+KP_Left
KH("\033[D"), // default Ctrl+Alt+KP_Left
KH("4"), // default Shift+KP_Left
KH("4"), // default Shift+Alt+KP_Left
KH("4"), // default Shift+Ctrl+KP_Left
KH("4"), // default Shift+Ctrl+Alt+KP_Left
},
{
KH("\033OD"), // cursor KP_Left
KH("\033OD"), // cursor Alt+KP_Left
KH("\033OD"), // cursor Ctrl+KP_Left
KH("\033OD"), // cursor Ctrl+Alt+KP_Left
KH("4"), // cursor Shift+KP_Left
KH("4"), // cursor Shift+Alt+KP_Left
KH("4"), // cursor Shift+Ctrl+KP_Left
KH("4"), // cursor Shift+Ctrl+Alt+KP_Left
},
},
{
"KP_Insert",
sizeof("KP_Insert") - 1,
{
KH("\033[2~"), // default KP_Insert
KH("\033[2;3~"), // default Alt+KP_Insert
KH("\033[2;5~"), // default Ctrl+KP_Insert
KH("\033[2;7~"), // default Ctrl+Alt+KP_Insert
KH("\033[2;2~"), // default Shift+KP_Insert
KH("\033[2;4~"), // default Shift+Alt+KP_Insert
KH("\033[2;6~"), // default Shift+Ctrl+KP_Insert
KH("\033[2;8~"), // default Shift+Ctrl+Alt+KP_Insert
},
{
KH("\033[2~"), // cursor KP_Insert
KH("\033[2;3~"), // cursor Alt+KP_Insert
KH("\033[2;5~"), // cursor Ctrl+KP_Insert
KH("\033[2;7~"), // cursor Ctrl+Alt+KP_Insert
KH("\033[2;2~"), // cursor Shift+KP_Insert
KH("\033[2;4~"), // cursor Shift+Alt+KP_Insert
KH("\033[2;6~"), // cursor Shift+Ctrl+KP_Insert
KH("\033[2;8~"), // cursor Shift+Ctrl+Alt+KP_Insert
},
},
{
"KP_Delete",
sizeof("KP_Delete") - 1,
{
KH("\033[3~"), // default KP_Delete
KH("\033[3;3~"), // default Alt+KP_Delete
KH("\033[3;5~"), // default Ctrl+KP_Delete
KH("\033[3;7~"), // default Ctrl+Alt+KP_Delete
KH("."), // default Shift+KP_Delete
KH("."), // default Shift+Alt+KP_Delete
KH("."), // default Shift+Ctrl+KP_Delete
KH("."), // default Shift+Ctrl+Alt+KP_Delete
},
{
KH("\033[3~"), // cursor KP_Delete
KH("\033[3;3~"), // cursor Alt+KP_Delete
KH("\033[3;5~"), // cursor Ctrl+KP_Delete
KH("\033[3;7~"), // cursor Ctrl+Alt+KP_Delete
KH("."), // cursor Shift+KP_Delete
KH("."), // cursor Shift+Alt+KP_Delete
KH("."), // cursor Shift+Ctrl+KP_Delete
KH("."), // cursor Shift+Ctrl+Alt+KP_Delete
},
},
{
"KP_Home",
sizeof("KP_Home") - 1,
{
KH("\033[H"), // default KP_Home
KH("\033[H"), // default Alt+KP_Home
KH("\033[H"), // default Ctrl+KP_Home
KH("\033[H"), // default Ctrl+Alt+KP_Home
KH("\033[H"), // default Shift+KP_Home
KH("\033[H"), // default Shift+Alt+KP_Home
KH("\033[H"), // default Shift+Ctrl+KP_Home
KH("\033[H"), // default Shift+Ctrl+Alt+KP_Home
},
{
KH("\033OH"), // cursor KP_Home
KH("\033OH"), // cursor Alt+KP_Home
KH("\033OH"), // cursor Ctrl+KP_Home
KH("\033OH"), // cursor Ctrl+Alt+KP_Home
KH("\033OH"), // cursor Shift+KP_Home
KH("\033OH"), // cursor Shift+Alt+KP_Home
KH("\033OH"), // cursor Shift+Ctrl+KP_Home
KH("\033OH"), // cursor Shift+Ctrl+Alt+KP_Home
},
},
{
"KP_Prior",
sizeof("KP_Prior") - 1,
{
KH("\033[5~"), // default KP_Prior
KH("\033[5~"), // default Alt+KP_Prior
KH("\033[5~"), // default Ctrl+KP_Prior
KH("\033[5~"), // default Ctrl+Alt+KP_Prior
KH("\033[5~"), // default Shift+KP_Prior
KH("\033[5~"), // default Shift+Alt+KP_Prior
KH("\033[5~"), // default Shift+Ctrl+KP_Prior
KH("\033[5~"), // default Shift+Ctrl+Alt+KP_Prior
},
{
KH("\033[5~"), // cursor KP_Prior
KH("\033[5~"), // cursor Alt+KP_Prior
KH("\033[5~"), // cursor Ctrl+KP_Prior
KH("\033[5~"), // cursor Ctrl+Alt+KP_Prior
KH("\033[5~"), // cursor Shift+KP_Prior
KH("\033[5~"), // cursor Shift+Alt+KP_Prior
KH("\033[5~"), // cursor Shift+Ctrl+KP_Prior
KH("\033[5~"), // cursor Shift+Ctrl+Alt+KP_Prior
},
},
{
"KP_Next",
sizeof("KP_Next") - 1,
{
KH("\033[6~"), // default KP_Next
KH("\033[6~"), // default Alt+KP_Next
KH("\033[6~"), // default Ctrl+KP_Next
KH("\033[6~"), // default Ctrl+Alt+KP_Next
KH("\033[6~"), // default Shift+KP_Next
KH("\033[6~"), // default Shift+Alt+KP_Next
KH("\033[6~"), // default Shift+Ctrl+KP_Next
KH("\033[6~"), // default Shift+Ctrl+Alt+KP_Next
},
{
KH("\033[6~"), // cursor KP_Next
KH("\033[6~"), // cursor Alt+KP_Next
KH("\033[6~"), // cursor Ctrl+KP_Next
KH("\033[6~"), // cursor Ctrl+Alt+KP_Next
KH("\033[6~"), // cursor Shift+KP_Next
KH("\033[6~"), // cursor Shift+Alt+KP_Next
KH("\033[6~"), // cursor Shift+Ctrl+KP_Next
KH("\033[6~"), // cursor Shift+Ctrl+Alt+KP_Next
},
},
{
"KP_Begin",
sizeof("KP_Begin") - 1,
{
KH("\033[E"), // default KP_Begin
KH("\033[E"), // default Alt+KP_Begin
KH("\033[E"), // default Ctrl+KP_Begin
KH("\033[E"), // default Ctrl+Alt+KP_Begin
KH("5"), // default Shift+KP_Begin
KH("5"), // default Shift+Alt+KP_Begin
KH("5"), // default Shift+Ctrl+KP_Begin
KH("5"), // default Shift+Ctrl+Alt+KP_Begin
},
{
KH("\033OE"), // cursor KP_Begin
KH("\033OE"), // cursor Alt+KP_Begin
KH("\033OE"), // cursor Ctrl+KP_Begin
KH("\033OE"), // cursor Ctrl+Alt+KP_Begin
KH("5"), // cursor Shift+KP_Begin
KH("5"), // cursor Shift+Alt+KP_Begin
KH("5"), // cursor Shift+Ctrl+KP_Begin
KH("5"), // cursor Shift+Ctrl+Alt+KP_Begin
},
},
{
"KP_End",
sizeof("KP_End") - 1,
{
KH("\033[F"), // default KP_End
KH("\033[F"), // default Alt+KP_End
KH("\033[F"), // default Ctrl+KP_End
KH("\033[F"), // default Ctrl+Alt+KP_End
KH("\033[F"), // default Shift+KP_End
KH("\033[F"), // default Shift+Alt+KP_End
KH("\033[F"), // default Shift+Ctrl+KP_End
KH("\033[F"), // default Shift+Ctrl+Alt+KP_End
},
{
KH("\033OF"), // cursor KP_End
KH("\033OF"), // cursor Alt+KP_End
KH("\033OF"), // cursor Ctrl+KP_End
KH("\033OF"), // cursor Ctrl+Alt+KP_End
KH("\033OF"), // cursor Shift+KP_End
KH("\033OF"), // cursor Shift+Alt+KP_End
KH("\033OF"), // cursor Shift+Ctrl+KP_End
KH("\033OF"), // cursor Shift+Ctrl+Alt+KP_End
},
},
};
static const Tty_Key tty_keys_kp_app[] = {
{
"KP_Up",
sizeof("KP_Up") - 1,
{
KH("\033[A"), // default KP_Up
KH("\033[1;3A"), // default Alt+KP_Up
KH("\033[1;5A"), // default Ctrl+KP_Up
KH("\033[1;7A"), // default Ctrl+Alt+KP_Up
KH("\033O2x"), // default Shift+KP_Up
KH("\033O4x"), // default Shift+Alt+KP_Up
KH("\033O6x"), // default Shift+Ctrl+KP_Up
KH("\033O8x"), // default Shift+Ctrl+Alt+KP_Up
},
{
KH("\033OA"), // cursor KP_Up
KH("\033[1;3A"), // cursor Alt+KP_Up
KH("\033[1;5A"), // cursor Ctrl+KP_Up
KH("\033[1;7A"), // cursor Ctrl+Alt+KP_Up
KH("\033O2x"), // cursor Shift+KP_Up
KH("\033O4x"), // cursor Shift+Alt+KP_Up
KH("\033O6x"), // cursor Shift+Ctrl+KP_Up
KH("\033O8x"), // cursor Shift+Ctrl+Alt+KP_Up
},
},
{
"KP_Down",
sizeof("KP_Down") - 1,
{
KH("\033[B"), // default KP_Down
KH("\033[1;3B"), // default Alt+KP_Down
KH("\033[1;5B"), // default Ctrl+KP_Down
KH("\033[1;7B"), // default Ctrl+Alt+KP_Down
KH("\033O2r"), // default Shift+KP_Down
KH("\033O4r"), // default Shift+Alt+KP_Down
KH("\033O6r"), // default Shift+Ctrl+KP_Down
KH("\033O8r"), // default Shift+Ctrl+Alt+KP_Down
},
{
KH("\033OB"), // cursor KP_Down
KH("\033[1;3B"), // cursor Alt+KP_Down
KH("\033[1;5B"), // cursor Ctrl+KP_Down
KH("\033[1;7B"), // cursor Ctrl+Alt+KP_Down
KH("\033O2r"), // cursor Shift+KP_Down
KH("\033O4r"), // cursor Shift+Alt+KP_Down
KH("\033O6r"), // cursor Shift+Ctrl+KP_Down
KH("\033O8r"), // cursor Shift+Ctrl+Alt+KP_Down
},
},
{
"KP_Right",
sizeof("KP_Right") - 1,
{
KH("\033[C"), // default KP_Right
KH("\033[1;3C"), // default Alt+KP_Right
KH("\033[1;5C"), // default Ctrl+KP_Right
KH("\033[1;7C"), // default Ctrl+Alt+KP_Right
KH("\033O2v"), // default Shift+KP_Right
KH("\033O4v"), // default Shift+Alt+KP_Right
KH("\033O6v"), // default Shift+Ctrl+KP_Right
KH("\033O8v"), // default Shift+Ctrl+Alt+KP_Right
},
{
KH("\033OC"), // cursor KP_Right
KH("\033[1;3C"), // cursor Alt+KP_Right
KH("\033[1;5C"), // cursor Ctrl+KP_Right
KH("\033[1;7C"), // cursor Ctrl+Alt+KP_Right
KH("\033O2v"), // cursor Shift+KP_Right
KH("\033O4v"), // cursor Shift+Alt+KP_Right
KH("\033O6v"), // cursor Shift+Ctrl+KP_Right
KH("\033O8v"), // cursor Shift+Ctrl+Alt+KP_Right
},
},
{
"KP_Left",
sizeof("KP_Left") - 1,
{
KH("\033[D"), // default KP_Left
KH("\033[1;3D"), // default Alt+KP_Left
KH("\033[1;5D"), // default Ctrl+KP_Left
KH("\033[1;7D"), // default Ctrl+Alt+KP_Left
KH("\033O2t"), // default Shift+KP_Left
KH("\033O4t"), // default Shift+Alt+KP_Left
KH("\033O6t"), // default Shift+Ctrl+KP_Left
KH("\033O8t"), // default Shift+Ctrl+Alt+KP_Left
},
{
KH("\033OD"), // cursor KP_Left
KH("\033[1;3D"), // cursor Alt+KP_Left
KH("\033[1;5D"), // cursor Ctrl+KP_Left
KH("\033[1;7D"), // cursor Ctrl+Alt+KP_Left
KH("\033O2t"), // cursor Shift+KP_Left
KH("\033O4t"), // cursor Shift+Alt+KP_Left
KH("\033O6t"), // cursor Shift+Ctrl+KP_Left
KH("\033O8t"), // cursor Shift+Ctrl+Alt+KP_Left
},
},
{
"KP_Insert",
sizeof("KP_Insert") - 1,
{
KH("\033[2~"), // default KP_Insert
KH("\033[2;3~"), // default Alt+KP_Insert
KH("\033[2;5~"), // default Ctrl+KP_Insert
KH("\033[2;7~"), // default Ctrl+Alt+KP_Insert
KH("\033[2;2~"), // default Shift+KP_Insert
KH("\033[2;4~"), // default Shift+Alt+KP_Insert
KH("\033[2;6~"), // default Shift+Ctrl+KP_Insert
KH("\033[2;8~"), // default Shift+Ctrl+Alt+KP_Insert
},
{
KH("\033[2~"), // cursor KP_Insert
KH("\033[2;3~"), // cursor Alt+KP_Insert
KH("\033[2;5~"), // cursor Ctrl+KP_Insert
KH("\033[2;7~"), // cursor Ctrl+Alt+KP_Insert
KH("\033[2;2~"), // cursor Shift+KP_Insert
KH("\033[2;4~"), // cursor Shift+Alt+KP_Insert
KH("\033[2;6~"), // cursor Shift+Ctrl+KP_Insert
KH("\033[2;8~"), // cursor Shift+Ctrl+Alt+KP_Insert
},
},
{
"KP_Delete",
sizeof("KP_Delete") - 1,
{
KH("\033[3~"), // default KP_Delete
KH("\033[3;3~"), // default Alt+KP_Delete
KH("\033[3;5~"), // default Ctrl+KP_Delete
KH("\033[3;7~"), // default Ctrl+Alt+KP_Delete
KH("\033O2n"), // default Shift+KP_Delete
KH("\033O4n"), // default Shift+Alt+KP_Delete
KH("\033O6n"), // default Shift+Ctrl+KP_Delete
KH("\033O8n"), // default Shift+Ctrl+Alt+KP_Delete
},
{
KH("\033[3~"), // cursor KP_Delete
KH("\033[3;3~"), // cursor Alt+KP_Delete
KH("\033[3;5~"), // cursor Ctrl+KP_Delete
KH("\033[3;7~"), // cursor Ctrl+Alt+KP_Delete
KH("\033O2n"), // cursor Shift+KP_Delete
KH("\033O4n"), // cursor Shift+Alt+KP_Delete
KH("\033O6n"), // cursor Shift+Ctrl+KP_Delete
KH("\033O8n"), // cursor Shift+Ctrl+Alt+KP_Delete
},
},
{
"KP_Home",
sizeof("KP_Home") - 1,
{
KH("\033[H"), // default KP_Home
KH("\033[1;3H"), // default Alt+KP_Home
KH("\033[1;5H"), // default Ctrl+KP_Home
KH("\033[1;7H"), // default Ctrl+Alt+KP_Home
KH("\033[1;2H"), // default Shift+KP_Home
KH("\033[1;4H"), // default Shift+Alt+KP_Home
KH("\033[1;6H"), // default Shift+Ctrl+KP_Home
KH("\033[1;8H"), // default Shift+Ctrl+Alt+KP_Home
},
{
KH("\033OH"), // cursor KP_Home
KH("\033[1;3H"), // cursor Alt+KP_Home
KH("\033[1;5H"), // cursor Ctrl+KP_Home
KH("\033[1;7H"), // cursor Ctrl+Alt+KP_Home
KH("\033[1;2H"), // cursor Shift+KP_Home
KH("\033[1;4H"), // cursor Shift+Alt+KP_Home
KH("\033[1;6H"), // cursor Shift+Ctrl+KP_Home
KH("\033[1;8H"), // cursor Shift+Ctrl+Alt+KP_Home
},
},
{
"KP_Prior",
sizeof("KP_Prior") - 1,
{
KH("\033[5~"), // default KP_Prior
KH("\033[5;3~"), // default Alt+KP_Prior
KH("\033[5;5~"), // default Ctrl+KP_Prior
KH("\033[5;7~"), // default Ctrl+Alt+KP_Prior
KH("\033[5;2~"), // default Shift+KP_Prior
KH("\033[5;4~"), // default Shift+Alt+KP_Prior
KH("\033[5;6~"), // default Shift+Ctrl+KP_Prior
KH("\033[5;8~"), // default Shift+Ctrl+Alt+KP_Prior
},
{
KH("\033[5~"), // cursor KP_Prior
KH("\033[5;3~"), // cursor Alt+KP_Prior
KH("\033[5;5~"), // cursor Ctrl+KP_Prior
KH("\033[5;7~"), // cursor Ctrl+Alt+KP_Prior
KH("\033[5;2~"), // cursor Shift+KP_Prior
KH("\033[5;4~"), // cursor Shift+Alt+KP_Prior
KH("\033[5;6~"), // cursor Shift+Ctrl+KP_Prior
KH("\033[5;8~"), // cursor Shift+Ctrl+Alt+KP_Prior
},
},
{
"KP_Next",
sizeof("KP_Next") - 1,
{
KH("\033[6~"), // default KP_Next
KH("\033[6;3~"), // default Alt+KP_Next
KH("\033[6;5~"), // default Ctrl+KP_Next
KH("\033[6;7~"), // default Ctrl+Alt+KP_Next
KH("\033[6;2~"), // default Shift+KP_Next
KH("\033[6;4~"), // default Shift+Alt+KP_Next
KH("\033[6;6~"), // default Shift+Ctrl+KP_Next
KH("\033[6;8~"), // default Shift+Ctrl+Alt+KP_Next
},
{
KH("\033[6~"), // cursor KP_Next
KH("\033[6;3~"), // cursor Alt+KP_Next
KH("\033[6;5~"), // cursor Ctrl+KP_Next
KH("\033[6;7~"), // cursor Ctrl+Alt+KP_Next
KH("\033[6;2~"), // cursor Shift+KP_Next
KH("\033[6;4~"), // cursor Shift+Alt+KP_Next
KH("\033[6;6~"), // cursor Shift+Ctrl+KP_Next
KH("\033[6;8~"), // cursor Shift+Ctrl+Alt+KP_Next
},
},
{
"KP_Begin",
sizeof("KP_Begin") - 1,
{
KH("\033[E"), // default KP_Begin
KH("\033[1;3E"), // default Alt+KP_Begin
KH("\033[1;5E"), // default Ctrl+KP_Begin
KH("\033[1;7E"), // default Ctrl+Alt+KP_Begin
KH("\033O2u"), // default Shift+KP_Begin
KH("\033O4u"), // default Shift+Alt+KP_Begin
KH("\033O6u"), // default Shift+Ctrl+KP_Begin
KH("\033O8u"), // default Shift+Ctrl+Alt+KP_Begin
},
{
KH("\033OE"), // cursor KP_Begin
KH("\033[1;3E"), // cursor Alt+KP_Begin
KH("\033[1;5E"), // cursor Ctrl+KP_Begin
KH("\033[1;7E"), // cursor Ctrl+Alt+KP_Begin
KH("\033O2u"), // cursor Shift+KP_Begin
KH("\033O4u"), // cursor Shift+Alt+KP_Begin
KH("\033O6u"), // cursor Shift+Ctrl+KP_Begin
KH("\033O8u"), // cursor Shift+Ctrl+Alt+KP_Begin
},
},
{
"KP_End",
sizeof("KP_End") - 1,
{
KH("\033[F"), // default KP_End
KH("\033[1;3F"), // default Alt+KP_End
KH("\033[1;5F"), // default Ctrl+KP_End
KH("\033[1;7F"), // default Ctrl+Alt+KP_End
KH("\033[1;2F"), // default Shift+KP_End
KH("\033[1;4F"), // default Shift+Alt+KP_End
KH("\033[1;6F"), // default Shift+Ctrl+KP_End
KH("\033[1;8F"), // default Shift+Ctrl+Alt+KP_End
},
{
KH("\033OF"), // cursor KP_End
KH("\033[1;3F"), // cursor Alt+KP_End
KH("\033[1;5F"), // cursor Ctrl+KP_End
KH("\033[1;7F"), // cursor Ctrl+Alt+KP_End
KH("\033[1;2F"), // cursor Shift+KP_End
KH("\033[1;4F"), // cursor Shift+Alt+KP_End
KH("\033[1;6F"), // cursor Shift+Ctrl+KP_End
KH("\033[1;8F"), // cursor Shift+Ctrl+Alt+KP_End
},
},
};
#undef KH