See key input for how these are used.
These key codes are inspired by the USB HID Usage Tables v1.12 (p. 53-60), but re-arranged to map to 7-bit ASCII for printable keys (function keys are put in the 256+ range).
The naming of the key codes follow these rules:
- The US keyboard layout is used
- Names of printable alpha-numeric characters are used (e.g. "A", "R", "3", etc.)
- For non-alphanumeric characters, Unicode:ish names are used (e.g. "COMMA", "LEFT_SQUARE_BRACKET", etc.). Note that some names do not correspond to the Unicode standard (usually for brevity)
- Keys that lack a clear US mapping are named "WORLD_x"
- For non-printable keys, custom names are used (e.g. "F4", "BACKSPACE", etc.)
◆ GLFW_KEY_0
◆ GLFW_KEY_1
◆ GLFW_KEY_2
◆ GLFW_KEY_3
◆ GLFW_KEY_4
◆ GLFW_KEY_5
◆ GLFW_KEY_6
◆ GLFW_KEY_7
◆ GLFW_KEY_8
◆ GLFW_KEY_9
◆ GLFW_KEY_A
◆ GLFW_KEY_APOSTROPHE
#define GLFW_KEY_APOSTROPHE 39 /* ' */ |
◆ GLFW_KEY_B
◆ GLFW_KEY_BACKSLASH
#define GLFW_KEY_BACKSLASH 92 /* \ */ |
◆ GLFW_KEY_BACKSPACE
#define GLFW_KEY_BACKSPACE 259 |
◆ GLFW_KEY_C
◆ GLFW_KEY_CAPS_LOCK
#define GLFW_KEY_CAPS_LOCK 280 |
◆ GLFW_KEY_COMMA
#define GLFW_KEY_COMMA 44 /* , */ |
◆ GLFW_KEY_D
◆ GLFW_KEY_DELETE
#define GLFW_KEY_DELETE 261 |
◆ GLFW_KEY_DOWN
#define GLFW_KEY_DOWN 264 |
◆ GLFW_KEY_E
◆ GLFW_KEY_END
◆ GLFW_KEY_ENTER
#define GLFW_KEY_ENTER 257 |
◆ GLFW_KEY_EQUAL
#define GLFW_KEY_EQUAL 61 /* = */ |
◆ GLFW_KEY_ESCAPE
#define GLFW_KEY_ESCAPE 256 |
◆ GLFW_KEY_F
◆ GLFW_KEY_F1
◆ GLFW_KEY_F10
◆ GLFW_KEY_F11
◆ GLFW_KEY_F12
◆ GLFW_KEY_F13
◆ GLFW_KEY_F14
◆ GLFW_KEY_F15
◆ GLFW_KEY_F16
◆ GLFW_KEY_F17
◆ GLFW_KEY_F18
◆ GLFW_KEY_F19
◆ GLFW_KEY_F2
◆ GLFW_KEY_F20
◆ GLFW_KEY_F21
◆ GLFW_KEY_F22
◆ GLFW_KEY_F23
◆ GLFW_KEY_F24
◆ GLFW_KEY_F25
◆ GLFW_KEY_F3
◆ GLFW_KEY_F4
◆ GLFW_KEY_F5
◆ GLFW_KEY_F6
◆ GLFW_KEY_F7
◆ GLFW_KEY_F8
◆ GLFW_KEY_F9
◆ GLFW_KEY_G
◆ GLFW_KEY_GRAVE_ACCENT
#define GLFW_KEY_GRAVE_ACCENT 96 /* ` */ |
◆ GLFW_KEY_H
◆ GLFW_KEY_HOME
#define GLFW_KEY_HOME 268 |
◆ GLFW_KEY_I
◆ GLFW_KEY_INSERT
#define GLFW_KEY_INSERT 260 |
◆ GLFW_KEY_J
◆ GLFW_KEY_K
◆ GLFW_KEY_KP_0
#define GLFW_KEY_KP_0 320 |
◆ GLFW_KEY_KP_1
#define GLFW_KEY_KP_1 321 |
◆ GLFW_KEY_KP_2
#define GLFW_KEY_KP_2 322 |
◆ GLFW_KEY_KP_3
#define GLFW_KEY_KP_3 323 |
◆ GLFW_KEY_KP_4
#define GLFW_KEY_KP_4 324 |
◆ GLFW_KEY_KP_5
#define GLFW_KEY_KP_5 325 |
◆ GLFW_KEY_KP_6
#define GLFW_KEY_KP_6 326 |
◆ GLFW_KEY_KP_7
#define GLFW_KEY_KP_7 327 |
◆ GLFW_KEY_KP_8
#define GLFW_KEY_KP_8 328 |
◆ GLFW_KEY_KP_9
#define GLFW_KEY_KP_9 329 |
◆ GLFW_KEY_KP_ADD
#define GLFW_KEY_KP_ADD 334 |
◆ GLFW_KEY_KP_DECIMAL
#define GLFW_KEY_KP_DECIMAL 330 |
◆ GLFW_KEY_KP_DIVIDE
#define GLFW_KEY_KP_DIVIDE 331 |
◆ GLFW_KEY_KP_ENTER
#define GLFW_KEY_KP_ENTER 335 |
◆ GLFW_KEY_KP_EQUAL
#define GLFW_KEY_KP_EQUAL 336 |
◆ GLFW_KEY_KP_MULTIPLY
#define GLFW_KEY_KP_MULTIPLY 332 |
◆ GLFW_KEY_KP_SUBTRACT
#define GLFW_KEY_KP_SUBTRACT 333 |
◆ GLFW_KEY_L
◆ GLFW_KEY_LAST
◆ GLFW_KEY_LEFT
#define GLFW_KEY_LEFT 263 |
◆ GLFW_KEY_LEFT_ALT
#define GLFW_KEY_LEFT_ALT 342 |
◆ GLFW_KEY_LEFT_BRACKET
#define GLFW_KEY_LEFT_BRACKET 91 /* [ */ |
◆ GLFW_KEY_LEFT_CONTROL
#define GLFW_KEY_LEFT_CONTROL 341 |
◆ GLFW_KEY_LEFT_SHIFT
#define GLFW_KEY_LEFT_SHIFT 340 |
◆ GLFW_KEY_LEFT_SUPER
#define GLFW_KEY_LEFT_SUPER 343 |
◆ GLFW_KEY_M
◆ GLFW_KEY_MENU
#define GLFW_KEY_MENU 348 |
◆ GLFW_KEY_MINUS
#define GLFW_KEY_MINUS 45 /* - */ |
◆ GLFW_KEY_N
◆ GLFW_KEY_NUM_LOCK
#define GLFW_KEY_NUM_LOCK 282 |
◆ GLFW_KEY_O
◆ GLFW_KEY_P
◆ GLFW_KEY_PAGE_DOWN
#define GLFW_KEY_PAGE_DOWN 267 |
◆ GLFW_KEY_PAGE_UP
#define GLFW_KEY_PAGE_UP 266 |
◆ GLFW_KEY_PAUSE
#define GLFW_KEY_PAUSE 284 |
◆ GLFW_KEY_PERIOD
#define GLFW_KEY_PERIOD 46 /* . */ |
◆ GLFW_KEY_PRINT_SCREEN
#define GLFW_KEY_PRINT_SCREEN 283 |
◆ GLFW_KEY_Q
◆ GLFW_KEY_R
◆ GLFW_KEY_RIGHT
#define GLFW_KEY_RIGHT 262 |
◆ GLFW_KEY_RIGHT_ALT
#define GLFW_KEY_RIGHT_ALT 346 |
◆ GLFW_KEY_RIGHT_BRACKET
#define GLFW_KEY_RIGHT_BRACKET 93 /* ] */ |
◆ GLFW_KEY_RIGHT_CONTROL
#define GLFW_KEY_RIGHT_CONTROL 345 |
◆ GLFW_KEY_RIGHT_SHIFT
#define GLFW_KEY_RIGHT_SHIFT 344 |
◆ GLFW_KEY_RIGHT_SUPER
#define GLFW_KEY_RIGHT_SUPER 347 |
◆ GLFW_KEY_S
◆ GLFW_KEY_SCROLL_LOCK
#define GLFW_KEY_SCROLL_LOCK 281 |
◆ GLFW_KEY_SEMICOLON
#define GLFW_KEY_SEMICOLON 59 /* ; */ |
◆ GLFW_KEY_SLASH
#define GLFW_KEY_SLASH 47 /* / */ |
◆ GLFW_KEY_SPACE
#define GLFW_KEY_SPACE 32 |
◆ GLFW_KEY_T
◆ GLFW_KEY_TAB
◆ GLFW_KEY_U
◆ GLFW_KEY_UNKNOWN
#define GLFW_KEY_UNKNOWN -1 |
◆ GLFW_KEY_UP
◆ GLFW_KEY_V
◆ GLFW_KEY_W
◆ GLFW_KEY_WORLD_1
#define GLFW_KEY_WORLD_1 161 /* non-US #1 */ |
◆ GLFW_KEY_WORLD_2
#define GLFW_KEY_WORLD_2 162 /* non-US #2 */ |
◆ GLFW_KEY_X
◆ GLFW_KEY_Y
◆ GLFW_KEY_Z