aboutsummaryrefslogtreecommitdiff
path: root/docs/feature_advanced_keycodes.md
diff options
context:
space:
mode:
authorridingqwerty <george.g.koenig@gmail.com>2020-01-17 15:49:23 -0500
committerGitHub <noreply@github.com>2020-01-17 15:49:23 -0500
commit95c24bbaf8ed2b3c9ee79226dea782dc84764c56 (patch)
treeb261a23add06ad615e4503cf423bf788b1b050ba /docs/feature_advanced_keycodes.md
parent1b0854fdca06d24324eecbb565702bbd337ef339 (diff)
downloadqmk_firmware-95c24bbaf8ed2b3c9ee79226dea782dc84764c56.tar.gz
qmk_firmware-95c24bbaf8ed2b3c9ee79226dea782dc84764c56.zip
Implement and document TAPPING_FORCE_HOLD_PER_KEY (#7859)
* Implement and document TAPPING_FORCE_HOLD_PER_KEY * Added "record" parameter to "get_tapping_force_hold" * Correct typo -- remove 'IGNORE_' from 'IGNORE_TAPPING_FORCE_HOLD_PER_KEY' Co-authored-by: GeorgeKoenig <35542036+GeorgeKoenig@users.noreply.github.com>
Diffstat (limited to 'docs/feature_advanced_keycodes.md')
-rw-r--r--docs/feature_advanced_keycodes.md38
1 files changed, 38 insertions, 0 deletions
diff --git a/docs/feature_advanced_keycodes.md b/docs/feature_advanced_keycodes.md
index ec3807f40..ebb24dc99 100644
--- a/docs/feature_advanced_keycodes.md
+++ b/docs/feature_advanced_keycodes.md
@@ -291,6 +291,25 @@ Normally, this would send `X` (`SHIFT`+`x`). With `Ignore Mod Tap Interrupt` ena
291 291
292?> If you have `Permissive Hold` enabled, as well, this will modify how both work. The regular key has the modifier added if the first key is released first or if both keys are held longer than the `TAPPING_TERM`. 292?> If you have `Permissive Hold` enabled, as well, this will modify how both work. The regular key has the modifier added if the first key is released first or if both keys are held longer than the `TAPPING_TERM`.
293 293
294For more granular control of this feature, you can add the following to your `config.h`:
295
296```c
297#define IGNORE_MOD_TAP_INTERRUPT_PER_KEY
298```
299
300You can then add the following function to your keymap:
301
302```c
303bool get_ignore_mod_tap_interrupt(uint16_t keycode) {
304 switch (keycode) {
305 case SFT_T(KC_SPC):
306 return true;
307 default:
308 return false;
309 }
310}
311```
312
294## Tapping Force Hold 313## Tapping Force Hold
295 314
296To enable `tapping force hold`, add the following to your `config.h`: 315To enable `tapping force hold`, add the following to your `config.h`:
@@ -315,6 +334,25 @@ With `TAPPING_FORCE_HOLD`, the second press will be interpreted as a Shift, allo
315 334
316!> `TAPPING_FORCE_HOLD` will break anything that uses tapping toggles (Such as the `TT` layer keycode, and the One Shot Tapping Toggle). 335!> `TAPPING_FORCE_HOLD` will break anything that uses tapping toggles (Such as the `TT` layer keycode, and the One Shot Tapping Toggle).
317 336
337For more granular control of this feature, you can add the following to your `config.h`:
338
339```c
340#define TAPPING_FORCE_HOLD_PER_KEY
341```
342
343You can then add the following function to your keymap:
344
345```c
346bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
347 switch (keycode) {
348 case LT(1, KC_BSPC):
349 return true;
350 default:
351 return false;
352 }
353}
354```
355
318## Retro Tapping 356## Retro Tapping
319 357
320To enable `retro tapping`, add the following to your `config.h`: 358To enable `retro tapping`, add the following to your `config.h`: