SDL_HINT_KEYCODE_OPTIONS - Man Page
A variable that controls keycode representation in keyboard events.
Synopsis
#include <SDL3/SDL_hints.h> #define SDL_HINT_KEYCODE_OPTIONS "SDL_KEYCODE_OPTIONS"
Description
This variable is a comma separated set of options for translating keycodes in events:
· "none": Keycode options are cleared, this overrides other options.
· "hide_numpad": The numpad keysyms will be translated into their non-numpad versions based on the current NumLock state. For example, SDLK_KP_4 would become SDLK_4 if SDL_KMOD_NUM is set in the event modifiers, and SDLK_LEFT if it is unset.
· "french_numbers": The number row on French keyboards is inverted, so pressing the 1 key would yield the keycode SDLK_1, or '1', instead of SDLK_AMPERSAND, or '&'
· "latin_letters": For keyboards using non-Latin letters, such as Russian or Thai, the letter keys generate keycodes as though it had an en_US layout. e.g. pressing the key associated with SDL_SCANCODE_A on a Russian keyboard would yield 'a' instead of a Cyrillic letter.
The default value for this hint is "french_numbers,latin_letters"
Some platforms like Emscripten only provide modified keycodes and the options are not used.
These options do not affect the return value of SDL_GetKeyFromScancode() or SDL_GetScancodeFromKey(), they just apply to the keycode included in key events.
This hint can be set anytime.
Availability
This hint is available since SDL 3.2.0.