Here are all the keys Jwno currently supports, and the actual key codes used in the code. See the Windows documentation for more details.

Note that Jwno currently only supports US keyboard layouts. On other layouts, the VK_OEM_* key codes may map to other characters.

To use a key in a key spec, write its name directly. All key names are case-insensitive. For example:

"Win + A"        # Use the `A` key
"Win + 1"        # Use the `1` key
"Win + ;"        # Use the VK_OEM_1 key (the `;:` key on US keyboards)
"Win + Numpad0"  # Use the VK_NUMPAD0 key

Modifier Keys

Name Key Code Description
Win Win key (left or right)
LWin VK_LWIN Win key (left)
RWin VK_RWIN Win key (right)
Alt Alt key (left or right)
LAlt VK_LMENU Alt key (left)
RAlt VK_RMENU Alt key (right)
Ctrl Ctrl key (left or right)
LCtrl VK_LCONTROL Ctrl key (left)
RCtrl VK_RCONTROL Ctrl key (right)
Shift Shift key (left or right)
LShift VK_LSHIFT Shift key (left)
RShift VK_RSHIFT Shift key (right)

Special Keys

Name Key Code Description
Backspace VK_BACK
Tab VK_TAB
Enter VK_RETURN
Pause VK_PAUSE
CapsLock VK_CAPITAL
Esc VK_ESCAPE
Space VK_SPACE
PageUp VK_PRIOR
PageDown VK_NEXT
End VK_END
Home VK_HOME
Left VK_LEFT Arrow key ←
Up VK_UP Arrow key ↑
Right VK_RIGHT Arrow key →
Down VK_DOWN Arrow key ↓
Insert VK_INSERT
Delete VK_DELETE
App VK_APPS Menu key
ScrollLock VK_SCROLL

Numpad Keys

Name Key Code Description
Numpad0 VK_NUMPAD0
Numpad1 VK_NUMPAD1
Numpad2 VK_NUMPAD2
Numpad3 VK_NUMPAD3
Numpad4 VK_NUMPAD4
Numpad5 VK_NUMPAD5
Numpad6 VK_NUMPAD6
Numpad7 VK_NUMPAD7
Numpad8 VK_NUMPAD8
Numpad9 VK_NUMPAD9
Numpad* VK_MULTIPLY
Numpad+ VK_ADD
Numpad- VK_SUBTRACT
Numpad. VK_DECIMAL
Numpad/ VK_DIVIDE

Alpha-Numeric Keys

Name Key Code Description
A 65
B 66
C 67
D 68
E 69
F 70
G 71
H 72
I 73
J 74
K 75
L 76
M 77
N 78
O 79
P 80
Q 81
R 82
S 83
T 84
U 85
V 86
W 87
X 88
Y 89
Z 90
0 48
1 49
2 50
3 51
4 52
5 53
6 54
7 55
8 56
9 57

Function Keys

Name Key Code Description
F1 VK_F1
F2 VK_F2
F3 VK_F3
F4 VK_F4
F5 VK_F5
F6 VK_F6
F7 VK_F7
F8 VK_F8
F9 VK_F9
F10 VK_F10
F11 VK_F11
F12 VK_F12
F13 VK_F13
F14 VK_F14
F15 VK_F15
F16 VK_F16
F17 VK_F17
F18 VK_F18
F19 VK_F19
F20 VK_F20
F21 VK_F21
F22 VK_F22
F23 VK_F23
F24 VK_F24

"OEM" Keys

Name Key Code Description
, VK_OEM_COMMA ,< key
. VK_OEM_PERIOD .> key
= VK_OEM_PLUS =+ key
; VK_OEM_1 ;: key
/ VK_OEM_2 /? key
` VK_OEM_3 `~ key
[ VK_OEM_4 [{ key
\ VK_OEM_5 \| key
] VK_OEM_6 ]} key
' VK_OEM_7 '" key