Scancode

bearlyb.scancode.Scancode$package.Scancode
object Scancode

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Scancode.type

Members list

Type members

Classlikes

object Dyn

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Dyn.type

Types

opaque type Dyn

< Used for rejecting phone calls.

< Used for rejecting phone calls.

Attributes

Value members

Concrete fields

val A: Scancode

< AC Back

< AC Back

Attributes

< AC Bookmarks

< AC Bookmarks

Attributes

< AC Close

< AC Close

Attributes

< AC Exit

< AC Exit

Attributes

< AC Forward

< AC Forward

Attributes

< AC Home

< AC Home

Attributes

< AC New

< AC New

Attributes

< AC Open

< AC Open

Attributes

< AC Print

< AC Print

Attributes

< AC Properties

< AC Properties

Attributes

< AC Refresh

< AC Refresh

Attributes

< AC Save

< AC Save

Attributes

< AC Search

< AC Search

Attributes

< AC Stop

< AC Stop

Attributes

< AC Stop

< AC Stop

Attributes

< reserved

< reserved

Attributes

val B: Scancode
val C: Scancode
val Call: Scancode

< Channel Decrement

< Channel Decrement

Attributes

< Channel Increment

< Channel Increment

Attributes

< AC Cancel

< AC Cancel

Attributes

val Copy: Scancode

< AC Cut

< AC Cut

Attributes

val Cut: Scancode

< AC Undo

< AC Undo

Attributes

val D: Scancode
val Down: Scancode
val E: Scancode
val End: Scancode

< Used for accepting phone calls.

< Used for accepting phone calls.

Attributes

val F: Scancode
val F1: Scancode
val F10: Scancode
val F11: Scancode
val F12: Scancode
val F13: Scancode
val F14: Scancode
val F15: Scancode
val F16: Scancode
val F17: Scancode
val F18: Scancode
val F19: Scancode
val F2: Scancode
val F20: Scancode
val F21: Scancode
val F22: Scancode
val F23: Scancode
val F24: Scancode
val F3: Scancode
val F4: Scancode
val F5: Scancode
val F6: Scancode
val F7: Scancode
val F8: Scancode
val F9: Scancode
val Find: Scancode

< AC Paste

< AC Paste

Attributes

val G: Scancode

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.

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.

Attributes

val H: Scancode
val Help: Scancode
val Home: Scancode
val I: Scancode

insert on PC, help on some Mac keyboards (but does send code 73, not 117)

insert on PC, help on some Mac keyboards (but does send code 73, not 117)

Attributes

< used on Asian keyboards, see footnotes in USB doc

< used on Asian keyboards, see footnotes in USB doc

Attributes

< Yen

< Yen

Attributes

val J: Scancode
val K: Scancode
val K0: Scancode
val K1: Scancode
val K2: Scancode
val K3: Scancode
val K4: Scancode
val K5: Scancode
val K6: Scancode
val K7: Scancode
val K8: Scancode
val K9: Scancode
val Kp0: Scancode
val Kp00: Scancode
val Kp1: Scancode
val Kp2: Scancode
val Kp3: Scancode
val Kp4: Scancode
val Kp5: Scancode
val Kp6: Scancode
val Kp7: Scancode
val Kp8: Scancode
val Kp9: Scancode
val KpA: Scancode
val KpAt: Scancode
val KpB: Scancode
val KpC: Scancode
val KpD: Scancode

< num lock on PC, clear on Mac keyboards

< num lock on PC, clear on Mac keyboards

Attributes

val KpE: Scancode

< The USB document says this is a status flag, not a physical key - but some Mac keyboards do have a power key.

< The USB document says this is a status flag, not a physical key - but some Mac keyboards do have a power key.

Attributes

val KpF: Scancode
val L: Scancode
val LAlt: Scancode

< alt, option

< alt, option

Attributes

val LGUI: Scancode

< windows, command (apple), meta

< windows, command (apple), meta

Attributes

< Hangul/English toggle

< Hangul/English toggle

Attributes

< Hanja conversion

< Hanja conversion

Attributes

< Katakana

< Katakana

Attributes

< Hiragana

< Hiragana

Attributes

< Zenkaku/Hankaku

< Zenkaku/Hankaku

Attributes

< reserved

< reserved

Attributes

< reserved

< reserved

Attributes

< reserved

< reserved

Attributes

val Left: Scancode
val M: Scancode

< Eject

< Eject

Attributes

< Fast Forward

< Fast Forward

Attributes

< Next Track

< Next Track

Attributes

< Pause

< Pause

Attributes

< Play

< Play

Attributes

< Play / Pause

< Play / Pause

Attributes

< Previous Track

< Previous Track

Attributes

< Record

< Record

Attributes

< Rewind

< Rewind

Attributes

< Stop

< Stop

Attributes

val Mode: Scancode

< 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

< 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

Attributes

val Mute: Scancode

< AC Find

< AC Find

Attributes

val N: Scancode

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.

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.

Attributes

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 case BACKSLASH extends Scancode(instead)of this code. As a user, you should not rely on this code because SDL will never generate it with most (all?) keyboards.

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 case BACKSLASH extends Scancode(instead)of this code. As a user, you should not rely on this code because SDL will never generate it with most (all?) keyboards.

Attributes

val O: Scancode
val Oper: Scancode
val Out: Scancode
val P: Scancode

< AC Copy

< AC Copy

Attributes

< windows contextual menu, compose

< windows contextual menu, compose

Attributes

val Q: Scancode
val R: Scancode
val RGUI: Scancode

< windows, command (apple), meta

< windows, command (apple), meta

Attributes

val Ralt: Scancode

< alt gr, option

< alt gr, option

Attributes

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.

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.

Attributes

val S: Scancode

< Menu (show menu)

< Menu (show menu)

Attributes

< Sleep

< Sleep

Attributes

< 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.

< 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.

Attributes

< 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.

< 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.

Attributes

val Stop: Scancode

< Erase-Eaze

< Erase-Eaze

Attributes

val T: Scancode
val Tab: Scancode
val U: Scancode
val Undo: Scancode

< AC Redo/Repeat

< AC Redo/Repeat

Attributes

val Up: Scancode
val V: Scancode
val W: Scancode
val Wake: Scancode

< Wake

< Wake

Attributes

val X: Scancode
val Y: Scancode
val Z: Scancode