Add support for the underscore key found in some keyboard layouts

Fixes #1639
This commit is contained in:
Kovid Goyal 2019-05-24 17:52:08 +05:30
parent e6217e1428
commit a51239c6ae
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
10 changed files with 5816 additions and 5798 deletions

View File

@ -4,6 +4,13 @@ Changelog
|kitty| is a feature full, cross-platform, *fast*, GPU based terminal emulator.
To update |kitty|, :doc:`follow the instructions <binary>`.
0.14.1 [future]
---------------------
- Add support for the underscore key found in some keyboard layouts
(:iss:`1639`)
0.14.0 [2019-05-24]
---------------------

View File

@ -272,6 +272,7 @@ static int translateKey(unsigned int key, GLFWbool apply_keymap)
K('[', LEFT_BRACKET);
K(']', RIGHT_BRACKET);
K('+', PLUS);
K('_', UNDERSCORE);
K('`', GRAVE_ACCENT);
K('\\', BACKSLASH);
#undef K
@ -2234,6 +2235,7 @@ GLFWAPI void glfwGetCocoaKeyEquivalent(int glfw_key, int glfw_mods, unsigned sho
K('[', LEFT_BRACKET);
K(']', RIGHT_BRACKET);
K('+', PLUS);
K('_', UNDERSCORE);
K('`', GRAVE_ACCENT);
K('\\', BACKSLASH);

1
glfw/glfw3.h vendored
View File

@ -410,6 +410,7 @@ extern "C" {
#define GLFW_KEY_WORLD_1 161 /* non-US #1 */
#define GLFW_KEY_WORLD_2 162 /* non-US #2 */
#define GLFW_KEY_PLUS 163
#define GLFW_KEY_UNDERSCORE 164
/* Function keys */
#define GLFW_KEY_ESCAPE 256

1
glfw/input.c vendored
View File

@ -488,6 +488,7 @@ const char* _glfwGetKeyName(int key)
case GLFW_KEY_WORLD_1: return "WORLD 1";
case GLFW_KEY_WORLD_2: return "WORLD 2";
case GLFW_KEY_PLUS: return "PLUS";
case GLFW_KEY_UNDERSCORE: return "UNDERSCORE";
// Function keys
case GLFW_KEY_ESCAPE: return "ESCAPE";

1
glfw/xkb_glfw.c vendored
View File

@ -47,6 +47,7 @@
S(backslash, BACKSLASH); \
S(bracketright, RIGHT_BRACKET); \
S(plus, PLUS); \
S(underscore, UNDERSCORE); \
S(grave, GRAVE_ACCENT); \
S(Escape, ESCAPE); \
S(Return, ENTER); \

View File

@ -24,6 +24,7 @@ named_keys = {
"'": 'APOSTROPHE',
',': 'COMMA',
'-': 'MINUS',
'_': 'UNDERSCORE',
'.': 'PERIOD',
'/': 'SLASH',
';': 'SEMICOLON',

1
kitty/glfw-wrapper.h generated
View File

@ -167,6 +167,7 @@
#define GLFW_KEY_WORLD_1 161 /* non-US #1 */
#define GLFW_KEY_WORLD_2 162 /* non-US #2 */
#define GLFW_KEY_PLUS 163
#define GLFW_KEY_UNDERSCORE 164
/* Function keys */
#define GLFW_KEY_ESCAPE 256

View File

@ -1196,6 +1196,7 @@ init_glfw(PyObject *m) {
ADDC(GLFW_KEY_WORLD_1);
ADDC(GLFW_KEY_WORLD_2);
ADDC(GLFW_KEY_PLUS);
ADDC(GLFW_KEY_UNDERSCORE);
// --- Function keys -----------------------------------------------------------
ADDC(GLFW_KEY_ESCAPE);

4
kitty/key_encoding.py generated
View File

@ -128,7 +128,8 @@ ENCODING = {
'X': 'p',
'Y': 'q',
'Z': 'r',
'PLUS': 'Bi'
'PLUS': 'Bi',
'UNDERSCORE': 'Bj'
}
KEY_MAP = {
32: 'A',
@ -182,6 +183,7 @@ KEY_MAP = {
161: 'w',
162: 'x',
163: 'Bi',
164: 'Bj',
256: 'y',
257: 'z',
258: '0',

11595
kitty/keys.h generated

File diff suppressed because it is too large Load Diff