diff options
author | Callum Oakley <callum@pusher.com> | 2017-08-19 10:34:45 +0100 |
---|---|---|
committer | Callum Oakley <callum@pusher.com> | 2017-08-19 10:34:45 +0100 |
commit | a6845036e25c4f4d936dcd12cd0ddedd2894b30e (patch) | |
tree | b23b4e8d9d757aa3c0d42be561572533ae0d126c /docs/quantum_keycodes.md | |
parent | 84a8aabe5bf8807595f98de44d18f6a31b892edf (diff) | |
parent | 7277f09bbadcce120f819132dec8ff7172caacc4 (diff) | |
download | firmware-a6845036e25c4f4d936dcd12cd0ddedd2894b30e.tar.gz firmware-a6845036e25c4f4d936dcd12cd0ddedd2894b30e.tar.bz2 firmware-a6845036e25c4f4d936dcd12cd0ddedd2894b30e.zip |
Merge branch 'master' of https://github.com/qmk/qmk_firmware
Diffstat (limited to 'docs/quantum_keycodes.md')
-rw-r--r-- | docs/quantum_keycodes.md | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/docs/quantum_keycodes.md b/docs/quantum_keycodes.md new file mode 100644 index 000000000..a5160bf94 --- /dev/null +++ b/docs/quantum_keycodes.md @@ -0,0 +1,22 @@ +# Quantum Keycodes + +Quantum keycodes allow for easier customisation 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 + +|Name|Description| +|----|-----------| +|`RESET`|Put the keyboard into DFU mode for flashing| +|`DEBUG`|Toggles debug mode| +|`KC_GESC`/`GRAVE_ESC`|Acts as escape when pressed normally but when pressed with Shift or GUI will send a ```| +|`KC_LSPO`|Left shift when held, open paranthesis when tapped| +|`KC_RSPC`|Right shift when held, close paranthesis when tapped| +|`KC_LEAD`|The [leader key](feature_leader_key.md)| +|`KC_LOCK`|The [lock key](key_lock.md)| +|`FUNC(n)`/`F(n)`|Call `fn_action(n)` (deprecated)| +|`M(n)`|to call macro n| +|`MACROTAP(n)`|to macro-tap n idk FIXME| |