Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Minecraft:Key codes: Difference between revisions

From SAS Gaming Wiki
SyncBot (talk | contribs)
Sync: updated from Minecraft
SyncBot (talk | contribs)
Sync: updated from Minecraft
Line 1: Line 1:
{{for|other uses|Key}}
{{for|other uses|Key}}
{{wip}}
{{missing information|Bedrock Edition keycodes for both keyboard and controller}}
{{missing information|Bedrock Edition keycodes for both keyboard and controller}}
{{split|Key codes/Before 1.13|reason=probably would make more sense to document historical stuff on a dedicated page so it isn't mistaken for present-day information. alternatively, it could go on the Flattening's page since it too is a series of changed IDs}}
This is a list of '''key codes''' used by ''[[Minecraft:Minecraft]]'', which are used in configuration files such as the options.txt file in the [[Minecraft:.minecraft|Minecraft directory]].{{info needed|and where else? if that's the only place, remove "such as"}}
This is a list of '''key codes''' used by ''[[Minecraft:Minecraft]]'', which are used in configuration files such as the options.txt file in the [[Minecraft:.minecraft|Minecraft directory]].{{info needed|and where else?}}


== ''Java Edition'' ==
== ''Java Edition'' ==
=== Current ===
{{For|the codes used prior to [[Minecraft:the Flattening]]|Java Edition pre-flattening data values#Key codes}}
{{Needs update|26.3 snapshot 4 SDL3 adoption - some, but not all, have changed}}
 
=== Keyboard codes ===
{{for|keys which controls can be bound to, but do not display a proper name|Java Edition untranslated keys}}
{| class="wikitable" width="80%" style="margin-left: auto; margin-right: auto; border: none;" data-description="Key codes"
{| class="wikitable" width="80%" style="margin-left: auto; margin-right: auto; border: none;" data-description="Key codes"
! width="33%" | Value !! width="33%" | In-game name !! width="34%" | Description
! width="33%" | Value !! width="33%" | In-game name !! width="34%" | Description
|-
|-
|key.keyboard.unknown || Not bound || Key is not bound
|key.keyboard.unknown || Not bound || Key is not bound
|-
|key.mouse.left || Left Button || Left mouse button
|-
|key.mouse.right || Right Button || Right mouse button
|-
|key.mouse.middle || Middle Button || Mouse scroll wheel
|-
|key.mouse.4 || Button 4 || Fourth mouse button
|-
|key.mouse.5 || Button 5 || Fifth mouse button
|-
|key.mouse.6 || Button 6 || Sixth mouse button
|-
|key.mouse.7 || Button 7 || Seventh mouse button
|-
|key.mouse.8 || Button 8 || Eighth mouse button
|-
|key.mouse.# || Button # || Mouse button of number #
|-
|-
|key.keyboard.0 || colspan="2" | 0
|key.keyboard.0 || colspan="2" | 0
Line 51: Line 33:
|key.keyboard.9 || colspan="2" | 9
|key.keyboard.9 || colspan="2" | 9
|-
|-
|key.keyboard.a || colspan="2" | a
|key.keyboard.a || colspan="2" | A
|-
|-
|key.keyboard.b || colspan="2" | b
|key.keyboard.b || colspan="2" | B
|-
|-
|key.keyboard.c || colspan="2" | c
|key.keyboard.c || colspan="2" | C
|-
|-
|key.keyboard.d || colspan="2" | d
|key.keyboard.d || colspan="2" | D
|-
|-
|key.keyboard.e || colspan="2" | e
|key.keyboard.e || colspan="2" | E
|-
|-
|key.keyboard.f || colspan="2" | f
|key.keyboard.f || colspan="2" | F
|-
|-
|key.keyboard.g || colspan="2" | g
|key.keyboard.g || colspan="2" | G
|-
|-
|key.keyboard.h || colspan="2" | h
|key.keyboard.h || colspan="2" | H
|-
|-
|key.keyboard.i || colspan="2" | i
|key.keyboard.i || colspan="2" | I
|-
|-
|key.keyboard.j || colspan="2" | j
|key.keyboard.j || colspan="2" | J
|-
|-
|key.keyboard.k || colspan="2" | k
|key.keyboard.k || colspan="2" | K
|-
|-
|key.keyboard.l || colspan="2" | l
|key.keyboard.l || colspan="2" | L
|-
|-
|key.keyboard.m || colspan="2" | m
|key.keyboard.m || colspan="2" | M
|-
|-
|key.keyboard.n || colspan="2" | n
|key.keyboard.n || colspan="2" | N
|-
|-
|key.keyboard.o || colspan="2" | o
|key.keyboard.o || colspan="2" | O
|-
|-
|key.keyboard.p || colspan="2" | p
|key.keyboard.p || colspan="2" | P
|-
|-
|key.keyboard.q || colspan="2" | q
|key.keyboard.q || colspan="2" | Q
|-
|-
|key.keyboard.r || colspan="2" | r
|key.keyboard.r || colspan="2" | R
|-
|-
|key.keyboard.s || colspan="2" | s
|key.keyboard.s || colspan="2" | S
|-
|-
|key.keyboard.t || colspan="2" | t
|key.keyboard.t || colspan="2" | T
|-
|-
|key.keyboard.u || colspan="2" | u
|key.keyboard.u || colspan="2" | U
|-
|-
|key.keyboard.v || colspan="2" | v
|key.keyboard.v || colspan="2" | V
|-
|-
|key.keyboard.w || colspan="2" | w
|key.keyboard.w || colspan="2" | W
|-
|-
|key.keyboard.x || colspan="2" | x
|key.keyboard.x || colspan="2" | X
|-
|-
|key.keyboard.y || colspan="2" | y
|key.keyboard.y || colspan="2" | Y
|-
|-
|key.keyboard.z || colspan="2" | z
|key.keyboard.z || colspan="2" | Z
|-
|-
|key.keyboard.f1 || colspan="2" | F1
|key.keyboard.f1 || colspan="2" | F1
Line 151: Line 133:
|key.keyboard.f24 || colspan="2" | F24
|key.keyboard.f24 || colspan="2" | F24
|-
|-
|key.keyboard.f25 || colspan="2" | F25
|key.keyboard.f25{{until|je 26.3}} || colspan="2" | F25
|-
|-
|key.keyboard.num.lock || colspan="2" | Num Lock
|key.keyboard.num.lock || colspan="2" | Num Lock
Line 176: Line 158:
|-
|-
|key.keyboard.keypad.add || colspan="2" | Keypad +
|key.keyboard.keypad.add || colspan="2" | Keypad +
|-
|key.keyboard.keypad.period{{upcoming|je 26.3}} || colspan="2" | Keypad .
|-
|-
|key.keyboard.keypad.decimal || colspan="2" | Keypad Decimal
|key.keyboard.keypad.decimal || colspan="2" | Keypad Decimal
Line 182: Line 166:
|-
|-
|key.keyboard.keypad.equal || colspan="2" | Keypad =
|key.keyboard.keypad.equal || colspan="2" | Keypad =
|-
|key.keyboard.keypad.comma{{upcoming|je 26.3}} || colspan="2" | Keypad ,
|-
|-
|key.keyboard.keypad.multiply || colspan="2" | Keypad *
|key.keyboard.keypad.multiply || colspan="2" | Keypad *
Line 188: Line 174:
|-
|-
|key.keyboard.keypad.subtract || colspan="2" | Keypad -
|key.keyboard.keypad.subtract || colspan="2" | Keypad -
|-
|key.keyboard.keypad.plus.minus{{upcoming|je 26.3}} || colspan="2" | Keypad ±
|-
|key.keyboard.keypad.left.parenthesis{{upcoming|je 26.3}} || colspan="2" | Keypad (
|-
|key.keyboard.keypad.right.parenthesis{{upcoming|je 26.3}} || colspan="2" | Keypad )
|-
|-
|key.keyboard.down || colspan="2" | Down Arrow
|key.keyboard.down || colspan="2" | Down Arrow
Line 223: Line 215:
|key.keyboard.tab || colspan="2" | Tab
|key.keyboard.tab || colspan="2" | Tab
|-
|-
|key.keyboard.left.alt || colspan="2" | Left Alt
|key.keyboard.left.alt || colspan="2" | Windows/Linux: Left Alt<br>macOS: Left Option{{upcoming|je 26.3}}
|-
|-
|key.keyboard.left.control || colspan="2" | Left Control
|key.keyboard.left.control || colspan="2" | Left Control
Line 229: Line 221:
|key.keyboard.left.shift || colspan="2" | Left Shift
|key.keyboard.left.shift || colspan="2" | Left Shift
|-
|-
|key.keyboard.left.win || colspan="2" | Left Win
|key.keyboard.left.win || colspan="2" | Windows: Left Win<br>Linux: Left Meta{{upcoming|je 26.3}}<br>macOS: Left Command{{upcoming|je 26.3}}
|-
|-
|key.keyboard.right.alt || colspan="2" | Right Alt
|key.keyboard.right.alt || colspan="2" | Windows/Linux: Right Alt<br>macOS: Right Option{{upcoming|je 26.3}}
|-
|-
|key.keyboard.right.control || colspan="2" | Right Control
|key.keyboard.right.control || colspan="2" | Right Control
Line 237: Line 229:
|key.keyboard.right.shift || colspan="2" | Right Shift
|key.keyboard.right.shift || colspan="2" | Right Shift
|-
|-
|key.keyboard.right.win || colspan="2" | Right Win
|key.keyboard.right.win || colspan="2" | Windows: Right Win<br>Linux: Right Meta{{upcoming|je 26.3}}<br>macOS: Right Command{{upcoming|je 26.3}}
|-
|-
|key.keyboard.enter || colspan="2" | Enter
|key.keyboard.enter || colspan="2" | Enter
Line 262: Line 254:
|-
|-
|key.keyboard.scroll.lock || colspan="2" | Scroll Lock
|key.keyboard.scroll.lock || colspan="2" | Scroll Lock
|-
|key.keyboard.application{{upcoming|je 26.3}} || colspan="2" | Menu
|-
|-
|key.keyboard.menu || colspan="2" | Menu
|key.keyboard.menu || colspan="2" | Menu
Line 267: Line 261:
|key.keyboard.print.screen || colspan="2" | Print Screen
|key.keyboard.print.screen || colspan="2" | Print Screen
|-
|-
|key.keyboard.world.1 || colspan="2" | World 1
|key.keyboard.world.1 || World 1 || {{info needed}}
|-
|key.keyboard.world.2 || colspan="2" | World 2
|-
|scancode.### || scancode.### || Untranslated{{until|java 26.3}}
|}
 
=== Before 1.13 ===
{{split|section=1|reason=would this fit better on a subpage so that only up-to-date information is here?}}
==== Keyboard codes ====
{|width="100%"
| align="center" valign="top" width="50%"|
{|class="wikitable" width="80%"
! width="33%" | Value !! width="33%" | Name !! width="34%" | Description
|-
|0 || colspan="2" | NONE <ref name="nonekey">LWJGL returns key code 0 when a key is pressed but it doesn't know what key.</ref>
|-
|1 || ESCAPE || Escape
|-
|2 || colspan="2" | 1
|-
|3 || colspan="2" | 2
|-
|4 || colspan="2" | 3
|-
|-
|5 || colspan="2" | 4
|key.keyboard.world.2 || World 2 || {{info needed}}
|-
|-
|6 || colspan="2" | 5
|key.keyboard.mute{{upcoming|je 26.3}} || colspan="2" | Mute
|-
|-
|7 || colspan="2" | 6
|key.keyboard.volume.up{{upcoming|je 26.3}} || colspan="2" | Volume Up
|-
|-
|8 || colspan="2" | 7
|key.keyboard.volume.down{{upcoming|je 26.3}} || colspan="2" | Volume Down
|-
|-
|9 || colspan="2" | 8
|key.keyboard.media.play.pause{{upcoming|je 26.3}} || colspan="2" | Play/Pause
|-
|-
|10 || colspan="2" | 9
|key.keyboard.stop{{upcoming|je 26.3}} || colspan="2" | Stop
|-
|-
|11 || colspan="2" | 0
|key.keyboard.again{{upcoming|je 26.3}} || colspan="2" | Again
|-
|-
|12 || MINUS || -
|key.keyboard.undo{{upcoming|je 26.3}} || colspan="2" | Undo
|-
|-
|13 || EQUALS || =
|key.keyboard.cut{{upcoming|je 26.3}} || colspan="2" | Cut
|-
|-
|14 || BACK || Backspace
|key.keyboard.copy{{upcoming|je 26.3}} || colspan="2" | Copy
|-
|-
|15 || TAB || Tab
|key.keyboard.paste{{upcoming|je 26.3}} || colspan="2" | Paste
|-
|-
|16 || colspan="2" | Q
|key.keyboard.find{{upcoming|je 26.3}} || colspan="2" | Find
|-
|-
|17 || colspan="2" | W
|key.keyboard.help{{upcoming|je 26.3}} || colspan="2" | Help
|-
|-
|18 || colspan="2" | E
|key.keyboard.new{{upcoming|je 26.3}} || colspan="2" | New
|-
|-
|19 || colspan="2" | R
|key.keyboard.save{{upcoming|je 26.3}} || colspan="2" | Save
|-
|-
|20 || colspan="2" | T
|scancode.###{{until|java 26.3}} || scancode.### || Untranslated
|-
|-
|21 || colspan="2" | Y
|key.keyboard.###{{upcoming|java 26.3}} || key.keyboard.### || Untranslated
|-
|22 || colspan="2" | U
|-
|23 || colspan="2" | I
|-
|24 || colspan="2" | O
|-
|25 || colspan="2" | P
|-
|26 || LBRACKET || [
|-
|27 || RBRACKET || ]
|-
|28 || RETURN || Enter
|-
|29 || LCONTROL || Left Control
|-
|30 || colspan="2" | A
|-
|31 || colspan="2" | S
|-
|32 || colspan="2" | D
|-
|33 || colspan="2" | F
|-
|34 || colspan="2" | G
|-
|35 || colspan="2" | H
|-
|36 || colspan="2" | J
|-
|37 || colspan="2" | K
|-
|38 || colspan="2" | L
|-
|39 || SEMICOLON || ;
|-
|40 || APOSTROPHE || '
|-
|41 || GRAVE || `
|-
|42 || LSHIFT || Left Shift
|-
|43 || BACKSLASH || \
|-
|44 || colspan="2" | Z
|-
|45 || colspan="2" | X
|-
|46 || colspan="2" | C
|-
|47 || colspan="2" | V
|-
|48 || colspan="2" | B
|-
|49 || colspan="2" | N
|-
|50 || colspan="2" | M
|-
|51 || COMMA || ,
|-
|52 || PERIOD || .
|-
|53 || SLASH || /
|-
|54 || RSHIFT || Right Shift
|-
|55 || colspan="2" | MULTIPLY
|-
|56 || LMENU <ref name="menualt"> LWJGL maps the menu key and the alt key to the same value. </ref> || Left Menu/Alt
|-
|57 || colspan="2" | SPACE
|-
|58 || CAPITAL || Caps Lock
|-
|59 || colspan="2" | F1
|-
|60 || colspan="2" | F2
|-
|61 || colspan="2" | F3
|-
|62 || colspan="2" | F4
|}
|}
| align="center" valign="top" width="50%"|
 
{|class="wikitable" width="80%"
=== Mouse codes ===
! width="33%" | Value !! width="33%" | Name !! width="34%" | Description
Only mouse buttons can have controls be bound to them in the options menu. Mouse movement, vertical scrolling and horizontal scrolling are hardcoded, and their default actions cannot be assigned to other keys or buttons, nor can scrolling or moving the mouse be made to do anything else.
|-
 
|63 || colspan="2" | F5
Mouse buttons are handled as a signed 32-bit integer, meaning that through editing options.txt, values from {{code|key.mouse.-2147483648}} to {{code|key.mouse.2147483647}} can be specified without being rejected by the game as invalid.<ref>{{bug|MC-268286}}</ref> However, the USB HID specification only permits mouse buttons from 1 to 65535,<ref>https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf</ref> meaning that all negative values and the vast majority of the positive values can never actually be assigned to in-game actions without file editing.
|-
 
|64 || colspan="2" | F6
Only the first eight mouse buttons can have controls assigned to them.{{until|java 26.3}}
|-
 
|65 || colspan="2" | F7
On Linux, mouse buttons up to 48{{upcoming|java 26.3}} can be specified (evdev key press events 272 to 319) - it is not known if any supported operating systems support a 49th or higher mouse button as input. The maximum mouse button on macOS is 32, and the maximum mouse button on Windows is 5.
|-
{| class="wikitable" data-description="Mouse button IDs" style="margin-left:auto; margin-right:auto"
|66 || colspan="2" | F8
! rowspan="2" | ID
|-
! rowspan="2" | Display name
|67 || colspan="2" | F9
! rowspan="2" | Description
|-
! colspan="3" | Usable on
|68 || colspan="2" | F10
|-
|69 || NUMLOCK || Number Lock
|-
|70 || SCROLL || Scroll Lock
|-
|71 || colspan="2" | NUMPAD7
|-
|72 || colspan="2" | NUMPAD8
|-
|73 || colspan="2" | NUMPAD9
|-
|74 || colspan="2" | SUBTRACT
|-
|75 || colspan="2" | NUMPAD4
|-
|76 || colspan="2" | NUMPAD5
|-
|77 || colspan="2" | NUMPAD6
|-
|78 || colspan="2" | ADD
|-
|79 || colspan="2" | NUMPAD1
|-
|80 || colspan="2" | NUMPAD2
|-
|81 || colspan="2" | NUMPAD3
|-
|82 || colspan="2" | NUMPAD0
|-
|83 || colspan="2" | DECIMAL
|-
|87 || colspan="2" | F11
|-
|88 || colspan="2" | F12
|-
|100 || colspan="2" | F13
|-
|101 || colspan="2" | F14
|-
|102 || colspan="2" | F15
|-
|112 || colspan="2" | KANA
|-
|121 || colspan="2" | CONVERT
|-
|123 || colspan="2" | NOCONVERT
|-
|125 || YEN || ¥
|-
|141 || colspan="2" | NUMPADEQUALS
|-
|144 || CIRCUMFLEX || ^
|-
|-
|145 || AT || @
! Windows
! macOS
! Linux
|-
|-
|146 || COLON || :
! {{code|key.mouse.left}}{{note|{{code|key.mouse.1}} is automatically converted to this{{info needed|I assume upon reading options.txt when the game is started? or at another time?}}}}
| Left Button
| Primary mouse button
! {{tc|Yes}}
! {{tc|Yes}}
! {{tc|Yes}}
|-
|-
|147 || UNDERLINE || _
! {{code|key.mouse.right}}{{note|{{code|key.mouse.3}} is automatically converted to this}}
| Right Button
| Secondary mouse button
! {{tc|Yes}}
! {{tc|Yes}}
! {{tc|Yes}}
|-
|-
|148 || colspan="2" | KANJI
! {{code|key.mouse.middle}}{{note|{{code|key.mouse.2}} is automatically converted to this}}
| Middle Button
| Tertiary mouse button, often the scroll wheel when pressed
! {{tc|Yes}}
! {{tc|Yes}}
! {{tc|Yes}}
|-
|-
|149 || colspan="2" | STOP
! {{code|key.mouse.4}}
| Button 4
| Fourth mouse button, aka "Back" or XBUTTON1
! {{tc|Yes}}
! {{tc|Yes}}
! {{tc|Yes}}
|-
|-
|150 || colspan="2" | AX
! {{code|key.mouse.5}}
| Button 5
| Fifth mouse button, aka "Forward" or XBUTTON2
! {{tc|Yes}}
! {{tc|Yes}}
! {{tc|Yes}}
|-
|-
|151 || colspan="2" | UNLABLED
! {{code|key.mouse.6}}
| Button 6
| Sixth mouse button
! {{tc|No}}
! {{tc|Yes}}
! {{tc|Yes}}
|-
|-
|156 || colspan="2" | NUMPADENTER
! {{code|key.mouse.7}}
| Button 7
| Seventh mouse button
! {{tc|No}}
! {{tc|Yes}}
! {{tc|Yes}}
|-
|-
|157 || RCONTROL || Right Control
! {{code|key.mouse.8}}
| Button 8
| Eighth mouse button
! {{tc|No}}
! {{tc|Yes}}
! {{tc|Yes}}
|-
|-
|179 || colspan="2" | NUMPADCOMMA
! {{code|key.mouse.9}}
| Button 9
| Ninth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|181 || colspan="2" | DIVIDE
! {{code|key.mouse.10}}
| Button 10
| Tenth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|183 || colspan="2" | SYSRQ
! {{code|key.mouse.11}}
| Button 11
| Eleventh mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|184 || RMENU <ref name="menualt"/> || Right Menu/Alt
! {{code|key.mouse.12}}
| Button 12
| Twelfth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|197 || colspan="2" | PAUSE
! {{code|key.mouse.13}}
| Button 13
| Thirteenth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|199 || colspan="2" | HOME
! {{code|key.mouse.14}}
| Button 14
| Fourteenth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|200 || UP || Up Arrow
! {{code|key.mouse.15}}
| Button 15
| Fifteenth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|201 || PRIOR || Page Up
! {{code|key.mouse.16}}
| Button 16
| Sixteenth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|203 || LEFT || Left Arrow
! {{code|key.mouse.17}}
| Button 17
| Seventeenth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|205 || RIGHT || Right Arrow
! {{code|key.mouse.18}}
| Button 18
| Eighteenth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|207 || colspan="2" | END
! {{code|key.mouse.19}}
| Button 19
| Nineteenth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|208 || DOWN || Down Arrow
! {{code|key.mouse.20}}
| Button 20
| Twentieth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|209 || NEXT || Page Down
! {{code|key.mouse.21}}
| Button 21
| Twenty-first mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|210 || colspan="2" | INSERT
! {{code|key.mouse.22}}
| Button 22
| Twenty-second mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|211 || colspan="2" | DELETE
! {{code|key.mouse.23}}
| Button 23
| Twenty-third mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|rowspan="2"|219 || LMETA ||rowspan="2"| Left Meta/Super
! {{code|key.mouse.24}}
| Button 24
| Twenty-fourth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|LWIN <ref name="winkeys">The use of the names "LWIN" and "RWIN" are officially deprecated and the names "LMETA" and "RMETA" should be used instead.</ref>
! {{code|key.mouse.25}}
| Button 25
| Twenty-fifth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|rowspan="2"|220 || RMETA ||rowspan="2"| Right Meta/Super
! {{code|key.mouse.26}}
| Button 26
| Twenty-sixth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|RWIN <ref name="winkeys" />
! {{code|key.mouse.27}}
| Button 27
| Twenty-seventh mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|221 || colspan="2" | APPS
! {{code|key.mouse.28}}
| Button 28
| Twenty-eighth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|222 || colspan="2" | POWER
! {{code|key.mouse.29}}
| Button 29
| Twenty-ninth mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
|223 || colspan="2" | SLEEP
! {{code|key.mouse.30}}
|}
| Button 30
|}
| Thirtieth mouse button
 
! {{tc|No}}
==== Mouse codes ====
! {{tc|Yes}}{{upcoming|java 26.3}}
LWJGL supports a maximum of 16 mouse buttons.{{verify|according to MC-266231, even the modern game only supports up to button 8. there were issues with binding that caused some buttons to be interpreted as higher than they were, but GLFW only seems to support eight mouse buttons.}}{{until|java 26.3}}<!--according to my testing, Plasma 5 on Wayland supports up to 48 mouse buttons--> The Minecraft game settings screen translates button 0 to "Button 1", button 1 to "Button 2", et cetera.
! {{tc|Yes}}{{upcoming|java 26.3}}
{|width="100%"
| align="center" valign="top" width="50%"|
 
{|class="wikitable" width="80%"
! colspan="2" | Value !! rowspan="2" width="25%" | LWJGL <br/> Name !! rowspan="2" width="25%" | Description
|-
|-
! width="25%" | LWJGL !! width="25%" | Minecraft
! {{code|key.mouse.31}}
| Button 31
| Thirty-first mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 0 || -100 || BUTTON0 || Left Click
! {{code|key.mouse.32}}
| Button 32
| Thirty-second mouse button
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 1 || -99 || BUTTON1 || Right Click
! {{code|key.mouse.33}}
| Button 33
| Thirty-third mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 2 || -98 || BUTTON2 || Middle Click
! {{code|key.mouse.34}}
| Button 34
| Thirty-fourth mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 3 || -97 || colspan="2" | BUTTON3
! {{code|key.mouse.35}}
| Button 35
| Thirty-fifth mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 4 || -96 || colspan="2" | BUTTON4
! {{code|key.mouse.36}}
| Button 36
| Thirty-sixth mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 5 || -95 || colspan="2" | BUTTON5
! {{code|key.mouse.37}}
| Button 37
| Thirty-seventh mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 6 || -94 || colspan="2" | BUTTON6
! {{code|key.mouse.38}}
| Button 38
| Thirty-eighth mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 7 || -93 || colspan="2" | BUTTON7
! {{code|key.mouse.39}}
|}
| Button 39
 
| Thirty-ninth mouse button
| align="center" valign="top" width="50%"|
! {{tc|No}}
 
! {{tc|No}}
{|class="wikitable" width="80%"
! {{tc|Yes}}{{upcoming|java 26.3}}
! colspan="2" | Value !! rowspan="2" width="25%" | LWJGL <br/> Name !! rowspan="2" width="25%" | Description
|-
|-
! width="25%" | LWJGL !! width="25%" | Minecraft
! {{code|key.mouse.40}}
| Button 40
| Fortieth mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 8 || -92 || colspan="2" | BUTTON8
! {{code|key.mouse.41}}
| Button 41
| Forty-first mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 9 || -91 || colspan="2" | BUTTON9
! {{code|key.mouse.42}}
| Button 42
| Forty-second mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 10 || -90 || colspan="2" | BUTTON10
! {{code|key.mouse.43}}
| Button 43
| Forty-third mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 11 || -89 || colspan="2" | BUTTON11
! {{code|key.mouse.44}}
| Button 44
| Forty-fourth mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 12 || -88 || colspan="2" | BUTTON12
! {{code|key.mouse.45}}
| Button 45
| Forty-fifth mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 13 || -87 || colspan="2" | BUTTON13
! {{code|key.mouse.46}}
| Button 46
| Forty-sixth mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 14 || -86 || colspan="2" | BUTTON14
! {{code|key.mouse.47}}
| Button 47
| Forty-seventh mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|-
|-
| 15 || -85 || colspan="2" | BUTTON15
! {{code|key.mouse.48}}
|}
| Button 48
| Forty-eighth mouse button
! {{tc|No}}
! {{tc|No}}
! {{tc|Yes}}{{upcoming|java 26.3}}
|}
|}


Line 968: Line 1,029:
| -95 || Mouse Button 5
| -95 || Mouse Button 5
|}
|}
== History ==
=== ''Java Edition'' ===
{{HistoryTable
|{{HistoryLine|java classic}}
|{{HistoryLine||0.0.23a|Added key codes.}}
|{{HistoryLine|java beta}}
|{{HistoryLine||1.8|dev=Pre-release|Controls can now be bound to mouse buttons; these are handled using negative numbers.}}
|{{HistoryLine|java}}
|{{HistoryLine||1.12|dev=17w16a|The first three mouse buttons are now displayed as "Left Click", "Right Click" and "Middle Click".}}
|{{HistoryLine||1.13|dev=17w43a|With the updating of LWJGL from 2 to 3 key codes have been entirely redone. For the old values, see [[Minecraft:Java Edition pre-flattening data values#Key codes]], and for what each of them was converted to, see [[Minecraft:Java Edition Flattening#Key codes]].
|The display names of key codes now describes the actual key (e.g. BACKSLASH changed to \).
|The first three mouse buttons are now displayed as "Left Button", "Right Button" and "Middle Button".}}
|{{HistoryLine|java upcoming}}
|{{HistoryLine||26.3|dev=snap4|Valid but undefined key codes have been changed from {{code|scancode.###}} to {{code|key.keyboard.###}}.
|Removed {{code|key.keyboard.f25}}.}}
|{{HistoryLine|||dev=?|The keypad plus-or-minus, keypad opening bracket and keypad closing bracket buttons now display as ±, ( and ) in-game. However, it is unknown what their specific key codes are at this point. Notably, they are not prefixed with "Keypad ", unlike other keypad keys.<ref>{{bug|MC-310109}}, {{bug|MC-310110}}</ref>}}
|{{HistoryLine|||dev=snap7|Several new translatable key codes have been added:
*{{code|key.keyboard.keypad.period}}
*{{code|key.keyboard.keypad.comma}}
*{{code|key.keyboard.keypad.plus.minus}}
*{{code|key.keyboard.keypad.left.parenthesis}}
*{{code|key.keyboard.keypad.right.parenthesis}}
*{{code|key.keyboard.keypad.application}}
*{{code|key.keyboard.keypad.mute}}
*{{code|key.keyboard.keypad.volume.up}}
*{{code|key.keyboard.keypad.volume.down}}
*{{code|key.keyboard.keypad.media.play.pause}}
*{{code|key.keyboard.keypad.stop}}
*{{code|key.keyboard.keypad.again}}
*{{code|key.keyboard.keypad.undo}}
*{{code|key.keyboard.keypad.cut}}
*{{code|key.keyboard.keypad.copy}}
*{{code|key.keyboard.keypad.paste}}
*{{code|key.keyboard.keypad.find}}
*{{code|key.keyboard.keypad.help}}
*{{code|key.keyboard.keypad.new}}
*{{code|key.keyboard.keypad.save}}|
{{code|key.keyboard.left.alt}}, {{code|key.keyboard.right.alt}}, {{code|key.keyboard.left.win}}, and {{code|key.keyboard.right.win}} now have different display names depending on the user's operating system.{{verify|Checking the lang files shows that there are distinct "[left/right].win" and "[left/right].windows" translation strings - investigate}}}}
}}
== Notes ==
{{notelist}}


== References ==
== References ==

Revision as of 11:15, 5 August 2026

Template:For Template:Missing information This is a list of key codes used by Minecraft:Minecraft, which are used in configuration files such as the options.txt file in the Minecraft directory.Template:Info needed

Java Edition

Template:For

Keyboard codes

Template:For

Value In-game name Description
key.keyboard.unknown Not bound Key is not bound
key.keyboard.0 0
key.keyboard.1 1
key.keyboard.2 2
key.keyboard.3 3
key.keyboard.4 4
key.keyboard.5 5
key.keyboard.6 6
key.keyboard.7 7
key.keyboard.8 8
key.keyboard.9 9
key.keyboard.a A
key.keyboard.b B
key.keyboard.c C
key.keyboard.d D
key.keyboard.e E
key.keyboard.f F
key.keyboard.g G
key.keyboard.h H
key.keyboard.i I
key.keyboard.j J
key.keyboard.k K
key.keyboard.l L
key.keyboard.m M
key.keyboard.n N
key.keyboard.o O
key.keyboard.p P
key.keyboard.q Q
key.keyboard.r R
key.keyboard.s S
key.keyboard.t T
key.keyboard.u U
key.keyboard.v V
key.keyboard.w W
key.keyboard.x X
key.keyboard.y Y
key.keyboard.z Z
key.keyboard.f1 F1
key.keyboard.f2 F2
key.keyboard.f3 F3
key.keyboard.f4 F4
key.keyboard.f5 F5
key.keyboard.f6 F6
key.keyboard.f7 F7
key.keyboard.f8 F8
key.keyboard.f9 F9
key.keyboard.f10 F10
key.keyboard.f11 F11
key.keyboard.f12 F12
key.keyboard.f13 F13
key.keyboard.f14 F14
key.keyboard.f15 F15
key.keyboard.f16 F16
key.keyboard.f17 F17
key.keyboard.f18 F18
key.keyboard.f19 F19
key.keyboard.f20 F20
key.keyboard.f21 F21
key.keyboard.f22 F22
key.keyboard.f23 F23
key.keyboard.f24 F24
key.keyboard.f25Template:Until F25
key.keyboard.num.lock Num Lock
key.keyboard.keypad.0 Keypad 0
key.keyboard.keypad.1 Keypad 1
key.keyboard.keypad.2 Keypad 2
key.keyboard.keypad.3 Keypad 3
key.keyboard.keypad.4 Keypad 4
key.keyboard.keypad.5 Keypad 5
key.keyboard.keypad.6 Keypad 6
key.keyboard.keypad.7 Keypad 7
key.keyboard.keypad.8 Keypad 8
key.keyboard.keypad.9 Keypad 9
key.keyboard.keypad.add Keypad +
key.keyboard.keypad.periodTemplate:Upcoming Keypad .
key.keyboard.keypad.decimal Keypad Decimal
key.keyboard.keypad.enter Keypad Enter
key.keyboard.keypad.equal Keypad =
key.keyboard.keypad.commaTemplate:Upcoming Keypad ,
key.keyboard.keypad.multiply Keypad *
key.keyboard.keypad.divide Keypad /
key.keyboard.keypad.subtract Keypad -
key.keyboard.keypad.plus.minusTemplate:Upcoming Keypad ±
key.keyboard.keypad.left.parenthesisTemplate:Upcoming Keypad (
key.keyboard.keypad.right.parenthesisTemplate:Upcoming Keypad )
key.keyboard.down Down Arrow
key.keyboard.left Left Arrow
key.keyboard.right Right Arrow
key.keyboard.up Up Arrow
key.keyboard.apostrophe '
key.keyboard.backslash \
key.keyboard.comma ,
key.keyboard.equal =
key.keyboard.grave.accent `
key.keyboard.left.bracket [
key.keyboard.minus -
key.keyboard.period .
key.keyboard.right.bracket ]
key.keyboard.semicolon ;
key.keyboard.slash /
key.keyboard.space Space
key.keyboard.tab Tab
key.keyboard.left.alt Windows/Linux: Left Alt
macOS: Left OptionTemplate:Upcoming
key.keyboard.left.control Left Control
key.keyboard.left.shift Left Shift
key.keyboard.left.win Windows: Left Win
Linux: Left MetaTemplate:Upcoming
macOS: Left CommandTemplate:Upcoming
key.keyboard.right.alt Windows/Linux: Right Alt
macOS: Right OptionTemplate:Upcoming
key.keyboard.right.control Right Control
key.keyboard.right.shift Right Shift
key.keyboard.right.win Windows: Right Win
Linux: Right MetaTemplate:Upcoming
macOS: Right CommandTemplate:Upcoming
key.keyboard.enter Enter
key.keyboard.escape Escape
key.keyboard.backspace Backspace
key.keyboard.delete Delete
key.keyboard.end End
key.keyboard.home Home
key.keyboard.insert Insert
key.keyboard.page.down Page Down
key.keyboard.page.up Page Up
key.keyboard.caps.lock Caps Lock
key.keyboard.pause Pause
key.keyboard.scroll.lock Scroll Lock
key.keyboard.applicationTemplate:Upcoming Menu
key.keyboard.menu Menu
key.keyboard.print.screen Print Screen
key.keyboard.world.1 World 1 Template:Info needed
key.keyboard.world.2 World 2 Template:Info needed
key.keyboard.muteTemplate:Upcoming Mute
key.keyboard.volume.upTemplate:Upcoming Volume Up
key.keyboard.volume.downTemplate:Upcoming Volume Down
key.keyboard.media.play.pauseTemplate:Upcoming Play/Pause
key.keyboard.stopTemplate:Upcoming Stop
key.keyboard.againTemplate:Upcoming Again
key.keyboard.undoTemplate:Upcoming Undo
key.keyboard.cutTemplate:Upcoming Cut
key.keyboard.copyTemplate:Upcoming Copy
key.keyboard.pasteTemplate:Upcoming Paste
key.keyboard.findTemplate:Upcoming Find
key.keyboard.helpTemplate:Upcoming Help
key.keyboard.newTemplate:Upcoming New
key.keyboard.saveTemplate:Upcoming Save
scancode.###Template:Until scancode.### Untranslated
key.keyboard.###Template:Upcoming key.keyboard.### Untranslated

Mouse codes

Only mouse buttons can have controls be bound to them in the options menu. Mouse movement, vertical scrolling and horizontal scrolling are hardcoded, and their default actions cannot be assigned to other keys or buttons, nor can scrolling or moving the mouse be made to do anything else.

Mouse buttons are handled as a signed 32-bit integer, meaning that through editing options.txt, values from Template:Code to Template:Code can be specified without being rejected by the game as invalid.<ref>Template:Bug</ref> However, the USB HID specification only permits mouse buttons from 1 to 65535,<ref>https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf</ref> meaning that all negative values and the vast majority of the positive values can never actually be assigned to in-game actions without file editing.

Only the first eight mouse buttons can have controls assigned to them.Template:Until

On Linux, mouse buttons up to 48Template:Upcoming can be specified (evdev key press events 272 to 319) - it is not known if any supported operating systems support a 49th or higher mouse button as input. The maximum mouse button on macOS is 32, and the maximum mouse button on Windows is 5.

ID Display name Description Usable on
Windows macOS Linux
Template:CodeTemplate:Note Left Button Primary mouse button Template:Tc Template:Tc Template:Tc
Template:CodeTemplate:Note Right Button Secondary mouse button Template:Tc Template:Tc Template:Tc
Template:CodeTemplate:Note Middle Button Tertiary mouse button, often the scroll wheel when pressed Template:Tc Template:Tc Template:Tc
Template:Code Button 4 Fourth mouse button, aka "Back" or XBUTTON1 Template:Tc Template:Tc Template:Tc
Template:Code Button 5 Fifth mouse button, aka "Forward" or XBUTTON2 Template:Tc Template:Tc Template:Tc
Template:Code Button 6 Sixth mouse button Template:Tc Template:Tc Template:Tc
Template:Code Button 7 Seventh mouse button Template:Tc Template:Tc Template:Tc
Template:Code Button 8 Eighth mouse button Template:Tc Template:Tc Template:Tc
Template:Code Button 9 Ninth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 10 Tenth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 11 Eleventh mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 12 Twelfth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 13 Thirteenth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 14 Fourteenth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 15 Fifteenth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 16 Sixteenth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 17 Seventeenth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 18 Eighteenth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 19 Nineteenth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 20 Twentieth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 21 Twenty-first mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 22 Twenty-second mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 23 Twenty-third mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 24 Twenty-fourth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 25 Twenty-fifth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 26 Twenty-sixth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 27 Twenty-seventh mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 28 Twenty-eighth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 29 Twenty-ninth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 30 Thirtieth mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 31 Thirty-first mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 32 Thirty-second mouse button Template:Tc Template:TcTemplate:Upcoming Template:TcTemplate:Upcoming
Template:Code Button 33 Thirty-third mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 34 Thirty-fourth mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 35 Thirty-fifth mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 36 Thirty-sixth mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 37 Thirty-seventh mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 38 Thirty-eighth mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 39 Thirty-ninth mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 40 Fortieth mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 41 Forty-first mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 42 Forty-second mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 43 Forty-third mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 44 Forty-fourth mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 45 Forty-fifth mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 46 Forty-sixth mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 47 Forty-seventh mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming
Template:Code Button 48 Forty-eighth mouse button Template:Tc Template:Tc Template:TcTemplate:Upcoming

Bedrock Edition

Key Code Key
0 That key has no keycode
3 break
8 backspace / delete
9 tab
12 clear
13 enter
16 shift
17 w
18 alt
19 pause/break
20 caps lock
21 hangul
25 hanja
27 escape
28 conversion
29 non-conversion
32 spacebar
33 page up
34 page down
35 end
36 home
37 left arrow
38 up arrow
39 right arrow
40 down arrow
41 select
42 print
43 execute
44 Print Screen
45 insert
46 delete
47 help
48 0
49 1
50 2
51 3
52 4
53 5
54 6
55 7
56 8
57 9
58 :
59 semicolon (firefox), equals
60 <
61 equals (firefox)
63 ß
64 @ (firefox)
65 a
66 b
67 c
68 d
69 e
70 f
71 g
72 h
73 i
74 j
75 k
76 l
77 m
78 n
79 o
80 p
81 q
82 r
83 s
84 t
85 u
86 v
87 w
88 x
89 y
90 z
91 Windows Key / Left ⌘ / Chromebook Search key
92 right window key
93 Windows Menu / Right ⌘
95 sleep
96 numpad 0
97 numpad 1
98 numpad 2
99 numpad 3
100 numpad 4
101 numpad 5
102 numpad 6
103 numpad 7
104 numpad 8
105 numpad 9
106 multiply
107 add
108 numpad period (firefox)
109 subtract
110 decimal point
111 divide
112 f1
113 f2
114 f3
115 f4
116 f5
117 f6
118 f7
119 f8
120 f9
121 f10
122 f11
123 f12
124 f13
125 f14
126 f15
127 f16
128 f17
129 f18
130 f19
131 f20
132 f21
133 f22
134 f23
135 f24
136 f25
137 f26
138 f27
139 f28
140 f29
141 f30
142 f31
143 f32
144 num lock
145 scroll lock
151 airplane mode
160 ^
161 !
162 ؛ (arabic semicolon)
163 #
164 $
165 ù
166 page backward
167 page forward
168 refresh
169 closing paren (AZERTY)
170 *
171 ~ + * key
172 home key
173 minus (firefox), mute/unmute
174 decrease volume level
175 increase volume level
176 next
177 previous
178 stop
179 play/pause
180 e-mail
181 mute/unmute (firefox)
182 decrease volume level (firefox)
183 increase volume level (firefox)
186 semi-colon / ñ
187 equal sign
188 comma
189 dash
190 period
191 forward slash / ç
192 grave accent / ñ / æ / ö
193 ?, / or °
194 numpad period (chrome)
219 open bracket
220 back slash
221 close bracket / å
222 single quote / ø / ä
223 `
224 left or right ⌘ key (firefox)
225 altgr
226 < /git >, left back slash
230 GNOME Compose Key
231 ç
233 XF86Forward
234 XF86Back
235 non-conversion
240 alphanumeric
242 hiragana/katakana
243 half-width/full-width
244 kanji
251 unlock trackpad (Chrome/Edge)
255 toggle touchpad
-99 Mouse Left
-98 Mouse Right
-97 Mouse Middle
-94 Mouse Button 6
-95 Mouse Button 5

History

Java Edition

Template:HistoryTable

Notes

Template:Notelist

References

Template:Reflist

Navigation

Template:Navbox Java Edition technical Template:Navbox Bedrock Edition

Minecraft:fr:Codes de touche Minecraft:hu:Billentyűkódok Minecraft:ja:キーコード Minecraft:nl:Toetscodes Minecraft:pt:Códigos de teclas Minecraft:ru:Коды клавиш Minecraft:uk:Коди клавіш Minecraft:zh:键控代码