02655690f4
* [Core] Add KC_MAKE keycode to core fix linting fix testing error work around test idiocyncracies fix more lint something something stupid tests add doc * updates based on feedback * Add bad names * Fixup docs * semantics but cleaner Co-authored-by: precondition <57645186+precondition@users.noreply.github.com> * Hide oneshot checks behind preprocessors * Move no-compile option around * Fix formatting * make shift optional * Make opt in * fix formatting * update send string function name Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: precondition <57645186+precondition@users.noreply.github.com> Co-authored-by: Joel Challis <git@zvecr.com>
17 lines
1.5 KiB
Markdown
17 lines
1.5 KiB
Markdown
# Quantum Keycodes
|
|
|
|
Quantum keycodes allow for easier customization of your keymap than the basic ones provide, without having to define custom actions.
|
|
|
|
All keycodes within quantum are numbers between `0x0000` and `0xFFFF`. Within your `keymap.c` it may look like you have functions and other special cases, but ultimately the C preprocessor will translate those into a single 4 byte integer. QMK has reserved `0x0000` through `0x00FF` for standard keycodes. These are keycodes such as `KC_A`, `KC_1`, and `KC_LCTL`, which are basic keys defined in the USB HID specification.
|
|
|
|
On this page we have documented keycodes between `0x00FF` and `0xFFFF` which are used to implement advanced quantum features. If you define your own custom keycodes they will be put into this range as well.
|
|
|
|
## QMK Keycodes :id=qmk-keycodes
|
|
|
|
|Key |Aliases |Description |
|
|
|-----------------|---------|---------------------------------------------------------------------------------|
|
|
|`QK_BOOTLOADER` |`QK_BOOT`|Put the keyboard into bootloader mode for flashing |
|
|
|`QK_DEBUG_TOGGLE`|`DB_TOGG`|Toggle debug mode |
|
|
|`QK_CLEAR_EEPROM`|`EE_CLR` |Reinitializes the keyboard's EEPROM (persistent memory) |
|
|
|`QK_MAKE` | |Sends `qmk compile -kb (keyboard) -km (keymap)`, or `qmk flash` if shift is held |
|