Module scancode
Available on crate feature
dep_sdl3
only.Expand description
Defines keyboard scancodes.
Please refer to the Best Keyboard Practices document for details on what this information means and how best to use it.
Structs§
- SDL_
Scancode - The SDL keyboard scancode representation.
Constants§
- SDL_
SCANCODE_ 0 - SDL_
SCANCODE_ 1 - SDL_
SCANCODE_ 2 - SDL_
SCANCODE_ 3 - SDL_
SCANCODE_ 4 - SDL_
SCANCODE_ 5 - SDL_
SCANCODE_ 6 - SDL_
SCANCODE_ 7 - SDL_
SCANCODE_ 8 - SDL_
SCANCODE_ 9 - SDL_
SCANCODE_ A - SDL_
SCANCODE_ AC_ BACK - AC Back
- SDL_
SCANCODE_ AC_ BOOKMARKS - AC Bookmarks
- SDL_
SCANCODE_ AC_ CLOSE - AC Close
- SDL_
SCANCODE_ AC_ EXIT - AC Exit
- SDL_
SCANCODE_ AC_ FORWARD - AC Forward
- SDL_
SCANCODE_ AC_ HOME - AC Home
- SDL_
SCANCODE_ AC_ NEW - AC New
- SDL_
SCANCODE_ AC_ OPEN - AC Open
- SDL_
SCANCODE_ AC_ PRINT - AC Print
- SDL_
SCANCODE_ AC_ PROPERTIES - AC Properties
- SDL_
SCANCODE_ AC_ REFRESH - AC Refresh
- SDL_
SCANCODE_ AC_ SAVE - AC Save
- SDL_
SCANCODE_ AC_ SEARCH - AC Search
- SDL_
SCANCODE_ AC_ STOP - AC Stop
- SDL_
SCANCODE_ AGAIN - AC Redo/Repeat
- SDL_
SCANCODE_ ALTERASE - Erase-Eaze
- SDL_
SCANCODE_ APOSTROPHE - SDL_
SCANCODE_ APPLICATION - windows contextual menu, compose
- SDL_
SCANCODE_ B - SDL_
SCANCODE_ BACKSLASH - Located at the lower left of the return key on ISO keyboards and at the right end of the QWERTY row on ANSI keyboards. Produces REVERSE SOLIDUS (backslash) and VERTICAL LINE in a US layout, REVERSE SOLIDUS and VERTICAL LINE in a UK Mac layout, NUMBER SIGN and TILDE in a UK Windows layout, DOLLAR SIGN and POUND SIGN in a Swiss German layout, NUMBER SIGN and APOSTROPHE in a German layout, GRAVE ACCENT and POUND SIGN in a French Mac layout, and ASTERISK and MICRO SIGN in a French Windows layout.
- SDL_
SCANCODE_ BACKSPACE - SDL_
SCANCODE_ C - SDL_
SCANCODE_ CALL - Used for accepting phone calls.
- SDL_
SCANCODE_ CANCEL - AC Cancel
- SDL_
SCANCODE_ CAPSLOCK - SDL_
SCANCODE_ CHANNEL_ DECREMENT - Channel Decrement
- SDL_
SCANCODE_ CHANNEL_ INCREMENT - Channel Increment
- SDL_
SCANCODE_ CLEAR - SDL_
SCANCODE_ CLEARAGAIN - SDL_
SCANCODE_ COMMA - SDL_
SCANCODE_ COPY - AC Copy
- SDL_
SCANCODE_ COUNT - not a key, just marks the number of scancodes for array bounds
- SDL_
SCANCODE_ CRSEL - SDL_
SCANCODE_ CURRENCYSUBUNIT - SDL_
SCANCODE_ CURRENCYUNIT - SDL_
SCANCODE_ CUT - AC Cut
- SDL_
SCANCODE_ D - SDL_
SCANCODE_ DECIMALSEPARATOR - SDL_
SCANCODE_ DELETE - SDL_
SCANCODE_ DOWN - SDL_
SCANCODE_ E - SDL_
SCANCODE_ END - SDL_
SCANCODE_ ENDCALL - Used for rejecting phone calls.
- SDL_
SCANCODE_ EQUALS - SDL_
SCANCODE_ ESCAPE - SDL_
SCANCODE_ EXECUTE - SDL_
SCANCODE_ EXSEL - SDL_
SCANCODE_ F - SDL_
SCANCODE_ F1 - SDL_
SCANCODE_ F2 - SDL_
SCANCODE_ F3 - SDL_
SCANCODE_ F4 - SDL_
SCANCODE_ F5 - SDL_
SCANCODE_ F6 - SDL_
SCANCODE_ F7 - SDL_
SCANCODE_ F8 - SDL_
SCANCODE_ F9 - SDL_
SCANCODE_ F10 - SDL_
SCANCODE_ F11 - SDL_
SCANCODE_ F12 - SDL_
SCANCODE_ F13 - SDL_
SCANCODE_ F14 - SDL_
SCANCODE_ F15 - SDL_
SCANCODE_ F16 - SDL_
SCANCODE_ F17 - SDL_
SCANCODE_ F18 - SDL_
SCANCODE_ F19 - SDL_
SCANCODE_ F20 - SDL_
SCANCODE_ F21 - SDL_
SCANCODE_ F22 - SDL_
SCANCODE_ F23 - SDL_
SCANCODE_ F24 - SDL_
SCANCODE_ FIND - AC Find
- SDL_
SCANCODE_ G - SDL_
SCANCODE_ GRAVE - Located in the top left corner (on both ANSI and ISO keyboards). Produces GRAVE ACCENT and TILDE in a US Windows layout and in US and UK Mac layouts on ANSI keyboards, GRAVE ACCENT and NOT SIGN in a UK Windows layout, SECTION SIGN and PLUS-MINUS SIGN in US and UK Mac layouts on ISO keyboards, SECTION SIGN and DEGREE SIGN in a Swiss German layout (Mac: only on ISO keyboards), CIRCUMFLEX ACCENT and DEGREE SIGN in a German layout (Mac: only on ISO keyboards), SUPERSCRIPT TWO and TILDE in a French Windows layout, COMMERCIAL AT and NUMBER SIGN in a French Mac layout on ISO keyboards, and LESS-THAN SIGN and GREATER-THAN SIGN in a Swiss German, German, or French Mac layout on ANSI keyboards.
- SDL_
SCANCODE_ H - SDL_
SCANCODE_ HELP - AL Integrated Help Center
- SDL_
SCANCODE_ HOME - SDL_
SCANCODE_ I - SDL_
SCANCODE_ INSERT - insert on PC, help on some Mac keyboards (but does send code 73, not 117)
- SDL_
SCANCODE_ INTERNATIONA L1 - used on Asian keyboards, see footnotes in USB doc
- SDL_
SCANCODE_ INTERNATIONA L2 - SDL_
SCANCODE_ INTERNATIONA L3 - Yen
- SDL_
SCANCODE_ INTERNATIONA L4 - SDL_
SCANCODE_ INTERNATIONA L5 - SDL_
SCANCODE_ INTERNATIONA L6 - SDL_
SCANCODE_ INTERNATIONA L7 - SDL_
SCANCODE_ INTERNATIONA L8 - SDL_
SCANCODE_ INTERNATIONA L9 - SDL_
SCANCODE_ J - SDL_
SCANCODE_ K - SDL_
SCANCODE_ KP_ 0 - SDL_
SCANCODE_ KP_ 00 - SDL_
SCANCODE_ KP_ 000 - SDL_
SCANCODE_ KP_ 1 - SDL_
SCANCODE_ KP_ 2 - SDL_
SCANCODE_ KP_ 3 - SDL_
SCANCODE_ KP_ 4 - SDL_
SCANCODE_ KP_ 5 - SDL_
SCANCODE_ KP_ 6 - SDL_
SCANCODE_ KP_ 7 - SDL_
SCANCODE_ KP_ 8 - SDL_
SCANCODE_ KP_ 9 - SDL_
SCANCODE_ KP_ A - SDL_
SCANCODE_ KP_ AMPERSAND - SDL_
SCANCODE_ KP_ AT - SDL_
SCANCODE_ KP_ B - SDL_
SCANCODE_ KP_ BACKSPACE - SDL_
SCANCODE_ KP_ BINARY - SDL_
SCANCODE_ KP_ C - SDL_
SCANCODE_ KP_ CLEAR - SDL_
SCANCODE_ KP_ CLEARENTRY - SDL_
SCANCODE_ KP_ COLON - SDL_
SCANCODE_ KP_ COMMA - SDL_
SCANCODE_ KP_ D - SDL_
SCANCODE_ KP_ DBLAMPERSAND - SDL_
SCANCODE_ KP_ DBLVERTICALBAR - SDL_
SCANCODE_ KP_ DECIMAL - SDL_
SCANCODE_ KP_ DIVIDE - SDL_
SCANCODE_ KP_ E - SDL_
SCANCODE_ KP_ ENTER - SDL_
SCANCODE_ KP_ EQUALS - SDL_
SCANCODE_ KP_ EQUALSA S400 - SDL_
SCANCODE_ KP_ EXCLAM - SDL_
SCANCODE_ KP_ F - SDL_
SCANCODE_ KP_ GREATER - SDL_
SCANCODE_ KP_ HASH - SDL_
SCANCODE_ KP_ HEXADECIMAL - SDL_
SCANCODE_ KP_ LEFTBRACE - SDL_
SCANCODE_ KP_ LEFTPAREN - SDL_
SCANCODE_ KP_ LESS - SDL_
SCANCODE_ KP_ MEMADD - SDL_
SCANCODE_ KP_ MEMCLEAR - SDL_
SCANCODE_ KP_ MEMDIVIDE - SDL_
SCANCODE_ KP_ MEMMULTIPLY - SDL_
SCANCODE_ KP_ MEMRECALL - SDL_
SCANCODE_ KP_ MEMSTORE - SDL_
SCANCODE_ KP_ MEMSUBTRACT - SDL_
SCANCODE_ KP_ MINUS - SDL_
SCANCODE_ KP_ MULTIPLY - SDL_
SCANCODE_ KP_ OCTAL - SDL_
SCANCODE_ KP_ PERCENT - SDL_
SCANCODE_ KP_ PERIOD - SDL_
SCANCODE_ KP_ PLUS - SDL_
SCANCODE_ KP_ PLUSMINUS - SDL_
SCANCODE_ KP_ POWER - SDL_
SCANCODE_ KP_ RIGHTBRACE - SDL_
SCANCODE_ KP_ RIGHTPAREN - SDL_
SCANCODE_ KP_ SPACE - SDL_
SCANCODE_ KP_ TAB - SDL_
SCANCODE_ KP_ VERTICALBAR - SDL_
SCANCODE_ KP_ XOR - SDL_
SCANCODE_ L - SDL_
SCANCODE_ LALT - alt, option
- SDL_
SCANCODE_ LANG1 - Hangul/English toggle
- SDL_
SCANCODE_ LANG2 - Hanja conversion
- SDL_
SCANCODE_ LANG3 - Katakana
- SDL_
SCANCODE_ LANG4 - Hiragana
- SDL_
SCANCODE_ LANG5 - Zenkaku/Hankaku
- SDL_
SCANCODE_ LANG6 - reserved
- SDL_
SCANCODE_ LANG7 - reserved
- SDL_
SCANCODE_ LANG8 - reserved
- SDL_
SCANCODE_ LANG9 - reserved
- SDL_
SCANCODE_ LCTRL - SDL_
SCANCODE_ LEFT - SDL_
SCANCODE_ LEFTBRACKET - SDL_
SCANCODE_ LGUI - windows, command (apple), meta
- SDL_
SCANCODE_ LSHIFT - SDL_
SCANCODE_ M - SDL_
SCANCODE_ MEDIA_ EJECT - Eject
- SDL_
SCANCODE_ MEDIA_ FAST_ FORWARD - Fast Forward
- SDL_
SCANCODE_ MEDIA_ NEXT_ TRACK - Next Track
- SDL_
SCANCODE_ MEDIA_ PAUSE - Pause
- SDL_
SCANCODE_ MEDIA_ PLAY - Play
- SDL_
SCANCODE_ MEDIA_ PLAY_ PAUSE - Play / Pause
- SDL_
SCANCODE_ MEDIA_ PREVIOUS_ TRACK - Previous Track
- SDL_
SCANCODE_ MEDIA_ RECORD - Record
- SDL_
SCANCODE_ MEDIA_ REWIND - Rewind
- SDL_
SCANCODE_ MEDIA_ SELECT - SDL_
SCANCODE_ MEDIA_ STOP - Stop
- SDL_
SCANCODE_ MENU - Menu (show menu)
- SDL_
SCANCODE_ MINUS - SDL_
SCANCODE_ MODE - I’m not sure if this is really not covered
by any of the above, but since there’s a
special [
SDL_KMOD_MODE
] for it I’m adding it here - SDL_
SCANCODE_ MUTE - SDL_
SCANCODE_ N - SDL_
SCANCODE_ NONUSBACKSLASH - This is the additional key that ISO keyboards have over ANSI ones, located between left shift and Y. Produces GRAVE ACCENT and TILDE in a US or UK Mac layout, REVERSE SOLIDUS (backslash) and VERTICAL LINE in a US or UK Windows layout, and LESS-THAN SIGN and GREATER-THAN SIGN in a Swiss German, German, or French layout.
- SDL_
SCANCODE_ NONUSHASH - ISO USB keyboards actually use this code
instead of 49 for the same key, but all
OSes I’ve seen treat the two codes
identically. So, as an implementor, unless
your keyboard generates both of those
codes and your OS treats them differently,
you should generate
SDL_SCANCODE_BACKSLASH
instead of this code. As a user, you should not rely on this code because SDL will never generate it with most (all?) keyboards. - SDL_
SCANCODE_ NUMLOCKCLEAR - num lock on PC, clear on Mac keyboards
- SDL_
SCANCODE_ O - SDL_
SCANCODE_ OPER - SDL_
SCANCODE_ OUT - SDL_
SCANCODE_ P - SDL_
SCANCODE_ PAGEDOWN - SDL_
SCANCODE_ PAGEUP - SDL_
SCANCODE_ PASTE - AC Paste
- SDL_
SCANCODE_ PAUSE - SDL_
SCANCODE_ PERIOD - SDL_
SCANCODE_ POWER - The USB document says this is a status flag, not a physical key - but some Mac keyboards do have a power key.
- SDL_
SCANCODE_ PRINTSCREEN - SDL_
SCANCODE_ PRIOR - SDL_
SCANCODE_ Q - SDL_
SCANCODE_ R - SDL_
SCANCODE_ RALT - alt gr, option
- SDL_
SCANCODE_ RCTRL - SDL_
SCANCODE_ RESERVED - 400-500 reserved for dynamic keycodes
- SDL_
SCANCODE_ RETURN - SDL_
SCANCODE_ RETUR N2 - SDL_
SCANCODE_ RGUI - windows, command (apple), meta
- SDL_
SCANCODE_ RIGHT - SDL_
SCANCODE_ RIGHTBRACKET - SDL_
SCANCODE_ RSHIFT - SDL_
SCANCODE_ S - SDL_
SCANCODE_ SCROLLLOCK - SDL_
SCANCODE_ SELECT - SDL_
SCANCODE_ SEMICOLON - SDL_
SCANCODE_ SEPARATOR - SDL_
SCANCODE_ SLASH - SDL_
SCANCODE_ SLEEP - Sleep
- SDL_
SCANCODE_ SOFTLEFT - Usually situated below the display on phones and used as a multi-function feature key for selecting a software defined function shown on the bottom left of the display.
- SDL_
SCANCODE_ SOFTRIGHT - Usually situated below the display on phones and used as a multi-function feature key for selecting a software defined function shown on the bottom right of the display.
- SDL_
SCANCODE_ SPACE - SDL_
SCANCODE_ STOP - AC Stop
- SDL_
SCANCODE_ SYSREQ - SDL_
SCANCODE_ T - SDL_
SCANCODE_ TAB - SDL_
SCANCODE_ THOUSANDSSEPARATOR - SDL_
SCANCODE_ U - SDL_
SCANCODE_ UNDO - AC Undo
- SDL_
SCANCODE_ UNKNOWN - SDL_
SCANCODE_ UP - SDL_
SCANCODE_ V - SDL_
SCANCODE_ VOLUMEDOWN - SDL_
SCANCODE_ VOLUMEUP - SDL_
SCANCODE_ W - SDL_
SCANCODE_ WAKE - Wake
- SDL_
SCANCODE_ X - SDL_
SCANCODE_ Y - SDL_
SCANCODE_ Z