]> git.donarmstrong.com Git - qmk_firmware.git/blob - docs/keycodes.md
fa02512dea558877a40126b2f57fc0c592a55f11
[qmk_firmware.git] / docs / keycodes.md
1 # Keycodes Overview
2
3 When defining a [keymap](keymap.md) each key needs a valid key definition. This page documents the symbols that correspond to keycodes that are available to you in QMK.
4
5 This is a reference only. Each group of keys links to the page documenting their functionality in more detail.
6
7 ## [Basic Keycodes](keycodes_basic.md)
8
9 |Key                    |Aliases   |Description                                    |
10 |-----------------------|----------|-----------------------------------------------|
11 |`KC_1`                 |          |`1` and `!`                                    |
12 |`KC_2`                 |          |`2` and `@`                                    |
13 |`KC_3`                 |          |`3` and `#`                                    |
14 |`KC_4`                 |          |`4` and `$`                                    |
15 |`KC_5`                 |          |`5` and `%`                                    |
16 |`KC_6`                 |          |`6` and `^`                                    |
17 |`KC_7`                 |          |`7` and `&`                                    |
18 |`KC_8`                 |          |`8` and `*`                                    |
19 |`KC_9`                 |          |`9` and `(`                                    |
20 |`KC_0`                 |          |`0` and `)`                                    |
21 |`KC_F1`                |          |                                               |
22 |`KC_F2`                |          |                                               |
23 |`KC_F3`                |          |                                               |
24 |`KC_F4`                |          |                                               |
25 |`KC_F5`                |          |                                               |
26 |`KC_F6`                |          |                                               |
27 |`KC_F7`                |          |                                               |
28 |`KC_F8`                |          |                                               |
29 |`KC_F9`                |          |                                               |
30 |`KC_F10`               |          |                                               |
31 |`KC_F11`               |          |                                               |
32 |`KC_F12`               |          |                                               |
33 |`KC_F13`               |          |                                               |
34 |`KC_F14`               |          |                                               |
35 |`KC_F15`               |          |                                               |
36 |`KC_F16`               |          |                                               |
37 |`KC_F17`               |          |                                               |
38 |`KC_F18`               |          |                                               |
39 |`KC_F19`               |          |                                               |
40 |`KC_F20`               |          |                                               |
41 |`KC_F21`               |          |                                               |
42 |`KC_F22`               |          |                                               |
43 |`KC_F23`               |          |                                               |
44 |`KC_F24`               |          |                                               |
45 |`KC_A`                 |          |`a` and `A`                                    |
46 |`KC_B`                 |          |`b` and `B`                                    |
47 |`KC_C`                 |          |`c` and `C`                                    |
48 |`KC_D`                 |          |`d` and `D`                                    |
49 |`KC_E`                 |          |`e` and `E`                                    |
50 |`KC_F`                 |          |`f` and `F`                                    |
51 |`KC_G`                 |          |`g` and `G`                                    |
52 |`KC_H`                 |          |`h` and `H`                                    |
53 |`KC_I`                 |          |`i` and `I`                                    |
54 |`KC_J`                 |          |`j` and `J`                                    |
55 |`KC_K`                 |          |`k` and `K`                                    |
56 |`KC_L`                 |          |`l` and `L`                                    |
57 |`KC_M`                 |          |`m` and `M`                                    |
58 |`KC_N`                 |          |`n` and `N`                                    |
59 |`KC_O`                 |          |`o` and `O`                                    |
60 |`KC_P`                 |          |`p` and `P`                                    |
61 |`KC_Q`                 |          |`q` and `Q`                                    |
62 |`KC_R`                 |          |`r` and `R`                                    |
63 |`KC_S`                 |          |`s` and `S`                                    |
64 |`KC_T`                 |          |`t` and `T`                                    |
65 |`KC_U`                 |          |`u` and `U`                                    |
66 |`KC_V`                 |          |`v` and `V`                                    |
67 |`KC_W`                 |          |`w` and `W`                                    |
68 |`KC_X`                 |          |`x` and `X`                                    |
69 |`KC_Y`                 |          |`y` and `Y`                                    |
70 |`KC_Z`                 |          |`z` and `Z`                                    |
71 |`KC_ENTER`             |`KC_ENT`  |Return (Enter)                                 |
72 |`KC_ESCAPE`            |`KC_ESC`  |Escape                                         |
73 |`KC_BSPACE`            |`KC_BSPC` |Delete (Backspace)                             |
74 |`KC_TAB`               |          |Tab                                            |
75 |`KC_SPACE`             |`KC_SPC`  |Spacebar                                       |
76 |`KC_MINUS`             |`KC_MINS` |`-` and `_`                                    |
77 |`KC_EQUAL`             |`KC_EQL`  |`=` and `+`                                    |
78 |`KC_LBRACKET`          |`KC_LBRC` |`[` and `{`                                    |
79 |`KC_RBRACKET`          |`KC_RBRC` |`]` and `}`                                    |
80 |`KC_BSLASH`            |`KC_BSLS` |`\` and <code>&#124;</code>                    |
81 |`KC_NONUS_HASH`        |`KC_NUHS` |Non-US `#` and `~`                             |
82 |`KC_NONUS_BSLASH`      |`KC_NUBS` |Non-US `\` and <code>&#124;</code>             |
83 |`KC_INT1`              |`KC_RO`   |JIS `\` and <code>&#124;</code>                |
84 |`KC_INT2`              |`KC_KANA` |JIS Katakana/Hiragana                          |
85 |`KC_INT3`              |`KC_JYEN` |JIS `¥`                                        |
86 |`KC_SCOLON`            |`KC_SCLN` |`;` and `:`                                    |
87 |`KC_QUOTE`             |`KC_QUOT` |`'` and `"`                                    |
88 |`KC_GRAVE`             |`KC_GRV`  |<code>&#96;</code> and `~`                     |
89 |`KC_COMMA`             |`KC_COMM` |`,` and `<`                                    |
90 |`KC_DOT`               |          |`.` and `>`                                    |
91 |`KC_SLASH`             |`KC_SLSH` |`/` and `?`                                    |
92 |`KC_CAPSLOCK`          |`KC_CAPS` |Caps Lock                                      |
93 |`KC_LCTRL`             |`KC_LCTL` |Left Control                                   |
94 |`KC_LSHIFT`            |`KC_LSFT` |Left Shift                                     |
95 |`KC_LALT`              |          |Left Alt                                       |
96 |`KC_LGUI`              |          |Left GUI (Windows/Command/Meta key)            |
97 |`KC_RCTRL`             |`KC_RCTL` |Right Control                                  |
98 |`KC_RSHIFT`            |`KC_RSFT` |Right Shift                                    |
99 |`KC_RALT`              |          |Right Alt                                      |
100 |`KC_RGUI`              |          |Right GUI (Windows/Command/Meta key)           |
101 |`KC_LOCKING_CAPS`      |`KC_LCAP` |Locking Caps Lock                              |
102 |`KC_LOCKING_NUM`       |`KC_LNUM` |Locking Num Lock                               |
103 |`KC_LOCKING_SCROLL`    |`KC_LSCR` |Locking Scroll Lock                            |
104 |`KC_INT4`              |`KC_HENK` |JIS Henkan                                     |
105 |`KC_INT5`              |`KC_MHEN` |JIS Muhenkan                                   |
106 |`KC_PSCREEN`           |`KC_PSCR` |Print Screen                                   |
107 |`KC_SCROLLLOCK`        |`KC_SLCK` |Scroll Lock                                    |
108 |`KC_PAUSE`             |`KC_PAUS` |Pause                                          |
109 |`KC_INSERT`            |`KC_INS`  |Insert                                         |
110 |`KC_HOME`              |          |Home                                           |
111 |`KC_PGUP`              |          |Page Up                                        |
112 |`KC_DELETE`            |`KC_DEL`  |Forward Delete                                 |
113 |`KC_END`               |          |End                                            |
114 |`KC_PGDOWN`            |`KC_PGDN` |Page Down                                      |
115 |`KC_RIGHT`             |`KC_RGHT` |Right Arrow                                    |
116 |`KC_LEFT`              |          |Left Arrow                                     |
117 |`KC_DOWN`              |          |Down Arrow                                     |
118 |`KC_UP`                |          |Up Arrow                                       |
119 |`KC_APPLICATION`       |`KC_APP`  |Application (Windows Menu Key)                 |
120 |`KC_POWER`             |          |Deprecated by MS in favor of `KC_SYSTEM_POWER`.|
121 |`KC_EXECUTE`           |          |Execute                                        |
122 |`KC_HELP`              |          |Help                                           |
123 |`KC_MENU`              |          |Menu                                           |
124 |`KC_SELECT`            |          |Select                                         |
125 |`KC_AGAIN`             |          |Again                                          |
126 |`KC_UNDO`              |          |Undo                                           |
127 |`KC_CUT`               |          |Cut                                            |
128 |`KC_COPY`              |          |Copy                                           |
129 |`KC_PASTE`             |          |Paste                                          |
130 |`KC_FIND`              |          |Find                                           |
131 |`KC_ALT_ERASE`         |          |Alternate Erase                                |
132 |`KC_SYSREQ`            |          |SysReq/Attention                               |
133 |`KC_CANCEL`            |          |Cancel                                         |
134 |`KC_CLEAR`             |          |Clear                                          |
135 |`KC_PRIOR`             |          |Prior                                          |
136 |`KC_RETURN`            |          |Return                                         |
137 |`KC_SEPARATOR`         |          |Separator                                      |
138 |`KC_OUT`               |          |Out                                            |
139 |`KC_OPER`              |          |Oper                                           |
140 |`KC_CLEAR_AGAIN`       |          |Clear/Again                                    |
141 |`KC_CRSEL`             |          |CrSel/Props                                    |
142 |`KC_EXSEL`             |          |ExSel                                          |
143 |`KC_SYSTEM_POWER`      |`KC_PWR`  |System Power Down. Recommended over `KC_POWER`.|
144 |`KC_SYSTEM_SLEEP`      |`KC_SLEP` |System Sleep                                   |
145 |`KC_SYSTEM_WAKE`       |`KC_WAKE` |System Wake                                    |
146 |`KC_MAIL`              |`KC_MAIL` |                                               |
147 |`KC_CALCULATOR`        |`KC_CALC` |                                               |
148 |`KC_MY_COMPUTER`       |`KC_MYCM` |                                               |
149 |`KC_WWW_SEARCH`        |`KC_WSCH` |                                               |
150 |`KC_WWW_HOME`          |`KC_WHOM` |                                               |
151 |`KC_WWW_BACK`          |`KC_WBAK` |                                               |
152 |`KC_WWW_FORWARD`       |`KC_WFWD` |                                               |
153 |`KC_WWW_STOP`          |`KC_WSTP` |                                               |
154 |`KC_WWW_REFRESH`       |`KC_WREF` |                                               |
155 |`KC_WWW_FAVORITES`     |`KC_WFAV` |                                               |
156 |`KC_STOP`              |          |Stop                                           |
157 |`KC__MUTE`             |          |Mute (macOS)                                   |
158 |`KC__VOLUP`            |          |Volume Up (macOS)                              |
159 |`KC__VOLDOWN`          |          |Volume Down (macOS)                            |
160 |`KC_AUDIO_MUTE`        |`KC_MUTE` |Mute (Windows/macOS/Linux)                     |
161 |`KC_AUDIO_VOL_UP`      |`KC_VOLU` |Volume Up (Windows/macOS/Linux)                |
162 |`KC_AUDIO_VOL_DOWN`    |`KC_VOLD` |Volume Down (Windows/macOS/Linux)              |
163 |`KC_MEDIA_NEXT_TRACK`  |`KC_MNXT` |Next Track (Windows)                           |
164 |`KC_MEDIA_PREV_TRACK`  |`KC_MPRV` |Previous Track (Windows)                       |
165 |`KC_MEDIA_FAST_FORWARD`|`KC_MFFD` |Next Track (macOS)                             |
166 |`KC_MEDIA_REWIND`      |`KC_MRWD` |Previous Track (macOS)                         |
167 |`KC_MEDIA_STOP`        |`KC_MSTP` |Stop Track                                     |
168 |`KC_MEDIA_PLAY_PAUSE`  |`KC_MPLY` |Play/Pause Track                               |
169 |`KC_MEDIA_SELECT`      |`KC_MSEL` |                                               |
170 |`KC_NUMLOCK`           |`KC_NLCK` |Keypad Num Lock and Clear                      |
171 |`KC_KP_SLASH`          |`KC_PSLS` |Keypad `/`                                     |
172 |`KC_KP_ASTERISK`       |`KC_PAST` |Keypad `*`                                     |
173 |`KC_KP_MINUS`          |`KC_PMNS` |Keypad `-`                                     |
174 |`KC_KP_PLUS`           |`KC_PPLS` |Keypad `+`                                     |
175 |`KC_KP_ENTER`          |`KC_PENT` |Keypad Enter                                   |
176 |`KC_KP_1`              |`KC_P1`   |Keypad `1` and End                             |
177 |`KC_KP_2`              |`KC_P2`   |Keypad `2` and Down Arrow                      |
178 |`KC_KP_3`              |`KC_P3`   |Keypad `3` and Page Down                       |
179 |`KC_KP_4`              |`KC_P4`   |Keypad `4` and Left Arrow                      |
180 |`KC_KP_5`              |`KC_P5`   |Keypad `5`                                     |
181 |`KC_KP_6`              |`KC_P6`   |Keypad `6` and Right Arrow                     |
182 |`KC_KP_7`              |`KC_P7`   |Keypad `7` and Home                            |
183 |`KC_KP_8`              |`KC_P8`   |Keypad `8` and Up Arrow                        |
184 |`KC_KP_9`              |`KC_P9`   |Keypad `9` and Page Up                         |
185 |`KC_KP_0`              |`KC_P0`   |Keypad `0` and Insert                          |
186 |`KC_KP_DOT`            |`KC_PDOT` |Keypad `.` and Delete                          |
187 |`KC_KP_EQUAL`          |`KC_PEQL` |Keypad `=`                                     |
188 |`KC_KP_COMMA`          |`KC_PCMM` |Keypad `,`                                     |
189 |`KC_KP_EQUAL_AS400`    |          |Keypad `=` on AS/400 keyboards                 |
190 |`KC_NO`                |          |Ignore this key (NOOP)                         |
191 |`KC_TRANSPARENT`       |`KC_TRNS` |Use the next lowest non-transparent key        |
192
193 ## [Mouse Keys](feature_mouse_keys.md)
194
195 |Key             |Aliases  |Description                |
196 |----------------|---------|---------------------------|
197 |`KC_MS_UP`      |`KC_MS_U`|Mouse Cursor Up            |
198 |`KC_MS_DOWN`    |`KC_MS_D`|Mouse Cursor Down          |
199 |`KC_MS_LEFT`    |`KC_MS_L`|Mouse Cursor Left          |
200 |`KC_MS_RIGHT`   |`KC_MS_R`|Mouse Cursor Right         |
201 |`KC_MS_BTN1`    |`KC_BTN1`|Mouse Button 1             |
202 |`KC_MS_BTN2`    |`KC_BTN2`|Mouse Button 2             |
203 |`KC_MS_BTN3`    |`KC_BTN3`|Mouse Button 3             |
204 |`KC_MS_BTN4`    |`KC_BTN4`|Mouse Button 4             |
205 |`KC_MS_BTN5`    |`KC_BTN5`|Mouse Button 5             |
206 |`KC_MS_WH_UP`   |`KC_WH_U`|Mouse Wheel Up             |
207 |`KC_MS_WH_DOWN` |`KC_WH_D`|Mouse Wheel Down           |
208 |`KC_MS_WH_LEFT` |`KC_WH_L`|Mouse Wheel Left           |
209 |`KC_MS_WH_RIGHT`|`KC_WH_R`|Mouse Wheel Right          |
210 |`KC_MS_ACCEL0`  |`KC_ACL0`|Set mouse acceleration to 0|
211 |`KC_MS_ACCEL1`  |`KC_ACL1`|Set mouse acceleration to 1|
212 |`KC_MS_ACCEL2`  |`KC_ACL2`|Set mouse acceleration to 2|
213
214 ## [Quantum Keycodes](quantum_keycodes.md#qmk-keycodes)
215
216 |Key          |Aliases    |Description                                                          |
217 |-------------|-----------|---------------------------------------------------------------------|
218 |`RESET`      |           |Put the keyboard into DFU mode for flashing                          |
219 |`DEBUG`      |           |Toggle debug mode                                                    |
220 |`KC_GESC`    |`GRAVE_ESC`|Escape when tapped, <code>&#96;</code> when pressed with Shift or GUI|
221 |`KC_LSPO`    |           |Left Shift when held, `(` when tapped                                |
222 |`KC_RSPC`    |           |Right Shift when held, `)` when tapped                               |
223 |`KC_LEAD`    |           |The [Leader key](feature_leader_key.md)                              |
224 |`KC_LOCK`    |           |The [Lock key](feature_key_lock.md)                                  |
225 |`FUNC(n)`    |`F(n)`     |Call `fn_action(n)` (deprecated)                                     |
226 |`M(n)`       |           |Call macro `n`                                                       |
227 |`MACROTAP(n)`|           |Macro-tap `n` idk FIXME                                              |
228
229 ## [Bootmagic](feature_bootmagic.md)
230
231 |Key                               |Aliases  |Description                         |
232 |----------------------------------|---------|------------------------------------|
233 |`MAGIC_SWAP_CONTROL_CAPSLOCK`     |         |Swap Caps Lock and Left Control     |
234 |`MAGIC_CAPSLOCK_TO_CONTROL`       |         |Treat Caps Lock as Control          |
235 |`MAGIC_SWAP_LALT_LGUI`            |         |Swap Left Alt and GUI               |
236 |`MAGIC_SWAP_RALT_RGUI`            |         |Swap Right Alt and GUI              |
237 |`MAGIC_NO_GUI`                    |         |Disable the GUI key                 |
238 |`MAGIC_SWAP_GRAVE_ESC`            |         |Swap <code>&#96;</code> and Escape  |
239 |`MAGIC_SWAP_BACKSLASH_BACKSPACE`  |         |Swap `\` and Backspace              |
240 |`MAGIC_HOST_NKRO`                 |         |Force NKRO on                       |
241 |`MAGIC_SWAP_ALT_GUI`              |`AG_SWAP`|Swap Alt and GUI on both sides      |
242 |`MAGIC_UNSWAP_CONTROL_CAPSLOCK`   |         |Unswap Caps Lock and Left Control   |
243 |`MAGIC_UNCAPSLOCK_TO_CONTROL`     |         |Stop treating Caps Lock as Control  |
244 |`MAGIC_UNSWAP_LALT_LGUI`          |         |Unswap Left Alt and GUI             |
245 |`MAGIC_UNSWAP_RALT_RGUI`          |         |Unswap Right Alt and GUI            |
246 |`MAGIC_UNNO_GUI`                  |         |Enable the GUI key                  |
247 |`MAGIC_UNSWAP_GRAVE_ESC`          |         |Unswap <code>&#96;</code> and Escape|
248 |`MAGIC_UNSWAP_BACKSLASH_BACKSPACE`|         |Unswap `\` and Backspace            |
249 |`MAGIC_UNHOST_NKRO`               |         |Force NKRO off                      |
250 |`MAGIC_UNSWAP_ALT_GUI`            |`AG_NORM`|Unswap Alt and GUI on both sides    |
251 |`MAGIC_TOGGLE_NKRO`               |         |Turn NKRO on or off                 |
252
253 ## [Backlighting](feature_backlight.md)
254
255 |Key      |Description                               |
256 |---------|------------------------------------------|
257 |`BL_TOGG`|Turn the backlight on or off              |
258 |`BL_STEP`|Cycle through backlight levels            |
259 |`BL_ON`  |Set the backlight to max brightness       |
260 |`BL_OFF` |Turn the backlight off                    |
261 |`BL_INC` |Increase the backlight level              |
262 |`BL_DEC` |Decrease the backlight level              |
263 |`BL_BRTG`|Toggle backlight breathing                |
264
265 ## [RGB Lighting](feature_rgblight.md)
266
267 |Key                |Aliases   |Description                                                         |
268 |-------------------|----------|--------------------------------------------------------------------|
269 |`RGB_TOG`          |          |Toggle RGB lighting on or off                                       |
270 |`RGB_MODE_FORWARD` |`RGB_MOD` |Cycle through modes, reverse direction when Shift is held           |
271 |`RGB_MODE_REVERSE` |`RGB_RMOD`|Cycle through modes in reverse, forward direction when Shift is held|
272 |`RGB_HUI`          |          |Increase hue                                                        |
273 |`RGB_HUD`          |          |Decrease hue                                                        |
274 |`RGB_SAI`          |          |Increase saturation                                                 |
275 |`RGB_SAD`          |          |Decrease saturation                                                 |
276 |`RGB_VAI`          |          |Increase value (brightness)                                         |
277 |`RGB_VAD`          |          |Decrease value (brightness)                                         |
278 |`RGB_MODE_PLAIN`   |`RGB_M_P `|Static (no animation) mode                                          |
279 |`RGB_MODE_BREATHE` |`RGB_M_B` |Breathing animation mode                                            |
280 |`RGB_MODE_RAINBOW` |`RGB_M_R` |Rainbow animation mode                                              |
281 |`RGB_MODE_SWIRL`   |`RGB_M_SW`|Swirl animation mode                                                |
282 |`RGB_MODE_SNAKE`   |`RGB_M_SN`|Snake animation mode                                                |
283 |`RGB_MODE_KNIGHT`  |`RGB_M_K` |"Knight Rider" animation mode                                       |
284 |`RGB_MODE_XMAS`    |`RGB_M_X` |Christmas animation mode                                            |
285 |`RGB_MODE_GRADIENT`|`RGB_M_G` |Static gradient animation mode                                      |
286
287 ## [Thermal Printer](feature_thermal_printer.md)
288
289 |Key        |Description                             |
290 |-----------|----------------------------------------|
291 |`PRINT_ON` |Start printing everything the user types|
292 |`PRINT_OFF`|Stop printing everything the user types |
293
294 ## [Bluetooth](feature_bluetooth.md)
295
296 |Key       |Description                                   |
297 |----------|----------------------------------------------|
298 |`OUT_AUTO`|Automatically switch between USB and Bluetooth|
299 |`OUT_USB` |USB only                                      |
300 |`OUT_BT`  |Bluetooth only                                |
301
302 ## [Modifiers](quantum_keycodes.md#modifiers)
303
304 |Key       |Aliases   |Description                                         |
305 |----------|----------|----------------------------------------------------|
306 |`KC_HYPR` |          |Hold Left Control, Shift, Alt and GUI               |
307 |`KC_MEH`  |          |Hold Left Control, Shift and Alt                    |
308 |`LCTL(kc)`|          |Hold Left Control and press `kc`                    |
309 |`LSFT(kc)`|`S(kc)`   |Hold Left Shift and press `kc`                      |
310 |`LALT(kc)`|          |Hold Left Alt and press `kc`                        |
311 |`LGUI(kc)`|          |Hold Left GUI and press `kc`                        |
312 |`RCTL(kc)`|          |Hold Right Control and press `kc`                   |
313 |`RSFT(kc)`|          |Hold Right Shift and press `kc`                     |
314 |`RALT(kc)`|          |Hold Right Alt and press `kc`                       |
315 |`RGUI(kc)`|          |Hold Right GUI and press `kc`                       |
316 |`HYPR(kc)`|          |Hold Left Control, Shift, Alt and GUI and press `kc`|
317 |`MEH(kc)` |          |Hold Left Control, Shift and Alt and press `kc`     |
318 |`LCAG(kc)`|          |Hold Left Control, Alt and GUI and press `kc`       |
319 |`ALTG(kc)`|          |Hold Right Control and Alt and press `kc`           |
320 |`SCMD(kc)`|`SWIN(kc)`|Hold Left Shift and GUI and press `kc`              |
321 |`LCA(kc)` |          |Hold Left Control and Alt and press `kc`            |
322
323 ## [Mod-Tap Keys](quantum_keycodes.md#mod-tap-keys)
324
325 |Key         |Aliases     |Description                                            |
326 |------------|------------|-------------------------------------------------------|
327 |`LCTL_T(kc)`|`CTL_T(kc)` |Left Control when held, `kc` when tapped               |
328 |`RCTL_T(kc)`|            |Right Control when held, `kc` when tapped              |
329 |`LSFT_T(kc)`|`SFT_T(kc)` |Left Shift when held, `kc` when tapped                 |
330 |`RSFT_T(kc)`|            |Right Shift when held, `kc` when tapped                |
331 |`LALT_T(kc)`|`ALT_T(kc)` |Left Alt when held, `kc` when tapped                   |
332 |`RALT_T(kc)`|`ALGR_T(kc)`|Right Alt when held, `kc` when tapped                  |
333 |`LGUI_T(kc)`|`GUI_T(kc)` |Left GUI when held, `kc` when tapped                   |
334 |`RGUI_T(kc)`|            |Right GUI when held, `kc` when tapped                  |
335 |`C_S_T(kc)` |            |Left Control and Shift when held, `kc` when tapped     |
336 |`MEH_T(kc)` |            |Left Control, Shift and Alt when held, `kc` when tapped|
337 |`LCAG_T(kc)`|            |Left Control, Alt and GUI when held, `kc` when tapped  |
338 |`RCAG_T(kc)`|            |Right Control, Alt and GUI when held, `kc` when tapped |
339 |`ALL_T(kc)` |            |Left Control, Shift, Alt and GUI when held, `kc` when tapped - more info [here](http://brettterpstra.com/2012/12/08/a-useful-caps-lock-key/)|
340 |`SCMD_T(kc)`|`SWIN_T(kc)`|Left Shift and GUI when held, `kc` when tapped         |
341 |`LCA_T(kc)` |            |Left Control and Alt when held, `kc` when tapped       |
342
343 ## [US ANSI Shifted Keys](keycodes_us_ansi_shifted.md)
344
345 |Key                     |Aliases           |Description        |
346 |------------------------|------------------|-------------------|
347 |`KC_TILDE`              |`KC_TILD`         |`~`                |
348 |`KC_EXCLAIM`            |`KC_EXLM`         |`!`                |
349 |`KC_AT`                 |                  |`@`                |
350 |`KC_HASH`               |                  |`#`                |
351 |`KC_DOLLAR`             |`KC_DLR`          |`$`                |
352 |`KC_PERCENT`            |`KC_PERC`         |`%`                |
353 |`KC_CIRCUMFLEX`         |`KC_CIRC`         |`^`                |
354 |`KC_AMPERSAND`          |`KC_AMPR`         |`&`                |
355 |`KC_ASTERISK`           |`KC_ASTR`         |`*`                |
356 |`KC_LEFT_PAREN`         |`KC_LPRN`         |`(`                |
357 |`KC_RIGHT_PAREN`        |`KC_RPRN`         |`)`                |
358 |`KC_UNDERSCORE`         |`KC_UNDS`         |`_`                |
359 |`KC_PLUS`               |                  |`+`                |
360 |`KC_LEFT_CURLY_BRACE`   |`KC_LCBR`         |`{`                |
361 |`KC_RIGHT_CURLY_BRACE`  |`KC_RCBR`         |`}`                |
362 |`KC_PIPE`               |                  |<code>&#124;</code>|
363 |`KC_COLON`              |`KC_COLN`         |`:`                |
364 |`KC_DOUBLE_QUOTE`       |`KC_DQT`/`KC_DQUO`|`"`                |
365 |`KC_LEFT_ANGLE_BRACKET` |`KC_LT`/`KC_LABK` |`<`                |
366 |`KC_RIGHT_ANGLE_BRACKET`|`KC_GT`/`KC_RABK` |`>`                |
367 |`KC_QUESTION`           |`KC_QUES`         |`?`                |
368
369 ## [Switching and Toggling Layers](feature_common_shortcuts.md#switching-and-toggling-layers)
370
371 |Key            |Description                                                                       |
372 |---------------|----------------------------------------------------------------------------------|
373 |`LT(layer, kc)`|Turn on `layer` when held, `kc` when tapped                                       |
374 |`TO(layer)`    |Turn on `layer` when pressed                                                      |
375 |`MO(layer)`    |Momentarily turn on `layer` when pressed (requires `KC_TRNS` on destination layer)|
376 |`DF(layer)`    |Set the base (default) layer                                                      |
377 |`TG(layer)`    |Toggle `layer` on or off                                                          |
378 |`TT(layer)`    |Tap toggle? idk FIXME                                                             |
379
380 ## [One Shot Keys](quantum_keycodes.md#one-shot-keys)
381
382 |Key         |Description                       |
383 |------------|----------------------------------|
384 |`OSM(mod)`  |Hold `mod` for one keypress       |
385 |`OSL(layer)`|Switch to `layer` for one keypress|
386
387 ## [Unicode Support](feature_unicode.md)
388
389 |Key         |Aliases|                                                 |
390 |------------|-------|-------------------------------------------------|
391 |`UNICODE(n)`|`UC(n)`|Send Unicode character `n`                       |
392 |`X(n)`      |       |Send Unicode character `n` via a different method|