From 08a57fd7261c930ba43b77b21d1e005b2b298d27 Mon Sep 17 00:00:00 2001
From: Gary Kacmarcik On some keyboards (notably Japanese and Korean) the spacebar is reduced in size to make room
@@ -602,36 +602,31 @@ On Apple keyboards, some keys on the bottom row are omitted and others are arranged in
@@ -652,22 +647,22 @@ Note: The Writing System Keys
@@ -559,34 +559,34 @@
+ Code Value USB Usage ID
Page 0x07
(Informative)Notes (Informative) Code Value Notes (Informative)
+
- 'Backquote'
0x35 `
and ~
on a US keyboard. This is the 半角/全角/漢字
(hankaku/zenkaku/kanji) key on Japanese keyboards`
and ~
on a US keyboard. This is the 半角/全角/漢字
(hankaku/zenkaku/kanji) key on Japanese keyboards
+
- 'Backslash'
0x31 \
and |
on a US keyboard. Found only on standard 101-key layouts.\
and |
on a US keyboard. Found only on standard 101-key layouts.
+
- 'Backspace'
0x2a Labelled Delete
on Macintosh keyboards.Labelled
Delete
on Macintosh keyboards.
+
- 'BracketLeft'
0x2f [
and {
on a US keyboard.[
and {
on a US keyboard.
+
- 'BracketRight'
0x30 ]
and }
on a US keyboard.]
and }
on a US keyboard.
+
- 'Comma'
0x36 ,
and <
on a US keyboard.,
and <
on a US keyboard.
+
- 'Digit0'
0x27 0
and )
on a US keyboard.0
and )
on a US keyboard.
+
- 'Digit1'
0x1e 1
and !
on a US keyboard.1
and !
on a US keyboard.
+
- 'Digit2'
0x1f 2
and @
on a US keyboard.2
and @
on a US keyboard.
+
- 'Digit3'
0x20 3
and #
on a US keyboard.3
and #
on a US keyboard.
+
- 'Digit4'
0x21 4
and $
on a US keyboard.4
and $
on a US keyboard.
+
- 'Digit5'
0x22 5
and %
on a US keyboard.5
and %
on a US keyboard.
+
- 'Digit6'
0x23 6
and ^
on a US keyboard.6
and ^
on a US keyboard.
+
- 'Digit7'
0x24 7
and &
on a US keyboard.7
and &
on a US keyboard.
+
- 'Digit8'
0x25 8
and *
on a US keyboard.8
and *
on a US keyboard.
+
- 'Digit9'
0x26 9
and (
on a US keyboard.9
and (
on a US keyboard.
+
- 'Equal'
0x2e =
and +
on a US keyboard.=
and +
on a US keyboard.
+
- 'IntlBackslash'
0x64 Located between the 'ShiftLeft'
and 'KeyZ'
keys. The \
and |
key on a UK keyboard.Located between the
'ShiftLeft'
and 'KeyZ'
keys. The \
and |
key on a UK keyboard.
+
- 'IntlHash'
0x32 Located between the 'Quote'
and 'Enter'
keys on row E of the keyboard. The #
and ~
key on a UK keyboard.Located between the
'Quote'
and 'Enter'
keys on row E of the keyboard. The #
and ~
key on a UK keyboard.
+
- 'IntlRo'
0x87 Located between the 'Slash'
and 'ShiftRight'
keys. The \
and ろ
(ro) key on a Japanese keyboard.Located between the
'Slash'
and 'ShiftRight'
keys. The \
and ろ
(ro) key on a Japanese keyboard.
+
- 'IntlYen'
0x89 Located between the 'Equal'
and 'Backspace'
keys. The ¥
(yen) key on a Japanese keyboard. The \
and /
key on a Russian keyboard.Located between the
'Equal'
and 'Backspace'
keys. The ¥
(yen) key on a Japanese keyboard. The \
and /
key on a Russian keyboard.
+
- 'KeyA'
0x04 a
on a US keyboard. Labelled q
on an AZERTY (e.g., French) keyboard.a
on a US keyboard. Labelled q
on an AZERTY (e.g., French) keyboard.
+
- 'KeyB'
0x05 b
on a US keyboard.b
on a US keyboard.
+
- 'KeyC'
0x06 c
on a US keyboard.c
on a US keyboard.
+
- 'KeyD'
0x07 d
on a US keyboard.d
on a US keyboard.
+
- 'KeyE'
0x08 e
on a US keyboard.e
on a US keyboard.
+
- 'KeyF'
0x09 f
on a US keyboard.f
on a US keyboard.
+
- 'KeyG'
0x0a g
on a US keyboard.g
on a US keyboard.
+
- 'KeyH'
0x0b h
on a US keyboard.h
on a US keyboard.
+
- 'KeyI'
0x0c i
on a US keyboard.i
on a US keyboard.
+
- 'KeyJ'
0x0d j
on a US keyboard.j
on a US keyboard.
+
- 'KeyK'
0x0e k
on a US keyboard.k
on a US keyboard.
+
- 'KeyL'
0x0f l
on a US keyboard.l
on a US keyboard.
+
- 'KeyM'
0x10 m
on a US keyboard.m
on a US keyboard.
+
- 'KeyN'
0x11 n
on a US keyboard.n
on a US keyboard.
+
- 'KeyO'
0x12 o
on a US keyboard.o
on a US keyboard.
+
- 'KeyP'
0x13 p
on a US keyboard.p
on a US keyboard.
+
- 'KeyQ'
0x14 q
on a US keyboard. Labelled a
on an AZERTY (e.g., French) keyboard.q
on a US keyboard. Labelled a
on an AZERTY (e.g., French) keyboard.
+
- 'KeyR'
0x15 r
on a US keyboard.r
on a US keyboard.
+
- 'KeyS'
0x16 s
on a US keyboard.s
on a US keyboard.
+
- 'KeyT'
0x17 t
on a US keyboard.t
on a US keyboard.
+
- 'KeyU'
0x18 u
on a US keyboard.u
on a US keyboard.
+
- 'KeyV'
0x19 v
on a US keyboard.v
on a US keyboard.
+
- 'KeyW'
0x1a w
on a US keyboard. Labelled z
on an AZERTY (e.g., French) keyboard.w
on a US keyboard. Labelled z
on an AZERTY (e.g., French) keyboard.
+
- 'KeyX'
0x1b x
on a US keyboard.x
on a US keyboard.
+
- 'KeyY'
0x1c y
on a US keyboard. Labelled z
on a QWERTZ (e.g., German) keyboard.y
on a US keyboard. Labelled z
on a QWERTZ (e.g., German) keyboard.
+
- 'KeyZ'
0x1d z
on a US keyboard. Labelled w
on an AZERTY (e.g., French) keyboard, and y
on a QWERTZ (e.g., German) keyboard.z
on a US keyboard. Labelled w
on an AZERTY (e.g., French) keyboard, and y
on a QWERTZ (e.g., German) keyboard.
+
- 'Minus'
0x2d -
and _
on a US keyboard.-
and _
on a US keyboard.
+
- 'Period'
0x37 .
and >
on a US keyboard..
and >
on a US keyboard.
+
- 'Quote'
0x34 '
and "
on a US keyboard.'
and "
on a US keyboard.
+
- 'Semicolon'
0x33 ;
and :
on a US keyboard.;
and :
on a US keyboard.
+
- 'Slash'
0x38 /
and ?
on a US keyboard./
and ?
on a US keyboard.Functional Keys
+ Code Value USB Usage ID
Page 0x07
(Informative)Notes (Informative) Code Value Notes (Informative)
+
- 'AltLeft'
0xe2 Labelled Alt
or Option
.Labelled
Alt
or Option
.
+
- 'AltRight'
0xe6 Labelled Alt
or Option
. This is the AltGr
key on many keyboard layouts.Labelled
Alt
or Option
. This is the AltGr
key on many keyboard layouts.
+
- 'CapsLock'
0x39
+
- 'ContextMenu'
0x65 The application context menu key, which is typically found between the right OS key and the right Control key. The application context menu key, which is typically found between the right OS key and the right Control key.
+
- 'ControlLeft'
0xe0
+
- 'ControlRight'
0xe4
+
- 'Enter'
0x28 Labelled Enter
and Return
on Macintosh keyboards.Labelled
Enter
and Return
on Macintosh keyboards.
+
- 'OSLeft'
0xe3 The Windows, ⌘
, Command
or other OS symbol key.The Windows,
⌘
, Command
or other OS symbol key.
+
- 'OSRight'
0xe7 The Windows, ⌘
, Command
or other OS symbol key.The Windows,
⌘
, Command
or other OS symbol key.
+
- 'ShiftLeft'
0xe1
+
- 'ShiftRight'
0xe5
+
- 'Space'
0x2c The
key.The
key.
+
- 'Tab'
0x2b
Functional Keys
+ Code Value USB Usage ID
Page 0x07
(Informative)Notes (Informative) Code Value Notes (Informative)
+
- 'Convert'
0x8a Japanese: 変換
(henkan)Japanese:
変換
(henkan)
+
- 'KanaMode'
0x88 Japanese: カタカナ/ひらがな/ローマ字
(katakana/hiragana/romaji)Japanese:
カタカナ/ひらがな/ローマ字
(katakana/hiragana/romaji)
- 'Lang1'
0x90
Korean: 한/영
(han/yeong)
Japanese (Mac keyboard): かな
(kana)
- 'Lang2'
0x91
Korean: 한자
(hanja)
Japanese (Mac keyboard): 英数
(eisu)
- 'Lang3'
0x92
Japanese (word-processing keyboard): Katakana
- 'Lang4'
0x93
Japanese (word-processing keyboard): Hiragana
- 'Lang5'
0x94
Japanese (word-processing keyboard): Zenkaku/Hankaku
+
- 'NonConvert'
0x8b Japanese: 無変換
(muhenkan)Japanese:
無変換
(muhenkan)Control Pad Section
+ Code Value USB Usage ID
Page 0x07
(Informative)Notes (Informative) Code Value Notes (Informative)
+
- 'Delete'
0x4c
+
- 'End'
0x4d
+
- 'Help'
0x75 Not present on standard PC keyboards. Not present on standard PC keyboards.
+
- 'Home'
0x4a
+
- 'Insert'
0x49 Not present on Apple keyboards. Not present on Apple keyboards.
+
- 'PageDown'
0x4e
+
- 'PageUp'
0x4b
code
for the 'Fn'
key (found on
@@ -687,16 +682,16 @@ Arrow Pad Section
@@ -719,96 +714,96 @@
+ Code Value USB Usage ID
Page 0x07
(Informative)Notes (Informative) Code Value Notes (Informative)
+
- 'ArrowDown'
0x51
+
- 'ArrowLeft'
0x50
+
- 'ArrowRight'
0x4f
+
- 'ArrowUp'
0x52
Numpad Section
Code Value | USB Usage ID Page 0x07 (Informative) | Notes (Informative) | |
---|---|---|---|
Code Value | Notes (Informative) | ||
'NumLock' |
- 0x53 | On the Mac, the 'NumLock' code should be used for the numpad 'Clear' key. | On the Mac, the 'NumLock' code should be used for the numpad 'Clear' key. |
'Numpad0' |
- 0x62 | + |
0 /Insert on a keyboard0 on a phone or remote control
|
'Numpad1' |
- 0x59 | + |
1 /End on a keyboard1 or 1 /QZ on a phone or remote control
|
'Numpad2' |
- 0x5a | + |
2 /ArrowDown on a keyboard2 /ABC on a phone or remote control
|
'Numpad3' |
- 0x5b | + |
3 /PageDown on a keyboard3 /DEF on a phone or remote control
|
'Numpad4' |
- 0x5c | + |
4 /ArrowLeft on a keyboard4 /GHI on a phone or remote control
|
'Numpad5' |
- 0x5d | + |
5 on a keyboard5 /JKL on a phone or remote control
|
'Numpad6' |
- 0x5e | + |
6 /ArrowRight on a keyboard6 /MNO on a phone or remote control
|
'Numpad7' |
- 0x5f | + |
7 /Home on a keyboard7 /PQRS or 7 /PRS on a phone or remote control
|
'Numpad8' |
- 0x60 | + |
8 /ArrowUp on a keyboard8 /TUV on a phone or remote control
|
'Numpad9' |
- 0x61 | + |
9 /PageUp on a keyboard9 /WXYZ or 9 /WXY on a phone or remote control
|
'NumpadAdd' |
- 0x57 | + | + |
'NumpadBackspace' |
- 0xbb | Found on the Microsoft Natural Keyboard. | Found on the Microsoft Natural Keyboard. |
'NumpadClear' |
- 0xd8 | For use with numpads that have a 'Clear' key that is separate from the 'NumLock' key.
+ | For use with numpads that have a 'Clear' key that is separate from the 'NumLock' key.
On the Mac, the numpad 'Clear' key should always be encoded as 'NumLock' . |
'NumpadClearEntry' |
- 0xd9 | ||
'NumpadComma' |
- 0x85 | , (thousands separator). For locales where the thousands separator is a '.' (e.g., Brazil), this key may generate a '.' . | , (thousands separator). For locales where the thousands separator is a '.' (e.g., Brazil), this key may generate a '.' . |
'NumpadDecimal' |
- 0x63 | . (decimal separator) and Delete . For locales where the decimal separator is ',' (e.g., Brazil), this key may generate a ',' . | . (decimal separator) and Delete . For locales where the decimal separator is ',' (e.g., Brazil), this key may generate a ',' . |
'NumpadDivide' |
- 0x54 | / | / |
'NumpadEnter' |
- 0x58 | ||
'NumpadEqual' |
- 0x67 | = | = |
'NumpadHash' |
- + |
# on a phone or remote control device.
This key is typically found below the 9 key and to the right of the 0 key.
| |
'NumpadMemoryAdd' |
- 0xd3 | ||
'NumpadMemoryClear' |
- 0xd2 | ||
'NumpadMemoryRecall' |
- 0xd1 | ||
'NumpadMemoryStore' |
- 0xd0 | ||
'NumpadMemorySubtract' |
- 0xd4 | ||
'NumpadMultiply' |
- 0x55 | + |
* on a keyboard. For use with numpads that provide mathematical operations
(+ , - , * and / ).
@@ -816,18 +811,18 @@ Numpad Sectionremote controls. |
'NumpadParenLeft' |
- 0xb6 | ( Found on the Microsoft Natural Keyboard. | ( Found on the Microsoft Natural Keyboard. |
'NumpadParenRight' |
- 0xb7 | ) Found on the Microsoft Natural Keyboard. | ) Found on the Microsoft Natural Keyboard. |
'NumpadStar' |
- + |
* on a phone or remote control device.
This key is typically found below the 7 key and to the left of the 0 key.
See 'NumpadMultiply' for the * key on numeric keypads.
| |
'NumpadSubtract' |
- 0x56 | - | - |
For Numpads that provide keys not listed here, a code
value string should be created by
@@ -851,44 +846,44 @@
Code Value | USB Usage ID Page 0x07 (Informative) | Notes (Informative) |
---|---|---|
Code Value | Notes (Informative) | |
'Escape' |
- 0x29 | |
'F1' |
- 0x3a | |
'F2' |
- 0x3b | |
'F3' |
- 0x3c | |
'F4' |
- 0x3d | |
'F5' |
- 0x3e | |
'F6' |
- 0x3f | |
'F7' |
- 0x40 | |
'F8' |
- 0x41 | |
'F9' |
- 0x42 | |
'F10' |
- 0x43 | |
'F11' |
- 0x44 | |
'F12' |
- 0x45 | |
'Fn' |
- This is typically a hardware key that does not generate a separate code. Most keyboards do not place this key in the Function section, but it is included here to keep with related keys. | This is typically a hardware key that does not generate a separate code. Most keyboards do not place this key in the Function section, but it is included here to keep with related keys. |
'FnLock' |
- Found on the Microsoft Natural Keyboard. | Found on the Microsoft Natural Keyboard. |
'PrintScreen' |
- 0x46 | PrintScreen and SysReq | PrintScreen and SysReq |
'ScrollLock' |
- 0x47 | |
'Pause' |
- 0x48 | Pause and Break | Pause and Break |
For keyboards that provide more than 12 function keys, the code
value follows the pattern