summaryrefslogtreecommitdiff
path: root/docs/feature_combo.md
diff options
context:
space:
mode:
authorDrashna Jaelre <drashna@live.com>2019-07-16 01:37:19 -0700
committerskullydazed <skullydazed@users.noreply.github.com>2019-07-16 01:37:19 -0700
commitc44fc68297029da87233777aff6978d39caebbb1 (patch)
treef580b1ae96684577caa899a8180a2f9cb4a81aca /docs/feature_combo.md
parent5fa0a274eaf6c3f2b1dbd4e6e23a4c3b884f1d44 (diff)
downloadqmk_firmware-c44fc68297029da87233777aff6978d39caebbb1.tar.gz
qmk_firmware-c44fc68297029da87233777aff6978d39caebbb1.zip
Allow Combo feature to be enabled/disabled live (#6318)
* Add ability to enable/disable combos * Update documentation for Combo feature * Change keycodes for appeasement * Simplify combo_toggle function * Update names * Update combo docs to use tables
Diffstat (limited to 'docs/feature_combo.md')
-rw-r--r--docs/feature_combo.md32
1 files changed, 23 insertions, 9 deletions
diff --git a/docs/feature_combo.md b/docs/feature_combo.md
index 4cb1bcda08..9db7be5119 100644
--- a/docs/feature_combo.md
+++ b/docs/feature_combo.md
@@ -59,19 +59,12 @@ void process_combo_event(uint8_t combo_index, bool pressed) {
switch(combo_index) {
case ZC_COPY:
if (pressed) {
- register_code(KC_LCTL);
- register_code(KC_C);
- unregister_code(KC_C);
- unregister_code(KC_LCTL);
+ tap_code16(LCTL(KC_C));
}
break;
-
case XV_PASTE:
if (pressed) {
- register_code(KC_LCTL);
- register_code(KC_V);
- unregister_code(KC_V);
- unregister_code(KC_LCTL);
+ tap_code16(LCTL(KC_V));
}
break;
}
@@ -87,3 +80,24 @@ If you're using long combos, or even longer combos, you may run into issues with
In this case, you can add either `#define EXTRA_LONG_COMBOS` or `#define EXTRA_EXTRA_LONG_COMBOS` in your `config.h` file.
You may also be able to enable action keys by defining `COMBO_ALLOW_ACTION_KEYS`.
+
+## Keycodes
+
+You can enable, disable and toggle the Combo feature on the fly. This is useful if you need to disable them temporarily, such as for a game.
+
+|Keycode |Description |
+|----------|---------------------------------|
+|`CMB_ON` |Turns on Combo feature |
+|`CMB_OFF` |Turns off Combo feature |
+|`CMB_TOG` |Toggles Combo feature on and off |
+
+## User callbacks
+
+In addition to the keycodes, there are a few functions that you can use to set the status, or check it:
+
+|Function |Description |
+|-----------|--------------------------------------------------------------------|
+| `combo_enable()` | Enables the combo feature |
+| `combo_disable()` | Disables the combo feature, and clears the combo buffer |
+| `combo_toggle()` | Toggles the state of the combo feature |
+| `is_combo_enabled()` | Returns the status of the combo feature state (true or false) |