diff --git a/data/mappings/info_config.hjson b/data/mappings/info_config.hjson
index 414439d6e714..479b1579dac2 100644
--- a/data/mappings/info_config.hjson
+++ b/data/mappings/info_config.hjson
@@ -111,8 +111,6 @@
"SOFT_SERIAL_SPEED": {"info_key": "split.soft_serial_speed"},
"TAP_CODE_DELAY": {"info_key": "qmk.tap_keycode_delay", "value_type": "int"},
"TAP_HOLD_CAPS_DELAY": {"info_key": "qmk.tap_capslock_delay", "value_type": "int"},
- "TAPPING_FORCE_HOLD": {"info_key": "tapping.force_hold", "value_type": "bool"},
- "TAPPING_FORCE_HOLD_PER_KEY": {"info_key": "tapping.force_hold_per_key", "value_type": "bool"},
"TAPPING_TERM": {"info_key": "tapping.term", "value_type": "int"},
"TAPPING_TERM_PER_KEY": {"info_key": "tapping.term_per_key", "value_type": "bool"},
"TAPPING_TOGGLE": {"info_key": "tapping.toggle", "value_type": "int"},
@@ -129,6 +127,8 @@
"UNUSED_PINS": {"info_key": "_invalid.unused_pins", "deprecated": true},
"RGBLIGHT_ANIMATIONS": {"info_key": "_invalid.rgblight.animations.all", "value_type": "bool", "invalid": true},
"QMK_KEYS_PER_SCAN": {"info_key": "qmk.keys_per_scan", "value_type": "int", "deprecated": true},
+ "TAPPING_FORCE_HOLD": {"info_key": "tapping.force_hold", "value_type": "bool", "deprecated": true},
+ "TAPPING_FORCE_HOLD_PER_KEY": {"info_key": "tapping.force_hold_per_key", "value_type": "bool", "deprecated": true},
// USB params, need to mark as failure when specified in config.h, rather than deprecated
"PRODUCT_ID": {"info_key": "usb.pid", "value_type": "hex", "deprecated": true, "replace_with": "`usb.pid` in info.json"},
diff --git a/docs/config_options.md b/docs/config_options.md
index 6b1f83214c7b..edaa739201aa 100644
--- a/docs/config_options.md
+++ b/docs/config_options.md
@@ -171,12 +171,13 @@ If you define these options you will enable the associated feature, which may in
* See [Ignore Mod Tap Interrupt](tap_hold.md#ignore-mod-tap-interrupt) for details
* `#define IGNORE_MOD_TAP_INTERRUPT_PER_KEY`
* enables handling for per key `IGNORE_MOD_TAP_INTERRUPT` settings
-* `#define TAPPING_FORCE_HOLD`
- * makes it possible to use a dual role key as modifier shortly after having been tapped
- * See [Tapping Force Hold](tap_hold.md#tapping-force-hold)
- * Breaks any Tap Toggle functionality (`TT` or the One Shot Tap Toggle)
-* `#define TAPPING_FORCE_HOLD_PER_KEY`
- * enables handling for per key `TAPPING_FORCE_HOLD` settings
+* `#define QUICK_TAP_TERM 100`
+ * tap-then-hold timing to use a dual role key to repeat keycode
+ * See [Quick Tap Term](tap_hold.md#quick-tap-term)
+ * Changes the timing of Tap Toggle functionality (`TT` or the One Shot Tap Toggle)
+ * Defaults to `TAPPING_TERM` if not defined
+* `#define QUICK_TAP_TERM_PER_KEY`
+ * enables handling for per key `QUICK_TAP_TERM` settings
* `#define LEADER_TIMEOUT 300`
* how long before the leader key times out
* If you're having issues finishing the sequence before it times out, you may need to increase the timeout setting. Or you may want to enable the `LEADER_PER_KEY_TIMING` option, which resets the timeout after each key is tapped.
diff --git a/docs/tap_hold.md b/docs/tap_hold.md
index 8914b730b38e..fa6c6abc14de 100644
--- a/docs/tap_hold.md
+++ b/docs/tap_hold.md
@@ -375,49 +375,50 @@ bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t *record) {
}
```
-## Tapping Force Hold
+## Quick Tap Term
-To enable `tapping force hold`, add the following to your `config.h`:
+When the user holds a key after tapping it, the tapping function is repeated by default, rather than activating the hold function. This allows keeping the ability to auto-repeat the tapping function of a dual-role key. `QUICK_TAP_TERM` enables fine tuning of that ability. If set to `0`, it will remove the auto-repeat ability and activate the hold function instead.
+
+`QUICK_TAP_TERM` is set to `TAPPING_TERM` by default, which is the maximum allowed value for `QUICK_TAP_TERM`. To override its value (in milliseconds) add the following to your `config.h`:
```c
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 120
```
-When the user holds a key after tapping it, the tapping function is repeated by default, rather than activating the hold function. This allows keeping the ability to auto-repeat the tapping function of a dual-role key. `TAPPING_FORCE_HOLD` removes that ability to let the user activate the hold function instead, in the case of holding the dual-role key after having tapped it.
-
Example:
- `SFT_T(KC_A)` Down
- `SFT_T(KC_A)` Up
- `SFT_T(KC_A)` Down
-- wait until the tapping term expires...
-- `SFT_T(KC_A)` Up
+- (wait until tapping term expires...)
-With default settings, `a` will be sent on the first release, then `a` will be sent on the second press allowing the computer to trigger its auto-repeat function.
+With default settings, `a` will be sent on the first release, then `a` will be sent on the second press allowing the computer to trigger its auto repeat function until the key is released.
-With `TAPPING_FORCE_HOLD`, the second press will be interpreted as a Shift, allowing to use it as a modifier shortly after having used it as a tap.
+With `QUICK_TAP_TERM` configured, the timing between `SFT_T(KC_A)` up and `SFT_T(KC_A)` down must be within `QUICK_TAP_TERM` to trigger auto repeat. Otherwise the second press will be sent as a Shift. If `QUICK_TAP_TERM` is set to `0`, the second press will always be sent as a Shift, effectively disabling auto-repeat.
-!> `TAPPING_FORCE_HOLD` will break anything that uses tapping toggles (Such as the `TT` layer keycode, and the One Shot Tap Toggle).
+!> `QUICK_TAP_TERM` timing will also impact anything that uses tapping toggles (Such as the `TT` layer keycode, and the One Shot Tap Toggle).
For more granular control of this feature, you can add the following to your `config.h`:
```c
-#define TAPPING_FORCE_HOLD_PER_KEY
+#define QUICK_TAP_TERM_PER_KEY
```
You can then add the following function to your keymap:
```c
-bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
+uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
- case LT(1, KC_BSPC):
- return true;
+ case SFT_T(KC_SPC):
+ return QUICK_TAP_TERM - 20;
default:
- return false;
+ return QUICK_TAP_TERM;
}
}
```
+?> If `QUICK_TAP_TERM` is set higher than `TAPPING_TERM`, it will default to `TAPPING_TERM`.
+
## Retro Tapping
To enable `retro tapping`, add the following to your `config.h`:
diff --git a/keyboards/25keys/zinc/rev1/config.h b/keyboards/25keys/zinc/rev1/config.h
index 947f5ccfb164..c2322556bcaa 100644
--- a/keyboards/25keys/zinc/rev1/config.h
+++ b/keyboards/25keys/zinc/rev1/config.h
@@ -17,7 +17,7 @@ along with this program. If not, see .
#pragma once
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
/* Use I2C or Serial */
diff --git a/keyboards/25keys/zinc/reva/config.h b/keyboards/25keys/zinc/reva/config.h
index 54a26cd5bc80..d8c12a726ed0 100644
--- a/keyboards/25keys/zinc/reva/config.h
+++ b/keyboards/25keys/zinc/reva/config.h
@@ -17,7 +17,7 @@ along with this program. If not, see .
#pragma once
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
/* Use I2C or Serial */
diff --git a/keyboards/40percentclub/gherkin/keymaps/pierrec83/config.h b/keyboards/40percentclub/gherkin/keymaps/pierrec83/config.h
index a635e944c172..bde9ec205571 100644
--- a/keyboards/40percentclub/gherkin/keymaps/pierrec83/config.h
+++ b/keyboards/40percentclub/gherkin/keymaps/pierrec83/config.h
@@ -28,4 +28,4 @@
#define TAPPING_TERM 200
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
diff --git a/keyboards/40percentclub/gherkin/keymaps/stevexyz/config.h b/keyboards/40percentclub/gherkin/keymaps/stevexyz/config.h
index bd6fd9d1d0e8..243b953f68dc 100644
--- a/keyboards/40percentclub/gherkin/keymaps/stevexyz/config.h
+++ b/keyboards/40percentclub/gherkin/keymaps/stevexyz/config.h
@@ -16,7 +16,7 @@
#define IGNORE_MOD_TAP_INTERRUPT
// makes it possible to do rolling combos (zx) with keys that convert to other keys on hold, by enforcing the TAPPING_TERM for both keys.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// makes it possible to use a dual role key as modifier shortly after having been tapped (see Hold after tap)
// Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
diff --git a/keyboards/adm42/rev4/keymaps/default/config.h b/keyboards/adm42/rev4/keymaps/default/config.h
index 38c012e93897..4082d84a3aa3 100644
--- a/keyboards/adm42/rev4/keymaps/default/config.h
+++ b/keyboards/adm42/rev4/keymaps/default/config.h
@@ -1,3 +1,3 @@
#define HOLD_ON_OTHER_KEY_PRESS_PER_KEY
-#define TAPPING_FORCE_HOLD_PER_KEY
+#define QUICK_TAP_TERM_PER_KEY
#define IGNORE_MOD_TAP_INTERRUPT_PER_KEY
diff --git a/keyboards/adm42/rev4/keymaps/default/keymap.c b/keyboards/adm42/rev4/keymaps/default/keymap.c
index 109796f7aea3..245a3bd4ded5 100644
--- a/keyboards/adm42/rev4/keymaps/default/keymap.c
+++ b/keyboards/adm42/rev4/keymaps/default/keymap.c
@@ -114,13 +114,13 @@ bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {
}
}
-bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
+uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case LLS_ESC:
case LLS_RALT:
- return true;
+ return 0;
default:
- return false;
+ return QUICK_TAP_TERM;
}
}
diff --git a/keyboards/arabica37/keymaps/default/config.h b/keyboards/arabica37/keymaps/default/config.h
index eed6b7221b5c..57ce4cc0c187 100644
--- a/keyboards/arabica37/keymaps/default/config.h
+++ b/keyboards/arabica37/keymaps/default/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 170
#undef RGBLED_NUM
diff --git a/keyboards/atreus/keymaps/kejadlen/config.h b/keyboards/atreus/keymaps/kejadlen/config.h
index 437bfa326eb4..5a9573c57f82 100644
--- a/keyboards/atreus/keymaps/kejadlen/config.h
+++ b/keyboards/atreus/keymaps/kejadlen/config.h
@@ -8,6 +8,6 @@
#define DIODE_DIRECTION COL2ROW
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define USB_MAX_POWER_CONSUMPTION 50
diff --git a/keyboards/b_sides/rev41lp/keymaps/namnlos/config.h b/keyboards/b_sides/rev41lp/keymaps/namnlos/config.h
index b6f2866c466b..1ad3156afa87 100644
--- a/keyboards/b_sides/rev41lp/keymaps/namnlos/config.h
+++ b/keyboards/b_sides/rev41lp/keymaps/namnlos/config.h
@@ -26,7 +26,7 @@
#define UNICODE_SELECTED_MODES UNICODE_MODE_WINCOMPOSE, UNICODE_MODE_WINDOWS, UNICODE_MODE_MACOS, UNICODE_MODE_LINUX
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define TAPPING_TERM_PER_KEY
diff --git a/keyboards/basekeys/slice/keymaps/default/config.h b/keyboards/basekeys/slice/keymaps/default/config.h
index 3dc07fdac1d2..f1d6eef419ab 100644
--- a/keyboards/basekeys/slice/keymaps/default/config.h
+++ b/keyboards/basekeys/slice/keymaps/default/config.h
@@ -18,5 +18,5 @@ along with this program. If not, see .
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/basekeys/slice/keymaps/default_split_left_space/config.h b/keyboards/basekeys/slice/keymaps/default_split_left_space/config.h
index 3dc07fdac1d2..f1d6eef419ab 100644
--- a/keyboards/basekeys/slice/keymaps/default_split_left_space/config.h
+++ b/keyboards/basekeys/slice/keymaps/default_split_left_space/config.h
@@ -18,5 +18,5 @@ along with this program. If not, see .
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/basekeys/slice/rev1/keymaps/2moons/config.h b/keyboards/basekeys/slice/rev1/keymaps/2moons/config.h
index 8f38938b10da..3807c29fa7b4 100644
--- a/keyboards/basekeys/slice/rev1/keymaps/2moons/config.h
+++ b/keyboards/basekeys/slice/rev1/keymaps/2moons/config.h
@@ -18,6 +18,6 @@ along with this program. If not, see .
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
//#define MASTER_RIGHT
diff --git a/keyboards/basekeys/slice/rev1/keymaps/default_all/config.h b/keyboards/basekeys/slice/rev1/keymaps/default_all/config.h
index 3dc07fdac1d2..f1d6eef419ab 100644
--- a/keyboards/basekeys/slice/rev1/keymaps/default_all/config.h
+++ b/keyboards/basekeys/slice/rev1/keymaps/default_all/config.h
@@ -18,5 +18,5 @@ along with this program. If not, see .
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/config.h b/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/config.h
index 3dc07fdac1d2..f1d6eef419ab 100644
--- a/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/config.h
+++ b/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/config.h
@@ -18,5 +18,5 @@ along with this program. If not, see .
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/basekeys/slice/rev1/keymaps/via/config.h b/keyboards/basekeys/slice/rev1/keymaps/via/config.h
index 3dc07fdac1d2..f1d6eef419ab 100644
--- a/keyboards/basekeys/slice/rev1/keymaps/via/config.h
+++ b/keyboards/basekeys/slice/rev1/keymaps/via/config.h
@@ -18,5 +18,5 @@ along with this program. If not, see .
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/basekeys/slice/rev1_rgb/keymaps/2moons_rgb/config.h b/keyboards/basekeys/slice/rev1_rgb/keymaps/2moons_rgb/config.h
index 8f38938b10da..3807c29fa7b4 100644
--- a/keyboards/basekeys/slice/rev1_rgb/keymaps/2moons_rgb/config.h
+++ b/keyboards/basekeys/slice/rev1_rgb/keymaps/2moons_rgb/config.h
@@ -18,6 +18,6 @@ along with this program. If not, see .
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
//#define MASTER_RIGHT
diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/config.h b/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/config.h
index cceba7c1fb16..0d11c53e889d 100644
--- a/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/config.h
+++ b/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/config.h
@@ -43,7 +43,7 @@
*
* See docs.qmk.fm/using-qmk/software-features/tap_hold#tapping-force-hold
*/
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
/*
* Tap-or-Hold decision modes.
diff --git a/keyboards/bastardkb/dilemma/3x5_2/keymaps/bstiq/config.h b/keyboards/bastardkb/dilemma/3x5_2/keymaps/bstiq/config.h
index cbe8e7bba733..2390d10ca561 100644
--- a/keyboards/bastardkb/dilemma/3x5_2/keymaps/bstiq/config.h
+++ b/keyboards/bastardkb/dilemma/3x5_2/keymaps/bstiq/config.h
@@ -41,7 +41,7 @@
*
* See docs.qmk.fm/using-qmk/software-features/tap_hold#tapping-force-hold
*/
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
/*
* Tap-or-Hold decision modes.
diff --git a/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/config.h b/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/config.h
index 139b1f06eaff..fce6c3a1f693 100644
--- a/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/config.h
+++ b/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/config.h
@@ -37,7 +37,7 @@
* Enable rapid switch from tap to hold. Disable auto-repeat when pressing key
* twice, except for one-shot keys.
*/
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
/*
* Tap-or-Hold decision modes.
diff --git a/keyboards/bastardkb/scylla/keymaps/cykedev/config.h b/keyboards/bastardkb/scylla/keymaps/cykedev/config.h
index 3b2fa15b96f8..43037350f6d0 100644
--- a/keyboards/bastardkb/scylla/keymaps/cykedev/config.h
+++ b/keyboards/bastardkb/scylla/keymaps/cykedev/config.h
@@ -32,7 +32,7 @@
// #define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-// #define TAPPING_FORCE_HOLD
+// #define QUICK_TAP_TERM 0
// Apply the modifier on keys that are tapped during a short hold of a modtap
// #define PERMISSIVE_HOLD
diff --git a/keyboards/bastardkb/scylla/keymaps/xyverz/config.h b/keyboards/bastardkb/scylla/keymaps/xyverz/config.h
index d7baf9937613..335f968e2a87 100644
--- a/keyboards/bastardkb/scylla/keymaps/xyverz/config.h
+++ b/keyboards/bastardkb/scylla/keymaps/xyverz/config.h
@@ -25,7 +25,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
#define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 300
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/bastardkb/tbk/keymaps/xyverz/config.h b/keyboards/bastardkb/tbk/keymaps/xyverz/config.h
index d7baf9937613..335f968e2a87 100644
--- a/keyboards/bastardkb/tbk/keymaps/xyverz/config.h
+++ b/keyboards/bastardkb/tbk/keymaps/xyverz/config.h
@@ -25,7 +25,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
#define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 300
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/buzzard/keymaps/crehmann/config.h b/keyboards/buzzard/keymaps/crehmann/config.h
index d5d9a9bb83be..c5638c767dda 100644
--- a/keyboards/buzzard/keymaps/crehmann/config.h
+++ b/keyboards/buzzard/keymaps/crehmann/config.h
@@ -10,7 +10,7 @@
#define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// Apply the modifier on keys that are tapped during a short hold of a modtap
#define PERMISSIVE_HOLD
diff --git a/keyboards/buzzard/keymaps/default/config.h b/keyboards/buzzard/keymaps/default/config.h
index 76294cf78a90..0f1db48977ec 100644
--- a/keyboards/buzzard/keymaps/default/config.h
+++ b/keyboards/buzzard/keymaps/default/config.h
@@ -10,7 +10,7 @@
#define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// Apply the modifier on keys that are tapped during a short hold of a modtap
#define PERMISSIVE_HOLD
diff --git a/keyboards/clickety_split/leeloo/keymaps/default/config.h b/keyboards/clickety_split/leeloo/keymaps/default/config.h
index 7a8d0f5bd61c..c94457997282 100644
--- a/keyboards/clickety_split/leeloo/keymaps/default/config.h
+++ b/keyboards/clickety_split/leeloo/keymaps/default/config.h
@@ -26,7 +26,7 @@
#undef TAPPING_TERM
#define IGNORE_MOD_TAP_INTERRUPT
- #define TAPPING_FORCE_HOLD
+ #define QUICK_TAP_TERM 0
#define TAPPING_TERM 150
#endif
diff --git a/keyboards/crkbd/keymaps/ajarov/config.h b/keyboards/crkbd/keymaps/ajarov/config.h
index 4c408112bd47..d993e8e6595e 100644
--- a/keyboards/crkbd/keymaps/ajarov/config.h
+++ b/keyboards/crkbd/keymaps/ajarov/config.h
@@ -27,7 +27,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
//#define TAPPING_TERM 100
#ifdef RGBLIGHT_ENABLE
diff --git a/keyboards/crkbd/keymaps/antosha417/config.h b/keyboards/crkbd/keymaps/antosha417/config.h
index 4b6e86fd6ba0..bfe2b143d231 100644
--- a/keyboards/crkbd/keymaps/antosha417/config.h
+++ b/keyboards/crkbd/keymaps/antosha417/config.h
@@ -10,7 +10,7 @@
#define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#ifdef RGBLIGHT_ENABLE
#undef RGBLED_NUM
diff --git a/keyboards/crkbd/keymaps/ardakilic/config.h b/keyboards/crkbd/keymaps/ardakilic/config.h
index 7a3bb76b38ae..95e7ddb3296f 100644
--- a/keyboards/crkbd/keymaps/ardakilic/config.h
+++ b/keyboards/crkbd/keymaps/ardakilic/config.h
@@ -31,7 +31,7 @@ along with this program. If not, see .
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/crkbd/keymaps/armand1m/config.h b/keyboards/crkbd/keymaps/armand1m/config.h
index 095879a190f8..f4b8c08a3fad 100644
--- a/keyboards/crkbd/keymaps/armand1m/config.h
+++ b/keyboards/crkbd/keymaps/armand1m/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-// #define TAPPING_FORCE_HOLD
+// #define QUICK_TAP_TERM 0
// #define PERMISSIVE_HOLD
#define TAPPING_TERM 300
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/crkbd/keymaps/benrestech/config.h b/keyboards/crkbd/keymaps/benrestech/config.h
index b112aed743be..f70089988359 100644
--- a/keyboards/crkbd/keymaps/benrestech/config.h
+++ b/keyboards/crkbd/keymaps/benrestech/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
#define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 175
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/crkbd/keymaps/bermeo/config.h b/keyboards/crkbd/keymaps/bermeo/config.h
index cadb39783403..188f717abaab 100644
--- a/keyboards/crkbd/keymaps/bermeo/config.h
+++ b/keyboards/crkbd/keymaps/bermeo/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-// #define TAPPING_FORCE_HOLD
+// #define QUICK_TAP_TERM 0
#define TAPPING_TERM 150
// #define RETRO_TAPPING
// #define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/crkbd/keymaps/blipson/config.h b/keyboards/crkbd/keymaps/blipson/config.h
index 19947958369b..ca69ac3873f2 100644
--- a/keyboards/crkbd/keymaps/blipson/config.h
+++ b/keyboards/crkbd/keymaps/blipson/config.h
@@ -25,7 +25,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#ifdef RGBLIGHT_ENABLE
diff --git a/keyboards/crkbd/keymaps/colemad/config.h b/keyboards/crkbd/keymaps/colemad/config.h
index 6d2050e14803..b52c669ea9ed 100644
--- a/keyboards/crkbd/keymaps/colemad/config.h
+++ b/keyboards/crkbd/keymaps/colemad/config.h
@@ -2,7 +2,7 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#ifdef RGB_MATRIX_ENABLE
diff --git a/keyboards/crkbd/keymaps/crkdves/config.h b/keyboards/crkbd/keymaps/crkdves/config.h
index 52d4fdd93a65..ca025830b42b 100644
--- a/keyboards/crkbd/keymaps/crkdves/config.h
+++ b/keyboards/crkbd/keymaps/crkdves/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
// #define RETRO_TAPPING
// #define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/crkbd/keymaps/crkqwes/config.h b/keyboards/crkbd/keymaps/crkqwes/config.h
index 878f9a74e180..bf33cc90aa09 100644
--- a/keyboards/crkbd/keymaps/crkqwes/config.h
+++ b/keyboards/crkbd/keymaps/crkqwes/config.h
@@ -32,7 +32,7 @@ along with this program. If not, see .
#undef USE_I2C
#undef SSD1306OLED
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
// #define RETRO_TAPPING
// #define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/crkbd/keymaps/default/config.h b/keyboards/crkbd/keymaps/default/config.h
index 8f4d73ca22bf..4e70141dad6d 100644
--- a/keyboards/crkbd/keymaps/default/config.h
+++ b/keyboards/crkbd/keymaps/default/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
//#define TAPPING_TERM 100
#ifdef RGBLIGHT_ENABLE
diff --git a/keyboards/crkbd/keymaps/devdev/config.h b/keyboards/crkbd/keymaps/devdev/config.h
index 14067d1e74d3..337a86df8e9d 100644
--- a/keyboards/crkbd/keymaps/devdev/config.h
+++ b/keyboards/crkbd/keymaps/devdev/config.h
@@ -34,7 +34,7 @@ along with this program. If not, see .
#define CUSTOM_LAYER_READ //if you remove this it causes issues - needs better guarding
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define RGBLIGHT_SLEEP
diff --git a/keyboards/crkbd/keymaps/edvorakjp/config.h b/keyboards/crkbd/keymaps/edvorakjp/config.h
index 8787ba88d3bf..ee4e7388be36 100644
--- a/keyboards/crkbd/keymaps/edvorakjp/config.h
+++ b/keyboards/crkbd/keymaps/edvorakjp/config.h
@@ -8,7 +8,7 @@
#define SWAP_SCLN
-// #define TAPPING_FORCE_HOLD
+// #define QUICK_TAP_TERM 0
#define TAPPING_TERM 300
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/crkbd/keymaps/hvp/config.h b/keyboards/crkbd/keymaps/hvp/config.h
index e569a59bc9bc..a926f6753706 100644
--- a/keyboards/crkbd/keymaps/hvp/config.h
+++ b/keyboards/crkbd/keymaps/hvp/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
//#define TAPPING_TERM 100
#define TAPPING_TERM 150
diff --git a/keyboards/crkbd/keymaps/jarred/config.h b/keyboards/crkbd/keymaps/jarred/config.h
index c6c80469ed23..c95deb1abb14 100644
--- a/keyboards/crkbd/keymaps/jarred/config.h
+++ b/keyboards/crkbd/keymaps/jarred/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
//#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/crkbd/keymaps/julian_turner/config.h b/keyboards/crkbd/keymaps/julian_turner/config.h
index fbe5277c40e5..3b875235a8f8 100644
--- a/keyboards/crkbd/keymaps/julian_turner/config.h
+++ b/keyboards/crkbd/keymaps/julian_turner/config.h
@@ -29,6 +29,6 @@
#define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
//#define OLED_FONT_H "keyboards/crkbd/lib/glcdfont.c"
diff --git a/keyboards/crkbd/keymaps/kidbrazil/config.h b/keyboards/crkbd/keymaps/kidbrazil/config.h
index 74f8a0823b32..33655b4c9dba 100644
--- a/keyboards/crkbd/keymaps/kidbrazil/config.h
+++ b/keyboards/crkbd/keymaps/kidbrazil/config.h
@@ -29,7 +29,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 150
#undef PRODUCT
#define PRODUCT "CRKBD Loose Transistor Ed."
diff --git a/keyboards/crkbd/keymaps/madhatter/config.h b/keyboards/crkbd/keymaps/madhatter/config.h
index 599bbc27c3c9..afdaf1c1fd0b 100644
--- a/keyboards/crkbd/keymaps/madhatter/config.h
+++ b/keyboards/crkbd/keymaps/madhatter/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#ifdef RGBLIGHT_ENABLE
diff --git a/keyboards/crkbd/keymaps/nimishgautam/config.h b/keyboards/crkbd/keymaps/nimishgautam/config.h
index b09d8588986c..53b5f1b834ea 100644
--- a/keyboards/crkbd/keymaps/nimishgautam/config.h
+++ b/keyboards/crkbd/keymaps/nimishgautam/config.h
@@ -19,7 +19,7 @@
#define EXTRA_SHORT_COMBOS
//Tapping values
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define IGNORE_MOD_TAP_INTERRUPT
#define PERMISSIVE_HOLD_PER_KEY
diff --git a/keyboards/crkbd/keymaps/ninjonas/config.h b/keyboards/crkbd/keymaps/ninjonas/config.h
index 174c67876992..fa3711ce8f7a 100644
--- a/keyboards/crkbd/keymaps/ninjonas/config.h
+++ b/keyboards/crkbd/keymaps/ninjonas/config.h
@@ -24,7 +24,7 @@ along with this program. If not, see .
#define MASTER_LEFT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#ifdef RGB_MATRIX_ENABLE
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120
diff --git a/keyboards/crkbd/keymaps/oled_sample/config.h b/keyboards/crkbd/keymaps/oled_sample/config.h
index cd24f74744f1..14718b26d164 100644
--- a/keyboards/crkbd/keymaps/oled_sample/config.h
+++ b/keyboards/crkbd/keymaps/oled_sample/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/crkbd/keymaps/ollyhayes/config.h b/keyboards/crkbd/keymaps/ollyhayes/config.h
index 4c5100518185..9ad1ce2c58e0 100644
--- a/keyboards/crkbd/keymaps/ollyhayes/config.h
+++ b/keyboards/crkbd/keymaps/ollyhayes/config.h
@@ -18,7 +18,7 @@
#define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#define NO_ACTION_ONESHOT
diff --git a/keyboards/crkbd/keymaps/oo/config.h b/keyboards/crkbd/keymaps/oo/config.h
index 8dc71430a109..814d227d7d05 100644
--- a/keyboards/crkbd/keymaps/oo/config.h
+++ b/keyboards/crkbd/keymaps/oo/config.h
@@ -22,7 +22,7 @@ along with this program. If not, see .
#define SPLIT_USB_DETECT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#define OLED_FONT_H "keyboards/crkbd/lib/glcdfont.c"
diff --git a/keyboards/crkbd/keymaps/rarick/config.h b/keyboards/crkbd/keymaps/rarick/config.h
index 3dc4003f757c..4a033596a896 100644
--- a/keyboards/crkbd/keymaps/rarick/config.h
+++ b/keyboards/crkbd/keymaps/rarick/config.h
@@ -27,7 +27,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#ifdef RGBLIGHT_ENABLE
diff --git a/keyboards/crkbd/keymaps/rjhilgefort/config.h b/keyboards/crkbd/keymaps/rjhilgefort/config.h
index 41d709d3a5cf..a7eb8b2a4fbe 100644
--- a/keyboards/crkbd/keymaps/rjhilgefort/config.h
+++ b/keyboards/crkbd/keymaps/rjhilgefort/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200 // 200 is default
#ifdef RGBLIGHT_ENABLE
diff --git a/keyboards/crkbd/keymaps/rs/config.h b/keyboards/crkbd/keymaps/rs/config.h
index 85b9b95a23ce..bbdb0d8106b3 100644
--- a/keyboards/crkbd/keymaps/rs/config.h
+++ b/keyboards/crkbd/keymaps/rs/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 300
#undef RGBLED_NUM
diff --git a/keyboards/crkbd/keymaps/sharkby7e/config.h b/keyboards/crkbd/keymaps/sharkby7e/config.h
index b1896bea90a5..0ff3549ba90a 100644
--- a/keyboards/crkbd/keymaps/sharkby7e/config.h
+++ b/keyboards/crkbd/keymaps/sharkby7e/config.h
@@ -27,7 +27,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/crkbd/keymaps/snowe/config.h b/keyboards/crkbd/keymaps/snowe/config.h
index 8bceb729d89b..b091cd790320 100644
--- a/keyboards/crkbd/keymaps/snowe/config.h
+++ b/keyboards/crkbd/keymaps/snowe/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/crkbd/keymaps/soundmonster/config.h b/keyboards/crkbd/keymaps/soundmonster/config.h
index 7cd9ecaed911..6cd090f9fd52 100644
--- a/keyboards/crkbd/keymaps/soundmonster/config.h
+++ b/keyboards/crkbd/keymaps/soundmonster/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-// #define TAPPING_FORCE_HOLD
+// #define QUICK_TAP_TERM 0
#define TAPPING_TERM 150
#define RETRO_TAPPING
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/crkbd/keymaps/thumb_ctrl/config.h b/keyboards/crkbd/keymaps/thumb_ctrl/config.h
index 6e54150c17c6..4191a14524bf 100755
--- a/keyboards/crkbd/keymaps/thumb_ctrl/config.h
+++ b/keyboards/crkbd/keymaps/thumb_ctrl/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 150
#undef RGBLED_NUM
diff --git a/keyboards/crkbd/keymaps/toinux/config.h b/keyboards/crkbd/keymaps/toinux/config.h
index 2ee5a4e182dd..c033076a5a0b 100644
--- a/keyboards/crkbd/keymaps/toinux/config.h
+++ b/keyboards/crkbd/keymaps/toinux/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
//#define TAPPING_TERM 100
#ifdef RGBLIGHT_ENABLE
diff --git a/keyboards/crkbd/keymaps/vayashiko/config.h b/keyboards/crkbd/keymaps/vayashiko/config.h
index 85a541285148..01a1210c81d9 100644
--- a/keyboards/crkbd/keymaps/vayashiko/config.h
+++ b/keyboards/crkbd/keymaps/vayashiko/config.h
@@ -30,7 +30,7 @@ along with this program. If not, see .
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/crkbd/keymaps/vlukash_trackpad_left/config.h b/keyboards/crkbd/keymaps/vlukash_trackpad_left/config.h
index 4a370ef43c76..8ff7589a9d04 100644
--- a/keyboards/crkbd/keymaps/vlukash_trackpad_left/config.h
+++ b/keyboards/crkbd/keymaps/vlukash_trackpad_left/config.h
@@ -5,7 +5,7 @@
#define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/crkbd/keymaps/vlukash_trackpad_right/config.h b/keyboards/crkbd/keymaps/vlukash_trackpad_right/config.h
index 257c9df97bbf..cddd09e5b633 100644
--- a/keyboards/crkbd/keymaps/vlukash_trackpad_right/config.h
+++ b/keyboards/crkbd/keymaps/vlukash_trackpad_right/config.h
@@ -12,7 +12,7 @@
/* Select hand configuration */
#define MASTER_RIGHT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 300
#undef RGBLED_NUM
diff --git a/keyboards/crkbd/keymaps/vxid/config.h b/keyboards/crkbd/keymaps/vxid/config.h
index 5b18de236e30..1960e1319470 100644
--- a/keyboards/crkbd/keymaps/vxid/config.h
+++ b/keyboards/crkbd/keymaps/vxid/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
#define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/crkbd/keymaps/xyverz/config.h b/keyboards/crkbd/keymaps/xyverz/config.h
index 47a18105bdb6..2ccbb229b869 100644
--- a/keyboards/crkbd/keymaps/xyverz/config.h
+++ b/keyboards/crkbd/keymaps/xyverz/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
#define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 300
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/crkbd/rev1/keymaps/dvorak_42_key/config.h b/keyboards/crkbd/rev1/keymaps/dvorak_42_key/config.h
index d4d7a264d39c..fcf6befb1659 100644
--- a/keyboards/crkbd/rev1/keymaps/dvorak_42_key/config.h
+++ b/keyboards/crkbd/rev1/keymaps/dvorak_42_key/config.h
@@ -11,7 +11,7 @@
#define MASTER_RIGHT
// #define EE_HANDS
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
//#define TAPPING_TERM 100
// #define DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD
diff --git a/keyboards/dztech/dz60rgb/keymaps/kgreulich/config.h b/keyboards/dztech/dz60rgb/keymaps/kgreulich/config.h
index 7b408ba7bdc0..a5235259ff0f 100644
--- a/keyboards/dztech/dz60rgb/keymaps/kgreulich/config.h
+++ b/keyboards/dztech/dz60rgb/keymaps/kgreulich/config.h
@@ -19,7 +19,7 @@
#endif // !NO_PRINT
#define NO_ACTION_ONESHOT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define IGNORE_MOD_TAP_INTERRUPT
// #include "config_led.h"
diff --git a/keyboards/dztech/dz60rgb/keymaps/matthewrobo/config.h b/keyboards/dztech/dz60rgb/keymaps/matthewrobo/config.h
index 786360c5a2b5..4ea0d150ea27 100644
--- a/keyboards/dztech/dz60rgb/keymaps/matthewrobo/config.h
+++ b/keyboards/dztech/dz60rgb/keymaps/matthewrobo/config.h
@@ -65,7 +65,7 @@
#endif // !NO_PRINT
#define NO_ACTION_ONESHOT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define IGNORE_MOD_TAP_INTERRUPT
// #include "config_led.h"
diff --git a/keyboards/dztech/dz60rgb/keymaps/xunz/config.h b/keyboards/dztech/dz60rgb/keymaps/xunz/config.h
index 2fdb3e5f4c58..c30221406148 100644
--- a/keyboards/dztech/dz60rgb/keymaps/xunz/config.h
+++ b/keyboards/dztech/dz60rgb/keymaps/xunz/config.h
@@ -49,5 +49,5 @@
// #define RGB_MATRIX_KEYRELEASES
#define NO_ACTION_ONESHOT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/dztech/dz65rgb/keymaps/matthewrobo/config.h b/keyboards/dztech/dz65rgb/keymaps/matthewrobo/config.h
index 6586ab58e4ac..93e6990950f6 100644
--- a/keyboards/dztech/dz65rgb/keymaps/matthewrobo/config.h
+++ b/keyboards/dztech/dz65rgb/keymaps/matthewrobo/config.h
@@ -59,7 +59,7 @@
#endif // !NO_PRINT
#define NO_ACTION_ONESHOT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define IGNORE_MOD_TAP_INTERRUPT
// #include "config_led.h"
diff --git a/keyboards/ergodox_ez/keymaps/hacker_dvorak/config.h b/keyboards/ergodox_ez/keymaps/hacker_dvorak/config.h
index acd3a44e1672..3f8c68ceb74f 100644
--- a/keyboards/ergodox_ez/keymaps/hacker_dvorak/config.h
+++ b/keyboards/ergodox_ez/keymaps/hacker_dvorak/config.h
@@ -78,7 +78,7 @@
// #define NO_PRINT
// #define RETRO_TAPPING
-// #define TAPPING_FORCE_HOLD
+// #define QUICK_TAP_TERM 0
// #define AUTO_SHIFT_TIMEOUT 150
// #define NO_AUTO_SHIFT_SPECIAL
diff --git a/keyboards/ergodox_ez/keymaps/stamm/config.h b/keyboards/ergodox_ez/keymaps/stamm/config.h
index e1db3d9002e2..f9e89d276fa0 100644
--- a/keyboards/ergodox_ez/keymaps/stamm/config.h
+++ b/keyboards/ergodox_ez/keymaps/stamm/config.h
@@ -32,8 +32,8 @@
#define IGNORE_MOD_TAP_INTERRUPT
#define IGNORE_MOD_TAP_INTERRUPT_PER_KEY
-#define TAPPING_FORCE_HOLD
-#define TAPPING_FORCE_HOLD_PER_KEY
+#define QUICK_TAP_TERM 0
+#define QUICK_TAP_TERM_PER_KEY
/* #define RETRO_TAPPING */
#undef LED_BRIGHTNESS_DEFAULT
diff --git a/keyboards/ergodox_ez/keymaps/stamm/keymap.c b/keyboards/ergodox_ez/keymaps/stamm/keymap.c
index 2b0aff636219..aa9debfe57cc 100644
--- a/keyboards/ergodox_ez/keymaps/stamm/keymap.c
+++ b/keyboards/ergodox_ez/keymaps/stamm/keymap.c
@@ -225,28 +225,25 @@ bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t *record) {
}
}
-
-bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case LT(_1_NUMBERS, KC_E):
- case R_MOUSE:
- case LSFT_T(KC_A):
- case LCTL_T(KC_S):
- case LALT_T(KC_D):
- case LGUI_T(KC_F):
- case RGUI_T(KC_J):
- case RALT_T(KC_K):
- case RCTL_T(KC_L):
- case RSFT_T(KC_SEMICOLON):
- case ARROWS:
- return false;
- default:
- return true;
- }
+uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case LT(_1_NUMBERS, KC_E):
+ case R_MOUSE:
+ case LSFT_T(KC_A):
+ case LCTL_T(KC_S):
+ case LALT_T(KC_D):
+ case LGUI_T(KC_F):
+ case RGUI_T(KC_J):
+ case RALT_T(KC_K):
+ case RCTL_T(KC_L):
+ case RSFT_T(KC_SEMICOLON):
+ case ARROWS:
+ return QUICK_TAP_TERM;
+ default:
+ return 0;
+ }
}
-
-
LEADER_EXTERNS();
void matrix_scan_user(void) {
diff --git a/keyboards/ferris/keymaps/bruun-baer/config.h b/keyboards/ferris/keymaps/bruun-baer/config.h
index 4f63ee544f90..5c2377be1e56 100644
--- a/keyboards/ferris/keymaps/bruun-baer/config.h
+++ b/keyboards/ferris/keymaps/bruun-baer/config.h
@@ -36,4 +36,4 @@ along with this program. If not, see .
#define TAPPING_TERM 200
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
diff --git a/keyboards/ferris/keymaps/default/config.h b/keyboards/ferris/keymaps/default/config.h
index 1937b64ffa16..b10555bb0d36 100644
--- a/keyboards/ferris/keymaps/default/config.h
+++ b/keyboards/ferris/keymaps/default/config.h
@@ -36,7 +36,7 @@ along with this program. If not, see .
#define TAPPING_TERM 200
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// Underglow configuration
#ifdef RGBLIGHT_ENABLE
diff --git a/keyboards/ferris/keymaps/pierrec83/config.h b/keyboards/ferris/keymaps/pierrec83/config.h
index 1937b64ffa16..b10555bb0d36 100644
--- a/keyboards/ferris/keymaps/pierrec83/config.h
+++ b/keyboards/ferris/keymaps/pierrec83/config.h
@@ -36,7 +36,7 @@ along with this program. If not, see .
#define TAPPING_TERM 200
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// Underglow configuration
#ifdef RGBLIGHT_ENABLE
diff --git a/keyboards/gl516/a52gl/keymaps/salicylic/config.h b/keyboards/gl516/a52gl/keymaps/salicylic/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/gl516/a52gl/keymaps/salicylic/config.h
+++ b/keyboards/gl516/a52gl/keymaps/salicylic/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/config.h b/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/config.h
index b0360ac95d55..0f71fedd0ec8 100644
--- a/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/config.h
+++ b/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/config.h
@@ -18,7 +18,7 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#ifdef RGBLED_NUM
diff --git a/keyboards/gl516/n51gl/keymaps/salicylic/config.h b/keyboards/gl516/n51gl/keymaps/salicylic/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/gl516/n51gl/keymaps/salicylic/config.h
+++ b/keyboards/gl516/n51gl/keymaps/salicylic/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/gl516/n51gl/keymaps/via/config.h b/keyboards/gl516/n51gl/keymaps/via/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/gl516/n51gl/keymaps/via/config.h
+++ b/keyboards/gl516/n51gl/keymaps/via/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/handwired/aranck/keymaps/turkishish/config.h b/keyboards/handwired/aranck/keymaps/turkishish/config.h
index 0810a3b23f0a..69c1beb03c9e 100644
--- a/keyboards/handwired/aranck/keymaps/turkishish/config.h
+++ b/keyboards/handwired/aranck/keymaps/turkishish/config.h
@@ -21,4 +21,4 @@
#define RETRO_TAPPING
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD
\ No newline at end of file
+#define QUICK_TAP_TERM 0
\ No newline at end of file
diff --git a/keyboards/handwired/brain/config.h b/keyboards/handwired/brain/config.h
index 317d25f5f54c..9aba789cc284 100644
--- a/keyboards/handwired/brain/config.h
+++ b/keyboards/handwired/brain/config.h
@@ -93,7 +93,7 @@ along with this program. If not, see .
//#define TAPPING_TERM 150
//#define IGNORE_MOD_TAP_INTERRUPT
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
#define BOOTMAGIC_LITE_ROW 0
#define BOOTMAGIC_LITE_COLUMN 6
diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/config.h b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/config.h
index 1e6e6e58c6f2..b8df581b7295 100644
--- a/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/config.h
+++ b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/config.h
@@ -27,7 +27,7 @@ along with this program. If not, see .
#define TAPPING_TERM_PER_KEY // milliseconds from tap to hold for mod tap per key
#define IGNORE_MOD_TAP_INTERRUPT // ignore hold mod if another tap occurs within tapping term
#define PERMISSIVE_HOLD_PER_KEY // activate mod top hold earlier if another key is pressed AND released per key
-#define TAPPING_FORCE_HOLD_PER_KEY // disable double tap hold key repeat per key
+#define QUICK_TAP_TERM_PER_KEY // disable double tap hold key repeat per key
#undef MOUSEKEY_INTERVAL
#undef MOUSEKEY_DELAY
#undef MOUSEKEY_TIME_TO_MAX
diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/keymap.c b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/keymap.c
index b5a8c82c4a46..7df7897ae995 100644
--- a/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/keymap.c
+++ b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/keymap.c
@@ -55,15 +55,15 @@ bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) {
}
// Tapping force hold per key
-bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case LT(3, KC_SPC):
- return true; // Enable force hold
- case LT(2, KC_TAB):
- return true;
- default:
- return false; // Disable force hold
- }
+uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case LT(3, KC_SPC):
+ return 0; // Enable force hold
+ case LT(2, KC_TAB):
+ return 0;
+ default:
+ return QUICK_TAP_TERM; // Disable force hold
+ }
}
// Tapping term per key
diff --git a/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/cykedev/config.h b/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/cykedev/config.h
index 5a94cd17607a..7b43dcb5d449 100644
--- a/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/cykedev/config.h
+++ b/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/cykedev/config.h
@@ -51,6 +51,6 @@
#define IGNORE_MOD_TAP_INTERRUPT_PER_KEY
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define FORCE_NKRO
diff --git a/keyboards/handwired/heisenberg/keymaps/turkishish/config.h b/keyboards/handwired/heisenberg/keymaps/turkishish/config.h
index 0810a3b23f0a..69c1beb03c9e 100644
--- a/keyboards/handwired/heisenberg/keymaps/turkishish/config.h
+++ b/keyboards/handwired/heisenberg/keymaps/turkishish/config.h
@@ -21,4 +21,4 @@
#define RETRO_TAPPING
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD
\ No newline at end of file
+#define QUICK_TAP_TERM 0
\ No newline at end of file
diff --git a/keyboards/helix/pico/config.h b/keyboards/helix/pico/config.h
index fadb3fe20426..3e3eacdaa5d7 100644
--- a/keyboards/helix/pico/config.h
+++ b/keyboards/helix/pico/config.h
@@ -19,7 +19,7 @@ along with this program. If not, see .
#pragma once
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
/* Soft Serial defines */
diff --git a/keyboards/helix/rev2/config.h b/keyboards/helix/rev2/config.h
index f409d039c4b9..460dce69e5c5 100644
--- a/keyboards/helix/rev2/config.h
+++ b/keyboards/helix/rev2/config.h
@@ -19,7 +19,7 @@ along with this program. If not, see .
#pragma once
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#define SPLIT_LAYER_STATE_ENABLE
diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/config.h b/keyboards/helix/rev2/keymaps/edvorakjp/config.h
index ca3b73aa29af..6854249be03d 100644
--- a/keyboards/helix/rev2/keymaps/edvorakjp/config.h
+++ b/keyboards/helix/rev2/keymaps/edvorakjp/config.h
@@ -2,7 +2,7 @@
#define SWAP_SCLN
-#undef TAPPING_FORCE_HOLD
+#undef QUICK_TAP_TERM
#undef TAPPING_TERM
#define TAPPING_TERM 300
#define IGNORE_MOD_TAP_INTERRUPT
@@ -11,13 +11,13 @@
// Selection of RGBLIGHT MODE to use.
#if defined(LED_ANIMATIONS)
-//# define RGBLIGHT_EFFECT_BREATHING
-//# define RGBLIGHT_EFFECT_RAINBOW_MOOD
-//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL
-//# define RGBLIGHT_EFFECT_SNAKE
-//# define RGBLIGHT_EFFECT_KNIGHT
-//# define RGBLIGHT_EFFECT_CHRISTMAS
+// # define RGBLIGHT_EFFECT_BREATHING
+// # define RGBLIGHT_EFFECT_RAINBOW_MOOD
+// # define RGBLIGHT_EFFECT_RAINBOW_SWIRL
+// # define RGBLIGHT_EFFECT_SNAKE
+// # define RGBLIGHT_EFFECT_KNIGHT
+// # define RGBLIGHT_EFFECT_CHRISTMAS
# define RGBLIGHT_EFFECT_STATIC_GRADIENT
-//# define RGBLIGHT_EFFECT_RGB_TEST
-//# define RGBLIGHT_EFFECT_ALTERNATING
-#endif // LED_ANIMATIONS
+// # define RGBLIGHT_EFFECT_RGB_TEST
+// # define RGBLIGHT_EFFECT_ALTERNATING
+#endif // LED_ANIMATIONS
diff --git a/keyboards/hidtech/bastyl/keymaps/xyverz/config.h b/keyboards/hidtech/bastyl/keymaps/xyverz/config.h
index d7baf9937613..335f968e2a87 100644
--- a/keyboards/hidtech/bastyl/keymaps/xyverz/config.h
+++ b/keyboards/hidtech/bastyl/keymaps/xyverz/config.h
@@ -25,7 +25,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
#define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 300
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/keebio/iris/keymaps/jhelvy/config.h b/keyboards/keebio/iris/keymaps/jhelvy/config.h
index c0192347324a..7ec5b41761d4 100644
--- a/keyboards/keebio/iris/keymaps/jhelvy/config.h
+++ b/keyboards/keebio/iris/keymaps/jhelvy/config.h
@@ -20,7 +20,7 @@ along with this program. If not, see .
// Had to swap the master to get the right-side rotary encoder supported
#define MASTER_RIGHT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#undef TAPPING_TERM
#define TAPPING_TERM 200
#define AUTO_SHIFT_TIMEOUT 150
diff --git a/keyboards/keebio/iris/keymaps/osiris/config.h b/keyboards/keebio/iris/keymaps/osiris/config.h
index 225a858131d3..eac14a72468e 100644
--- a/keyboards/keebio/iris/keymaps/osiris/config.h
+++ b/keyboards/keebio/iris/keymaps/osiris/config.h
@@ -37,6 +37,6 @@ along with this program. If not, see .
#define RGBLIGHT_VAL_STEP 8
// #undef PERMISSIVE_HOLD
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
//#define RETRO_TAPPING
#define PERMISSIVE_HOLD
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/34keys/config.h b/keyboards/kprepublic/bm40hsrgb/keymaps/34keys/config.h
index 7618683d10c0..a6a97d5b76bd 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/34keys/config.h
+++ b/keyboards/kprepublic/bm40hsrgb/keymaps/34keys/config.h
@@ -12,7 +12,7 @@
#define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// Mouse key speed and acceleration.
#undef MOUSEKEY_DELAY
diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/config.h b/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/config.h
index cbadc549017d..9d566d388d33 100644
--- a/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/config.h
+++ b/keyboards/kprepublic/bm40hsrgb/keymaps/gabustoledo/config.h
@@ -23,7 +23,7 @@
#define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// Auto Shift
#define NO_AUTO_SHIFT_ALPHA
diff --git a/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/peepeetee/config.h b/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/peepeetee/config.h
index e464db1e3649..c1f1a06a333a 100644
--- a/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/peepeetee/config.h
+++ b/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/peepeetee/config.h
@@ -44,7 +44,7 @@
// #define TAPPING_TOGGLE 2 // How many taps before triggering the toggle
// #define PERMISSIVE_HOLD // Makes tap and hold keys trigger the hold if another key is pressed before releasing, even if it hasn't hit the TAPPING_TERM. See Permissive Hold for details
// #define IGNORE_MOD_TAP_INTERRUPT // Makes it possible to do rolling combos (zx) with keys that convert to other keys on hold, by enforcing the TAPPING_TERM for both keys. See Mod tap interrupt for details
-// #define TAPPING_FORCE_HOLD // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
+// #define QUICK_TAP_TERM 0 // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
// #define LEADER_TIMEOUT 300 // How long before the leader key times out. If you're having issues finishing the sequence before it times out, you may need to increase the timeout setting. Or you may want to enable the LEADER_PER_KEY_TIMING option, which resets the timeout after each key is tapped.
// #define LEADER_PER_KEY_TIMING // Sets the timer for leader key chords to run on each key press rather than overall
// #define LEADER_KEY_STRICT_KEY_PROCESSING // Disables keycode filtering for Mod-Tap and Layer-Tap keycodes. Eg, if you enable this, you would need to specify MT(MOD_CTL, KC_A) if you want to use KC_A.
diff --git a/keyboards/kprepublic/bm80hsrgb/keymaps/peepeetee/config.h b/keyboards/kprepublic/bm80hsrgb/keymaps/peepeetee/config.h
index 6062ebbbbbf0..be172a8cf662 100644
--- a/keyboards/kprepublic/bm80hsrgb/keymaps/peepeetee/config.h
+++ b/keyboards/kprepublic/bm80hsrgb/keymaps/peepeetee/config.h
@@ -29,7 +29,7 @@
// #define TAPPING_TOGGLE 2 // How many taps before triggering the toggle
// #define PERMISSIVE_HOLD // Makes tap and hold keys trigger the hold if another key is pressed before releasing, even if it hasn't hit the TAPPING_TERM. See Permissive Hold for details
// #define IGNORE_MOD_TAP_INTERRUPT // Makes it possible to do rolling combos (zx) with keys that convert to other keys on hold, by enforcing the TAPPING_TERM for both keys. See Mod tap interrupt for details
-// #define TAPPING_FORCE_HOLD // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
+// #define QUICK_TAP_TERM 0 // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
// #define LEADER_TIMEOUT 300 // How long before the leader key times out. If you're having issues finishing the sequence before it times out, you may need to increase the timeout setting. Or you may want to enable the LEADER_PER_KEY_TIMING option, which resets the timeout after each key is tapped.
// #define LEADER_PER_KEY_TIMING // Sets the timer for leader key chords to run on each key press rather than overall
// #define LEADER_KEY_STRICT_KEY_PROCESSING // Disables keycode filtering for Mod-Tap and Layer-Tap keycodes. Eg, if you enable this, you would need to specify MT(MOD_CTL, KC_A) if you want to use KC_A.
diff --git a/keyboards/kprepublic/jj40/keymaps/stevexyz/config.h b/keyboards/kprepublic/jj40/keymaps/stevexyz/config.h
index c525cff819d1..3be7f6f0cbda 100644
--- a/keyboards/kprepublic/jj40/keymaps/stevexyz/config.h
+++ b/keyboards/kprepublic/jj40/keymaps/stevexyz/config.h
@@ -11,7 +11,7 @@
#define IGNORE_MOD_TAP_INTERRUPT
// makes it possible to do rolling combos (zx) with keys that convert to other keys on hold, by enforcing the TAPPING_TERM for both keys.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// makes it possible to use a dual role key as modifier shortly after having been tapped (see Hold after tap)
// Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
diff --git a/keyboards/lily58/keymaps/bongocat_wpm_responsive/config.h b/keyboards/lily58/keymaps/bongocat_wpm_responsive/config.h
index 09248850f2ce..e5d0aa669915 100644
--- a/keyboards/lily58/keymaps/bongocat_wpm_responsive/config.h
+++ b/keyboards/lily58/keymaps/bongocat_wpm_responsive/config.h
@@ -28,7 +28,7 @@
#define MASTER_LEFT
// #define EE_HANDS
- #define TAPPING_FORCE_HOLD
+ #define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#undef RGBLED_NUM
diff --git a/keyboards/lily58/keymaps/chuan/config.h b/keyboards/lily58/keymaps/chuan/config.h
index 7d989ba42e64..d952ce457be7 100644
--- a/keyboards/lily58/keymaps/chuan/config.h
+++ b/keyboards/lily58/keymaps/chuan/config.h
@@ -32,7 +32,7 @@ along with this program. If not, see .
// #define SSD1306OLED
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
/* define tapping term */
#define TAPPING_TERM 200
diff --git a/keyboards/lily58/keymaps/datadavd/config.h b/keyboards/lily58/keymaps/datadavd/config.h
index 83bbfff11ffc..19b372e569da 100644
--- a/keyboards/lily58/keymaps/datadavd/config.h
+++ b/keyboards/lily58/keymaps/datadavd/config.h
@@ -30,7 +30,7 @@ along with this program. If not, see .
// #define SSD1306OLED
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 50
#undef RGBLED_NUM
diff --git a/keyboards/lily58/keymaps/default/config.h b/keyboards/lily58/keymaps/default/config.h
index 79b1314456d2..b16e63b6d7ac 100644
--- a/keyboards/lily58/keymaps/default/config.h
+++ b/keyboards/lily58/keymaps/default/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/lily58/keymaps/domnantas/config.h b/keyboards/lily58/keymaps/domnantas/config.h
index f32a066c14f5..143a950ef244 100644
--- a/keyboards/lily58/keymaps/domnantas/config.h
+++ b/keyboards/lily58/keymaps/domnantas/config.h
@@ -30,5 +30,5 @@ along with this program. If not, see .
// #define SSD1306OLED
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
diff --git a/keyboards/lily58/keymaps/drasbeck/config.h b/keyboards/lily58/keymaps/drasbeck/config.h
index f510f7f7358b..01ba4faf7376 100644
--- a/keyboards/lily58/keymaps/drasbeck/config.h
+++ b/keyboards/lily58/keymaps/drasbeck/config.h
@@ -24,7 +24,7 @@ Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) 2020 Max Drasbeck
#define ENCODERS_PAD_B { F5 }
#define ENCODER_RESOLUTION 4
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#undef RGBLED_NUM
diff --git a/keyboards/lily58/keymaps/gaston/config.h b/keyboards/lily58/keymaps/gaston/config.h
index 621a0a9295c5..988e3eb6f837 100644
--- a/keyboards/lily58/keymaps/gaston/config.h
+++ b/keyboards/lily58/keymaps/gaston/config.h
@@ -22,5 +22,5 @@
#define MASTER_LEFT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 150 /* ms */
diff --git a/keyboards/lily58/keymaps/gshmu/config.h b/keyboards/lily58/keymaps/gshmu/config.h
index 08234a4d4bd1..84a79412dac6 100644
--- a/keyboards/lily58/keymaps/gshmu/config.h
+++ b/keyboards/lily58/keymaps/gshmu/config.h
@@ -17,7 +17,7 @@
#pragma once
#define TAPPING_TERM 200
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define PERMISSIVE_HOLD
#define DYNAMIC_TAPPING_TERM_INCREMENT 10
diff --git a/keyboards/lily58/keymaps/jhelvy/config.h b/keyboards/lily58/keymaps/jhelvy/config.h
index 4d4df5b102a3..dbd058a8b58b 100644
--- a/keyboards/lily58/keymaps/jhelvy/config.h
+++ b/keyboards/lily58/keymaps/jhelvy/config.h
@@ -30,7 +30,7 @@ along with this program. If not, see .
#define SSD1306OLED
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#undef TAPPING_TERM
#define TAPPING_TERM 200
diff --git a/keyboards/lily58/keymaps/mikefightsbears/config.h b/keyboards/lily58/keymaps/mikefightsbears/config.h
index 454f52c8682e..084b95d52f89 100644
--- a/keyboards/lily58/keymaps/mikefightsbears/config.h
+++ b/keyboards/lily58/keymaps/mikefightsbears/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/lily58/keymaps/muppetjones/config.h b/keyboards/lily58/keymaps/muppetjones/config.h
index bee5ee45da01..283a4ed89039 100644
--- a/keyboards/lily58/keymaps/muppetjones/config.h
+++ b/keyboards/lily58/keymaps/muppetjones/config.h
@@ -35,7 +35,7 @@ along with this program. If not, see .
#define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#undef RGBLED_NUM
diff --git a/keyboards/lily58/keymaps/narze/config.h b/keyboards/lily58/keymaps/narze/config.h
index e10c2bb38098..a6fac1a58b12 100644
--- a/keyboards/lily58/keymaps/narze/config.h
+++ b/keyboards/lily58/keymaps/narze/config.h
@@ -34,7 +34,7 @@ along with this program. If not, see .
#define IGNORE_MOD_TAP_INTERRUPT
#define PERMISSIVE_HOLD
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/lily58/keymaps/ninjonas/config.h b/keyboards/lily58/keymaps/ninjonas/config.h
index d67ac41a17fd..9c97dc9e3f81 100644
--- a/keyboards/lily58/keymaps/ninjonas/config.h
+++ b/keyboards/lily58/keymaps/ninjonas/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define OLED_FONT_H "keyboards/lily58/lib/glcdfont.c"
#define OLED_DISABLE_TIMEOUT
diff --git a/keyboards/lily58/keymaps/pttbx/config.h b/keyboards/lily58/keymaps/pttbx/config.h
index 79b1314456d2..b16e63b6d7ac 100644
--- a/keyboards/lily58/keymaps/pttbx/config.h
+++ b/keyboards/lily58/keymaps/pttbx/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/lily58/keymaps/via/config.h b/keyboards/lily58/keymaps/via/config.h
index a5dfe7c8d31f..331521bcbfa9 100644
--- a/keyboards/lily58/keymaps/via/config.h
+++ b/keyboards/lily58/keymaps/via/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
// Underglow
diff --git a/keyboards/lily58/keymaps/yshrsmz/config.h b/keyboards/lily58/keymaps/yshrsmz/config.h
index 454f52c8682e..084b95d52f89 100644
--- a/keyboards/lily58/keymaps/yshrsmz/config.h
+++ b/keyboards/lily58/keymaps/yshrsmz/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/lily58/keymaps/yuchi/config.h b/keyboards/lily58/keymaps/yuchi/config.h
index 1335b805cdea..8e07ec837fe9 100644
--- a/keyboards/lily58/keymaps/yuchi/config.h
+++ b/keyboards/lily58/keymaps/yuchi/config.h
@@ -30,5 +30,5 @@ along with this program. If not, see .
//#define OLED_DRIVER
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
diff --git a/keyboards/malevolti/lyra/keymaps/default/config.h b/keyboards/malevolti/lyra/keymaps/default/config.h
index 9c4bacd36d1b..3e8db641e169 100644
--- a/keyboards/malevolti/lyra/keymaps/default/config.h
+++ b/keyboards/malevolti/lyra/keymaps/default/config.h
@@ -26,5 +26,5 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
diff --git a/keyboards/malevolti/lyra/keymaps/via/config.h b/keyboards/malevolti/lyra/keymaps/via/config.h
index 9c4bacd36d1b..3e8db641e169 100644
--- a/keyboards/malevolti/lyra/keymaps/via/config.h
+++ b/keyboards/malevolti/lyra/keymaps/via/config.h
@@ -26,5 +26,5 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
diff --git a/keyboards/malevolti/superlyra/keymaps/default/config.h b/keyboards/malevolti/superlyra/keymaps/default/config.h
index bbdf47463f7a..7f20fea8beee 100644
--- a/keyboards/malevolti/superlyra/keymaps/default/config.h
+++ b/keyboards/malevolti/superlyra/keymaps/default/config.h
@@ -22,5 +22,5 @@ along with this program. If not, see .
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
diff --git a/keyboards/malevolti/superlyra/keymaps/via/config.h b/keyboards/malevolti/superlyra/keymaps/via/config.h
index bbdf47463f7a..7f20fea8beee 100644
--- a/keyboards/malevolti/superlyra/keymaps/via/config.h
+++ b/keyboards/malevolti/superlyra/keymaps/via/config.h
@@ -22,5 +22,5 @@ along with this program. If not, see .
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
diff --git a/keyboards/maple_computing/minidox/keymaps/dustypomerleau/config.h b/keyboards/maple_computing/minidox/keymaps/dustypomerleau/config.h
index 0cd6c2b99426..0bb532c6632d 100644
--- a/keyboards/maple_computing/minidox/keymaps/dustypomerleau/config.h
+++ b/keyboards/maple_computing/minidox/keymaps/dustypomerleau/config.h
@@ -10,9 +10,9 @@
// optional configuration:
// #define CONVERT_TO_PROTON_C
-// #define ONESHOT_TAP_TOGGLE 2 // not compatible with TAPPING_FORCE_HOLD
+// #define ONESHOT_TAP_TOGGLE 2 // not compatible with QUICK_TAP_TERM 0
// #define PERMISSIVE_HOLD
-// #define TAPPING_FORCE_HOLD // allows rapid mod use after tap event, but sacrifices double-tap to repeat
+// #define QUICK_TAP_TERM 0 // allows rapid mod use after tap event, but sacrifices double-tap to repeat
// #define MOUSEKEY_DELAY 0 // delay before cursor movement (high feels sluggish, low makes fine movement difficult)
// #define MOUSEKEY_INTERVAL 20 // time between movement reports - low settings feel like high mouse speed
diff --git a/keyboards/massdrop/alt/keymaps/b_/config.h b/keyboards/massdrop/alt/keymaps/b_/config.h
index 7dec786b79b5..8f06c0dd34ba 100644
--- a/keyboards/massdrop/alt/keymaps/b_/config.h
+++ b/keyboards/massdrop/alt/keymaps/b_/config.h
@@ -32,7 +32,7 @@
// #define TAPPING_TOGGLE 2 // How many taps before triggering the toggle
// #define PERMISSIVE_HOLD // Makes tap and hold keys trigger the hold if another key is pressed before releasing, even if it hasn't hit the TAPPING_TERM. See Permissive Hold for details
// #define IGNORE_MOD_TAP_INTERRUPT // Makes it possible to do rolling combos (zx) with keys that convert to other keys on hold, by enforcing the TAPPING_TERM for both keys. See Mod tap interrupt for details
-// #define TAPPING_FORCE_HOLD // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
+// #define QUICK_TAP_TERM 0 // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
// #define LEADER_TIMEOUT 300 // How long before the leader key times out. If you're having issues finishing the sequence before it times out, you may need to increase the timeout setting. Or you may want to enable the LEADER_PER_KEY_TIMING option, which resets the timeout after each key is tapped.
// #define LEADER_PER_KEY_TIMING // Sets the timer for leader key chords to run on each key press rather than overall
// #define LEADER_KEY_STRICT_KEY_PROCESSING // Disables keycode filtering for Mod-Tap and Layer-Tap keycodes. Eg, if you enable this, you would need to specify MT(MOD_CTL, KC_A) if you want to use KC_A.
diff --git a/keyboards/massdrop/alt/keymaps/pregame/config.h b/keyboards/massdrop/alt/keymaps/pregame/config.h
index 90892cc8028a..83f0d13bd53d 100644
--- a/keyboards/massdrop/alt/keymaps/pregame/config.h
+++ b/keyboards/massdrop/alt/keymaps/pregame/config.h
@@ -45,7 +45,7 @@
// #define TAPPING_TOGGLE 2 // How many taps before triggering the toggle
// #define PERMISSIVE_HOLD // Makes tap and hold keys trigger the hold if another key is pressed before releasing, even if it hasn't hit the TAPPING_TERM. See Permissive Hold for details
// #define IGNORE_MOD_TAP_INTERRUPT // Makes it possible to do rolling combos (zx) with keys that convert to other keys on hold, by enforcing the TAPPING_TERM for both keys. See Mod tap interrupt for details
-// #define TAPPING_FORCE_HOLD // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
+// #define QUICK_TAP_TERM 0 // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
// #define LEADER_TIMEOUT 300 // How long before the leader key times out. If you're having issues finishing the sequence before it times out, you may need to increase the timeout setting. Or you may want to enable the LEADER_PER_KEY_TIMING option, which resets the timeout after each key is tapped.
// #define LEADER_PER_KEY_TIMING // Sets the timer for leader key chords to run on each key press rather than overall
// #define LEADER_KEY_STRICT_KEY_PROCESSING // Disables keycode filtering for Mod-Tap and Layer-Tap keycodes. Eg, if you enable this, you would need to specify MT(MOD_CTL, KC_A) if you want to use KC_A.
diff --git a/keyboards/massdrop/ctrl/keymaps/endgame/config.h b/keyboards/massdrop/ctrl/keymaps/endgame/config.h
index 1a7c77b90e52..8584c07a5d6f 100644
--- a/keyboards/massdrop/ctrl/keymaps/endgame/config.h
+++ b/keyboards/massdrop/ctrl/keymaps/endgame/config.h
@@ -29,7 +29,7 @@
#define TAPPING_TOGGLE 2 // How many taps before triggering the toggle
// #define PERMISSIVE_HOLD // Makes tap and hold keys trigger the hold if another key is pressed before releasing, even if it hasn't hit the TAPPING_TERM. See Permissive Hold for details
// #define IGNORE_MOD_TAP_INTERRUPT // Makes it possible to do rolling combos (zx) with keys that convert to other keys on hold, by enforcing the TAPPING_TERM for both keys. See Mod tap interrupt for details
-// #define TAPPING_FORCE_HOLD // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
+// #define QUICK_TAP_TERM 0 // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
// #define LEADER_TIMEOUT 300 // How long before the leader key times out. If you're having issues finishing the sequence before it times out, you may need to increase the timeout setting. Or you may want to enable the LEADER_PER_KEY_TIMING option, which resets the timeout after each key is tapped.
// #define LEADER_PER_KEY_TIMING // Sets the timer for leader key chords to run on each key press rather than overall
// #define LEADER_KEY_STRICT_KEY_PROCESSING // Disables keycode filtering for Mod-Tap and Layer-Tap keycodes. Eg, if you enable this, you would need to specify MT(MOD_CTL, KC_A) if you want to use KC_A.
diff --git a/keyboards/massdrop/ctrl/keymaps/matthewrobo/config.h b/keyboards/massdrop/ctrl/keymaps/matthewrobo/config.h
index deb40efb7d41..b975b7895b69 100644
--- a/keyboards/massdrop/ctrl/keymaps/matthewrobo/config.h
+++ b/keyboards/massdrop/ctrl/keymaps/matthewrobo/config.h
@@ -47,7 +47,7 @@ along with this program. If not, see .
// #define TAPPING_TOGGLE 2 // How many taps before triggering the toggle
// #define PERMISSIVE_HOLD // Makes tap and hold keys trigger the hold if another key is pressed before releasing, even if it hasn't hit the TAPPING_TERM. See Permissive Hold for details
// #define IGNORE_MOD_TAP_INTERRUPT // Makes it possible to do rolling combos (zx) with keys that convert to other keys on hold, by enforcing the TAPPING_TERM for both keys. See Mod tap interrupt for details
-// #define TAPPING_FORCE_HOLD // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
+// #define QUICK_TAP_TERM 0 // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
// #define LEADER_TIMEOUT 300 // How long before the leader key times out. If you're having issues finishing the sequence before it times out, you may need to increase the timeout setting. Or you may want to enable the LEADER_PER_KEY_TIMING option, which resets the timeout after each key is tapped.
// #define LEADER_PER_KEY_TIMING // Sets the timer for leader key chords to run on each key press rather than overall
// #define LEADER_KEY_STRICT_KEY_PROCESSING // Disables keycode filtering for Mod-Tap and Layer-Tap keycodes. Eg, if you enable this, you would need to specify MT(MOD_CTL, KC_A) if you want to use KC_A.
diff --git a/keyboards/massdrop/ctrl/keymaps/xanimos/config.h b/keyboards/massdrop/ctrl/keymaps/xanimos/config.h
index 767fbaffca1a..87db7fe8ea79 100644
--- a/keyboards/massdrop/ctrl/keymaps/xanimos/config.h
+++ b/keyboards/massdrop/ctrl/keymaps/xanimos/config.h
@@ -45,7 +45,7 @@
#define TAPPING_TOGGLE 2 // How many taps before triggering the toggle
// #define PERMISSIVE_HOLD // Makes tap and hold keys trigger the hold if another key is pressed before releasing, even if it hasn't hit the TAPPING_TERM. See Permissive Hold for details
// #define IGNORE_MOD_TAP_INTERRUPT // Makes it possible to do rolling combos (zx) with keys that convert to other keys on hold, by enforcing the TAPPING_TERM for both keys. See Mod tap interrupt for details
-// #define TAPPING_FORCE_HOLD // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
+// #define QUICK_TAP_TERM 0 // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle)
// #define LEADER_TIMEOUT 300 // How long before the leader key times out. If you're having issues finishing the sequence before it times out, you may need to increase the timeout setting. Or you may want to enable the LEADER_PER_KEY_TIMING option, which resets the timeout after each key is tapped.
// #define LEADER_PER_KEY_TIMING // Sets the timer for leader key chords to run on each key press rather than overall
// #define LEADER_KEY_STRICT_KEY_PROCESSING // Disables keycode filtering for Mod-Tap and Layer-Tap keycodes. Eg, if you enable this, you would need to specify MT(MOD_CTL, KC_A) if you want to use KC_A.
diff --git a/keyboards/obosob/steal_this_keyboard/keymaps/default/config.h b/keyboards/obosob/steal_this_keyboard/keymaps/default/config.h
index 14ec0792b1a5..3e3ba7a401aa 100644
--- a/keyboards/obosob/steal_this_keyboard/keymaps/default/config.h
+++ b/keyboards/obosob/steal_this_keyboard/keymaps/default/config.h
@@ -36,4 +36,4 @@ along with this program. If not, see .
#define TAPPING_TERM 200
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
diff --git a/keyboards/palette1202/keymaps/default/config.h b/keyboards/palette1202/keymaps/default/config.h
index a5bb9bbfc861..3ec3b391d487 100644
--- a/keyboards/palette1202/keymaps/default/config.h
+++ b/keyboards/palette1202/keymaps/default/config.h
@@ -16,5 +16,5 @@
#pragma once
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
diff --git a/keyboards/pierce/keymaps/durken1/config.h b/keyboards/pierce/keymaps/durken1/config.h
index 7c9970c5a987..7049a692ed50 100644
--- a/keyboards/pierce/keymaps/durken1/config.h
+++ b/keyboards/pierce/keymaps/durken1/config.h
@@ -23,7 +23,7 @@
#define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define PERMISSIVE_HOLD
diff --git a/keyboards/pinky/3/keymaps/default/config.h b/keyboards/pinky/3/keymaps/default/config.h
index 63e8168b471a..3671c13a384f 100644
--- a/keyboards/pinky/3/keymaps/default/config.h
+++ b/keyboards/pinky/3/keymaps/default/config.h
@@ -24,6 +24,6 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define RETRO_TAPPPING
diff --git a/keyboards/pinky/3/keymaps/ninjonas/config.h b/keyboards/pinky/3/keymaps/ninjonas/config.h
index 63e8168b471a..3671c13a384f 100644
--- a/keyboards/pinky/3/keymaps/ninjonas/config.h
+++ b/keyboards/pinky/3/keymaps/ninjonas/config.h
@@ -24,6 +24,6 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define RETRO_TAPPPING
diff --git a/keyboards/pinky/3/keymaps/via/config.h b/keyboards/pinky/3/keymaps/via/config.h
index 63e8168b471a..3671c13a384f 100644
--- a/keyboards/pinky/3/keymaps/via/config.h
+++ b/keyboards/pinky/3/keymaps/via/config.h
@@ -24,6 +24,6 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define RETRO_TAPPPING
diff --git a/keyboards/pinky/4/keymaps/default/config.h b/keyboards/pinky/4/keymaps/default/config.h
index 63e8168b471a..3671c13a384f 100644
--- a/keyboards/pinky/4/keymaps/default/config.h
+++ b/keyboards/pinky/4/keymaps/default/config.h
@@ -24,6 +24,6 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define RETRO_TAPPPING
diff --git a/keyboards/pinky/4/keymaps/via/config.h b/keyboards/pinky/4/keymaps/via/config.h
index 63e8168b471a..3671c13a384f 100644
--- a/keyboards/pinky/4/keymaps/via/config.h
+++ b/keyboards/pinky/4/keymaps/via/config.h
@@ -24,6 +24,6 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define RETRO_TAPPPING
diff --git a/keyboards/planck/keymaps/adamtabrams/config.h b/keyboards/planck/keymaps/adamtabrams/config.h
index 0c275f20c51b..8ff86760b450 100644
--- a/keyboards/planck/keymaps/adamtabrams/config.h
+++ b/keyboards/planck/keymaps/adamtabrams/config.h
@@ -35,5 +35,5 @@
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
#define IGNORE_MOD_TAP_INTERRUPT_PER_KEY
-#define TAPPING_FORCE_HOLD
-#define TAPPING_FORCE_HOLD_PER_KEY
+#define QUICK_TAP_TERM 0
+#define QUICK_TAP_TERM_PER_KEY
diff --git a/keyboards/planck/keymaps/adamtabrams/keymap.c b/keyboards/planck/keymaps/adamtabrams/keymap.c
index 3d4aa4696322..2203ecd30f40 100644
--- a/keyboards/planck/keymaps/adamtabrams/keymap.c
+++ b/keyboards/planck/keymaps/adamtabrams/keymap.c
@@ -229,7 +229,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return true;
}
-bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
+uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case SHFTESC:
case NUMSPAC:
@@ -249,9 +249,9 @@ bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
case CTL__J:
case CTL__T:
case CTL__N:
- return true;
+ return 0;
default:
- return false;
+ return QUICK_TAP_TERM;
}
}
diff --git a/keyboards/planck/keymaps/jweickm/config.h b/keyboards/planck/keymaps/jweickm/config.h
index 3b34ddf832f2..bd34fca202af 100644
--- a/keyboards/planck/keymaps/jweickm/config.h
+++ b/keyboards/planck/keymaps/jweickm/config.h
@@ -58,7 +58,7 @@
#define TAPPING_TERM_PER_KEY
//#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD_PER_KEY
+#define QUICK_TAP_TERM_PER_KEY
// settings for LEADER key
#define LEADER_PER_KEY_TIMING
diff --git a/keyboards/planck/keymaps/jweickm/keymap.c b/keyboards/planck/keymaps/jweickm/keymap.c
index b2c317f0399c..1b8b8b28a8af 100644
--- a/keyboards/planck/keymaps/jweickm/keymap.c
+++ b/keyboards/planck/keymaps/jweickm/keymap.c
@@ -1039,30 +1039,30 @@ bool music_mask_user(uint16_t keycode) {
}
}
-bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
+uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case LSFT_T(KC_S):
- return true;
+ return 0;
case RSFT_T(KC_E):
- return true;
+ return 0;
case LSFT_T(KC_D):
- return true;
+ return 0;
case RSFT_T(KC_K):
- return true;
+ return 0;
case LSFT_T(KC_F):
- return true;
+ return 0;
case RSFT_T(KC_U):
- return true;
+ return 0;
case LT(_RAISE, KC_ENT):
- return true;
+ return 0;
case LT(_RAISE_DE, KC_ENT):
- return true;
+ return 0;
case LT(_LOWER, KC_BSPC):
- return true;
+ return 0;
case LT(_LOWER_DE, KC_BSPC):
- return true;
+ return 0;
default:
- return false;
+ return QUICK_TAP_TERM;
}
}
diff --git a/keyboards/planck/keymaps/muppetjones/config.h b/keyboards/planck/keymaps/muppetjones/config.h
index 1046d214991d..1a05bfc83753 100644
--- a/keyboards/planck/keymaps/muppetjones/config.h
+++ b/keyboards/planck/keymaps/muppetjones/config.h
@@ -53,4 +53,4 @@
#define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
diff --git a/keyboards/planck/keymaps/rootiest/config.h b/keyboards/planck/keymaps/rootiest/config.h
index 4de638ce2968..bdb5cea91b92 100644
--- a/keyboards/planck/keymaps/rootiest/config.h
+++ b/keyboards/planck/keymaps/rootiest/config.h
@@ -117,7 +117,7 @@
* MACRO per-key options
*/
#define RETRO_TAPPING_PER_KEY // Control Retro-Tap individually by key
-#define TAPPING_FORCE_HOLD_PER_KEY // Control Force-Hold individually by key
+#define QUICK_TAP_TERM_PER_KEY // Control Quick-Tap individually by key
#define IGNORE_MOD_TAP_INTERRUPT_PER_KEY // Control Mod-Tap-Interrupt individually by key
#define PERMISSIVE_HOLD_PER_KEY // Control Permissive-Hold individually by key
diff --git a/keyboards/planck/keymaps/rootiest/keymap.c b/keyboards/planck/keymaps/rootiest/keymap.c
index 097f313cca14..cc43aff67381 100644
--- a/keyboards/planck/keymaps/rootiest/keymap.c
+++ b/keyboards/planck/keymaps/rootiest/keymap.c
@@ -1376,11 +1376,11 @@ bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t* record) {
return false;
}
}
-// Handles per-key configuration of Tapping Force-Hold
-bool get_tapping_force_hold(uint16_t keycode, keyrecord_t* record) {
+// Handles per-key configuration of Quick-Tap
+uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t* record) {
switch (keycode) {
default:
- return false;
+ return QUICK_TAP_TERM;
}
}
// Handles per-key configuration of Permissive-Hold
diff --git a/keyboards/planck/keymaps/tylerwince/config.h b/keyboards/planck/keymaps/tylerwince/config.h
index 24adad94f3b2..52c1494a1d07 100644
--- a/keyboards/planck/keymaps/tylerwince/config.h
+++ b/keyboards/planck/keymaps/tylerwince/config.h
@@ -12,7 +12,7 @@
Set any config.h overrides for your specific keymap here.
See config.h options at https://docs.qmk.fm/#/config_options?id=the-configh-file
*/
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define IGNORE_MOD_TAP_INTERRUPT
#define EECONFIG_RGB_MATRIX (uint32_t *)16
diff --git a/keyboards/projectcain/relic/keymaps/default/config.h b/keyboards/projectcain/relic/keymaps/default/config.h
index 7756a8db2fcb..ebe839c4c4f2 100644
--- a/keyboards/projectcain/relic/keymaps/default/config.h
+++ b/keyboards/projectcain/relic/keymaps/default/config.h
@@ -19,5 +19,5 @@
#define ENCODER_RESOLUTION 2
#define COMBO_COUNT 6
#define COMBO_TERM 50
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define DISABLE_LEADER
diff --git a/keyboards/projectcain/vault35/keymaps/default/config.h b/keyboards/projectcain/vault35/keymaps/default/config.h
index 3022aa84c4e5..885d5ad9cbc0 100644
--- a/keyboards/projectcain/vault35/keymaps/default/config.h
+++ b/keyboards/projectcain/vault35/keymaps/default/config.h
@@ -18,4 +18,4 @@
#define COMBO_COUNT 2
#define COMBO_TERM 50
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
diff --git a/keyboards/projectcain/vault45/keymaps/default/config.h b/keyboards/projectcain/vault45/keymaps/default/config.h
index 2ca1e8f12343..4a98bb89d42c 100644
--- a/keyboards/projectcain/vault45/keymaps/default/config.h
+++ b/keyboards/projectcain/vault45/keymaps/default/config.h
@@ -18,4 +18,4 @@
#define COMBO_COUNT 2
#define COMBO_TERM 50
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
diff --git a/keyboards/rgbkb/mun/keymaps/xulkal2/config.h b/keyboards/rgbkb/mun/keymaps/xulkal2/config.h
index 7e3fc2d9084c..c945db14176d 100644
--- a/keyboards/rgbkb/mun/keymaps/xulkal2/config.h
+++ b/keyboards/rgbkb/mun/keymaps/xulkal2/config.h
@@ -10,7 +10,7 @@
#pragma once
// Xulkal custom stuff
-#undef TAPPING_FORCE_HOLD
+#undef QUICK_TAP_TERM
#undef TAPPING_TERM
#define TAPPING_TERM 175
diff --git a/keyboards/salicylic_acid3/7skb/keymaps/default/config.h b/keyboards/salicylic_acid3/7skb/keymaps/default/config.h
index 4b3496d85693..c2844a6775b6 100644
--- a/keyboards/salicylic_acid3/7skb/keymaps/default/config.h
+++ b/keyboards/salicylic_acid3/7skb/keymaps/default/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/7skb/keymaps/salicylic/config.h b/keyboards/salicylic_acid3/7skb/keymaps/salicylic/config.h
index cc4a3d44265e..09bf50b6ab16 100644
--- a/keyboards/salicylic_acid3/7skb/keymaps/salicylic/config.h
+++ b/keyboards/salicylic_acid3/7skb/keymaps/salicylic/config.h
@@ -18,6 +18,6 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
//#define MASTER_RIGHT
diff --git a/keyboards/salicylic_acid3/7splus/keymaps/salicylic/config.h b/keyboards/salicylic_acid3/7splus/keymaps/salicylic/config.h
index 81ee8ef78509..8a42af5127bb 100644
--- a/keyboards/salicylic_acid3/7splus/keymaps/salicylic/config.h
+++ b/keyboards/salicylic_acid3/7splus/keymaps/salicylic/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/7splus/keymaps/via/config.h b/keyboards/salicylic_acid3/7splus/keymaps/via/config.h
index 8a89da2eae08..83e6f1b184c1 100644
--- a/keyboards/salicylic_acid3/7splus/keymaps/via/config.h
+++ b/keyboards/salicylic_acid3/7splus/keymaps/via/config.h
@@ -18,6 +18,6 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/salicylic_acid3/ajisai74/keymaps/default/config.h b/keyboards/salicylic_acid3/ajisai74/keymaps/default/config.h
index 81ee8ef78509..8a42af5127bb 100644
--- a/keyboards/salicylic_acid3/ajisai74/keymaps/default/config.h
+++ b/keyboards/salicylic_acid3/ajisai74/keymaps/default/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/ajisai74/keymaps/jis/config.h b/keyboards/salicylic_acid3/ajisai74/keymaps/jis/config.h
index 81ee8ef78509..8a42af5127bb 100644
--- a/keyboards/salicylic_acid3/ajisai74/keymaps/jis/config.h
+++ b/keyboards/salicylic_acid3/ajisai74/keymaps/jis/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/ajisai74/keymaps/salicylic/config.h b/keyboards/salicylic_acid3/ajisai74/keymaps/salicylic/config.h
index 81ee8ef78509..8a42af5127bb 100644
--- a/keyboards/salicylic_acid3/ajisai74/keymaps/salicylic/config.h
+++ b/keyboards/salicylic_acid3/ajisai74/keymaps/salicylic/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/ajisai74/keymaps/via/config.h b/keyboards/salicylic_acid3/ajisai74/keymaps/via/config.h
index 81ee8ef78509..8a42af5127bb 100644
--- a/keyboards/salicylic_acid3/ajisai74/keymaps/via/config.h
+++ b/keyboards/salicylic_acid3/ajisai74/keymaps/via/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/ergoarrows/keymaps/default/config.h b/keyboards/salicylic_acid3/ergoarrows/keymaps/default/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/salicylic_acid3/ergoarrows/keymaps/default/config.h
+++ b/keyboards/salicylic_acid3/ergoarrows/keymaps/default/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/ergoarrows/keymaps/salicylic/config.h b/keyboards/salicylic_acid3/ergoarrows/keymaps/salicylic/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/salicylic_acid3/ergoarrows/keymaps/salicylic/config.h
+++ b/keyboards/salicylic_acid3/ergoarrows/keymaps/salicylic/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/ergoarrows/keymaps/via/config.h b/keyboards/salicylic_acid3/ergoarrows/keymaps/via/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/salicylic_acid3/ergoarrows/keymaps/via/config.h
+++ b/keyboards/salicylic_acid3/ergoarrows/keymaps/via/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/getta25/keymaps/default/config.h b/keyboards/salicylic_acid3/getta25/keymaps/default/config.h
index 8c4e1f512999..a79d62d61405 100644
--- a/keyboards/salicylic_acid3/getta25/keymaps/default/config.h
+++ b/keyboards/salicylic_acid3/getta25/keymaps/default/config.h
@@ -18,7 +18,7 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/getta25/keymaps/oled/config.h b/keyboards/salicylic_acid3/getta25/keymaps/oled/config.h
index be988915c21a..23f8b5343f75 100644
--- a/keyboards/salicylic_acid3/getta25/keymaps/oled/config.h
+++ b/keyboards/salicylic_acid3/getta25/keymaps/oled/config.h
@@ -18,7 +18,7 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#define OLED_FONT_H "keyboards/getta25/keymaps/oled/glcdfont.c"
diff --git a/keyboards/salicylic_acid3/jisplit89/keymaps/salicylic/config.h b/keyboards/salicylic_acid3/jisplit89/keymaps/salicylic/config.h
index 81ee8ef78509..8a42af5127bb 100644
--- a/keyboards/salicylic_acid3/jisplit89/keymaps/salicylic/config.h
+++ b/keyboards/salicylic_acid3/jisplit89/keymaps/salicylic/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/nafuda/keymaps/default/config.h b/keyboards/salicylic_acid3/nafuda/keymaps/default/config.h
index e35fe2ccd76d..1633dcc8476c 100644
--- a/keyboards/salicylic_acid3/nafuda/keymaps/default/config.h
+++ b/keyboards/salicylic_acid3/nafuda/keymaps/default/config.h
@@ -18,6 +18,6 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/default/config.h b/keyboards/salicylic_acid3/naked48/keymaps/default/config.h
index 4f3a44d6bbc7..c3d26106ca54 100644
--- a/keyboards/salicylic_acid3/naked48/keymaps/default/config.h
+++ b/keyboards/salicylic_acid3/naked48/keymaps/default/config.h
@@ -22,5 +22,5 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/config.h b/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/config.h
index 4d52c018055e..12d57843740e 100644
--- a/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/config.h
+++ b/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/config.h
@@ -22,7 +22,7 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#ifdef RGBLED_NUM
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/config.h b/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/config.h
index 7cb5d61e2b29..392f2f97e8cc 100644
--- a/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/config.h
+++ b/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/config.h
@@ -22,7 +22,7 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#ifdef RGBLED_NUM
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/salicylic/config.h b/keyboards/salicylic_acid3/naked48/keymaps/salicylic/config.h
index e7016c4b78ae..b8a6b843ceb4 100644
--- a/keyboards/salicylic_acid3/naked48/keymaps/salicylic/config.h
+++ b/keyboards/salicylic_acid3/naked48/keymaps/salicylic/config.h
@@ -18,7 +18,7 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#ifdef RGBLED_NUM
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_nafuda/config.h b/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_nafuda/config.h
index 4d52c018055e..12d57843740e 100644
--- a/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_nafuda/config.h
+++ b/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_nafuda/config.h
@@ -22,7 +22,7 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#ifdef RGBLED_NUM
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_setta21/config.h b/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_setta21/config.h
index 7cb5d61e2b29..392f2f97e8cc 100644
--- a/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_setta21/config.h
+++ b/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_setta21/config.h
@@ -22,7 +22,7 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#ifdef RGBLED_NUM
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/config.h b/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/config.h
index 8c11ad607895..1742af4c5c5c 100644
--- a/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/config.h
+++ b/keyboards/salicylic_acid3/naked48/keymaps/scheiklp/config.h
@@ -5,5 +5,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/via/config.h b/keyboards/salicylic_acid3/naked48/keymaps/via/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/salicylic_acid3/naked48/keymaps/via/config.h
+++ b/keyboards/salicylic_acid3/naked48/keymaps/via/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h b/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h
index 6106dc4e3da6..21494a0dfd24 100644
--- a/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h
+++ b/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h
@@ -18,7 +18,7 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#ifdef RGBLED_NUM
diff --git a/keyboards/salicylic_acid3/naked60/keymaps/333fred/config.h b/keyboards/salicylic_acid3/naked60/keymaps/333fred/config.h
index d19e77f0443e..5cb4da013301 100644
--- a/keyboards/salicylic_acid3/naked60/keymaps/333fred/config.h
+++ b/keyboards/salicylic_acid3/naked60/keymaps/333fred/config.h
@@ -20,5 +20,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
diff --git a/keyboards/salicylic_acid3/naked60/keymaps/default/config.h b/keyboards/salicylic_acid3/naked60/keymaps/default/config.h
index 4b3496d85693..c2844a6775b6 100644
--- a/keyboards/salicylic_acid3/naked60/keymaps/default/config.h
+++ b/keyboards/salicylic_acid3/naked60/keymaps/default/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/config.h b/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/config.h
index 603c9ab0269d..ed08dc121cb1 100644
--- a/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/config.h
+++ b/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/config.h
@@ -22,5 +22,5 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/config.h b/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/config.h
index 603c9ab0269d..ed08dc121cb1 100644
--- a/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/config.h
+++ b/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/config.h
@@ -22,5 +22,5 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked60/keymaps/salicylic/config.h b/keyboards/salicylic_acid3/naked60/keymaps/salicylic/config.h
index 4b3496d85693..c2844a6775b6 100644
--- a/keyboards/salicylic_acid3/naked60/keymaps/salicylic/config.h
+++ b/keyboards/salicylic_acid3/naked60/keymaps/salicylic/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_nafuda/config.h b/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_nafuda/config.h
index 603c9ab0269d..ed08dc121cb1 100644
--- a/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_nafuda/config.h
+++ b/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_nafuda/config.h
@@ -22,5 +22,5 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_setta21/config.h b/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_setta21/config.h
index 603c9ab0269d..ed08dc121cb1 100644
--- a/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_setta21/config.h
+++ b/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_setta21/config.h
@@ -22,5 +22,5 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked60/keymaps/via/config.h b/keyboards/salicylic_acid3/naked60/keymaps/via/config.h
index 32ec5281b23f..f90e802882a1 100644
--- a/keyboards/salicylic_acid3/naked60/keymaps/via/config.h
+++ b/keyboards/salicylic_acid3/naked60/keymaps/via/config.h
@@ -18,6 +18,6 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#define DYNAMIC_KEYMAP_LAYER_COUNT 3
diff --git a/keyboards/salicylic_acid3/naked64/keymaps/default/config.h b/keyboards/salicylic_acid3/naked64/keymaps/default/config.h
index 8c4e1f512999..a79d62d61405 100644
--- a/keyboards/salicylic_acid3/naked64/keymaps/default/config.h
+++ b/keyboards/salicylic_acid3/naked64/keymaps/default/config.h
@@ -18,7 +18,7 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/config.h b/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/config.h
index cba07919ff59..73a3019540d0 100644
--- a/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/config.h
+++ b/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/config.h
@@ -22,7 +22,7 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#define RGBLED_NUM 12 // Number of LEDs
diff --git a/keyboards/salicylic_acid3/naked64/keymaps/salicylic/config.h b/keyboards/salicylic_acid3/naked64/keymaps/salicylic/config.h
index 4b3496d85693..c2844a6775b6 100644
--- a/keyboards/salicylic_acid3/naked64/keymaps/salicylic/config.h
+++ b/keyboards/salicylic_acid3/naked64/keymaps/salicylic/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/naked64/keymaps/salicylic_with_setta21/config.h b/keyboards/salicylic_acid3/naked64/keymaps/salicylic_with_setta21/config.h
index 603c9ab0269d..ed08dc121cb1 100644
--- a/keyboards/salicylic_acid3/naked64/keymaps/salicylic_with_setta21/config.h
+++ b/keyboards/salicylic_acid3/naked64/keymaps/salicylic_with_setta21/config.h
@@ -22,5 +22,5 @@
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/nknl7en/keymaps/default/config.h b/keyboards/salicylic_acid3/nknl7en/keymaps/default/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/salicylic_acid3/nknl7en/keymaps/default/config.h
+++ b/keyboards/salicylic_acid3/nknl7en/keymaps/default/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/nknl7en/keymaps/salicylic/config.h b/keyboards/salicylic_acid3/nknl7en/keymaps/salicylic/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/salicylic_acid3/nknl7en/keymaps/salicylic/config.h
+++ b/keyboards/salicylic_acid3/nknl7en/keymaps/salicylic/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/nknl7en/keymaps/via/config.h b/keyboards/salicylic_acid3/nknl7en/keymaps/via/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/salicylic_acid3/nknl7en/keymaps/via/config.h
+++ b/keyboards/salicylic_acid3/nknl7en/keymaps/via/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/nknl7jp/keymaps/default/config.h b/keyboards/salicylic_acid3/nknl7jp/keymaps/default/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/salicylic_acid3/nknl7jp/keymaps/default/config.h
+++ b/keyboards/salicylic_acid3/nknl7jp/keymaps/default/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/nknl7jp/keymaps/salicylic/config.h b/keyboards/salicylic_acid3/nknl7jp/keymaps/salicylic/config.h
index 6f3b77b0dead..d06aae947a5e 100644
--- a/keyboards/salicylic_acid3/nknl7jp/keymaps/salicylic/config.h
+++ b/keyboards/salicylic_acid3/nknl7jp/keymaps/salicylic/config.h
@@ -18,6 +18,6 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#define UNICODE_SELECTED_MODES UNICODE_MODE_WINCOMPOSE
diff --git a/keyboards/salicylic_acid3/nknl7jp/keymaps/via/config.h b/keyboards/salicylic_acid3/nknl7jp/keymaps/via/config.h
index fd96baa819b0..0e221d844d5a 100644
--- a/keyboards/salicylic_acid3/nknl7jp/keymaps/via/config.h
+++ b/keyboards/salicylic_acid3/nknl7jp/keymaps/via/config.h
@@ -18,5 +18,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/setta21/keymaps/default/config.h b/keyboards/salicylic_acid3/setta21/keymaps/default/config.h
index e35fe2ccd76d..1633dcc8476c 100644
--- a/keyboards/salicylic_acid3/setta21/keymaps/default/config.h
+++ b/keyboards/salicylic_acid3/setta21/keymaps/default/config.h
@@ -18,6 +18,6 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/salicylic_acid3/setta21/keymaps/salicylic/config.h b/keyboards/salicylic_acid3/setta21/keymaps/salicylic/config.h
index 26607eca8980..540c819c2b08 100644
--- a/keyboards/salicylic_acid3/setta21/keymaps/salicylic/config.h
+++ b/keyboards/salicylic_acid3/setta21/keymaps/salicylic/config.h
@@ -18,7 +18,7 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
#define RGB_MATRIX_LED_COUNT RGBLED_NUM
diff --git a/keyboards/sofle/keymaps/devdev/config.h b/keyboards/sofle/keymaps/devdev/config.h
index c3694d129221..6564238bbaa3 100644
--- a/keyboards/sofle/keymaps/devdev/config.h
+++ b/keyboards/sofle/keymaps/devdev/config.h
@@ -32,7 +32,7 @@
#define CUSTOM_LAYER_READ //if you remove this it causes issues - needs better guarding
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#ifdef TAPPING_TERM
#undef TAPPING_TERM
#define TAPPING_TERM 200
diff --git a/keyboards/sofle/keymaps/rgb_default/config.h b/keyboards/sofle/keymaps/rgb_default/config.h
index c3694d129221..6564238bbaa3 100644
--- a/keyboards/sofle/keymaps/rgb_default/config.h
+++ b/keyboards/sofle/keymaps/rgb_default/config.h
@@ -32,7 +32,7 @@
#define CUSTOM_LAYER_READ //if you remove this it causes issues - needs better guarding
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#ifdef TAPPING_TERM
#undef TAPPING_TERM
#define TAPPING_TERM 200
diff --git a/keyboards/sparrow62/keymaps/74th/config.h b/keyboards/sparrow62/keymaps/74th/config.h
index 15eb08ed7a3f..e1fae611ce11 100644
--- a/keyboards/sparrow62/keymaps/74th/config.h
+++ b/keyboards/sparrow62/keymaps/74th/config.h
@@ -19,5 +19,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/sparrow62/keymaps/default/config.h b/keyboards/sparrow62/keymaps/default/config.h
index 15eb08ed7a3f..e1fae611ce11 100644
--- a/keyboards/sparrow62/keymaps/default/config.h
+++ b/keyboards/sparrow62/keymaps/default/config.h
@@ -19,5 +19,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/sparrow62/keymaps/via/config.h b/keyboards/sparrow62/keymaps/via/config.h
index 15eb08ed7a3f..e1fae611ce11 100644
--- a/keyboards/sparrow62/keymaps/via/config.h
+++ b/keyboards/sparrow62/keymaps/via/config.h
@@ -19,5 +19,5 @@
/* Select hand configuration */
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 180
diff --git a/keyboards/splitkb/kyria/keymaps/jhelvy/config.h b/keyboards/splitkb/kyria/keymaps/jhelvy/config.h
index 86f3d5b5c3d9..518c9378e414 100644
--- a/keyboards/splitkb/kyria/keymaps/jhelvy/config.h
+++ b/keyboards/splitkb/kyria/keymaps/jhelvy/config.h
@@ -22,7 +22,7 @@
#define ENCODER_RESOLUTION 2
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 200
#define AUTO_SHIFT_TIMEOUT 150
diff --git a/keyboards/splitkb/kyria/keymaps/muppetjones/config.h b/keyboards/splitkb/kyria/keymaps/muppetjones/config.h
index 92d495be4aa9..b6351869fe36 100644
--- a/keyboards/splitkb/kyria/keymaps/muppetjones/config.h
+++ b/keyboards/splitkb/kyria/keymaps/muppetjones/config.h
@@ -43,7 +43,7 @@
#define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// Reduce firmware size
// https://thomasbaart.nl/2018/12/01/reducing-firmware-size-in-qmk/
diff --git a/keyboards/splitkb/kyria/keymaps/ohlin/config.h b/keyboards/splitkb/kyria/keymaps/ohlin/config.h
index 238206a49e92..4451ff731c4d 100644
--- a/keyboards/splitkb/kyria/keymaps/ohlin/config.h
+++ b/keyboards/splitkb/kyria/keymaps/ohlin/config.h
@@ -26,4 +26,4 @@
// Prevent normal rollover on alphas from accidentally triggering mods.
#define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
\ No newline at end of file
+#define QUICK_TAP_TERM 0
diff --git a/keyboards/splitkb/kyria/keymaps/pierrec83/config.h b/keyboards/splitkb/kyria/keymaps/pierrec83/config.h
index 816dd16312f1..b4f3f32255bc 100644
--- a/keyboards/splitkb/kyria/keymaps/pierrec83/config.h
+++ b/keyboards/splitkb/kyria/keymaps/pierrec83/config.h
@@ -44,7 +44,7 @@
#define TAPPING_TERM 200
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// Allows to use either side as the master. Look at the documentation for info:
// https://docs.qmk.fm/#/config_options?id=setting-handedness
#define EE_HANDS
diff --git a/keyboards/splitkb/kyria/keymaps/winternebs/config.h b/keyboards/splitkb/kyria/keymaps/winternebs/config.h
index 1df48a1f4917..f0632e90ae9f 100755
--- a/keyboards/splitkb/kyria/keymaps/winternebs/config.h
+++ b/keyboards/splitkb/kyria/keymaps/winternebs/config.h
@@ -27,5 +27,5 @@
#define NO_ACTION_MACRO
#define NO_ACTION_FUNCTION
#define NO_ACTION_ONESHOT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define IGNORE_MOD_TAP_INTERRUPT
diff --git a/keyboards/splitkb/kyria/keymaps/zigotica/config.h b/keyboards/splitkb/kyria/keymaps/zigotica/config.h
index b59e04474b68..8c4e8dfeceeb 100644
--- a/keyboards/splitkb/kyria/keymaps/zigotica/config.h
+++ b/keyboards/splitkb/kyria/keymaps/zigotica/config.h
@@ -24,7 +24,7 @@ along with this program. If not, see .
#define TAPPING_TERM 350
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define LEADER_PER_KEY_TIMING
#define LEADER_TIMEOUT 300
diff --git a/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/config.h b/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/config.h
index 4ba4a57165a0..4585f2230b53 100644
--- a/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/config.h
+++ b/keyboards/unikeyboard/divergetm2/keymaps/xtonhasvim/config.h
@@ -3,7 +3,7 @@
// help for fast typist+dual function keys?
#define PERMISSIVE_HOLD
// Let me type `ls -l` more quickly.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// where is the cord plugged in?
#define MASTER_RIGHT
diff --git a/keyboards/yosino58/keymaps/default/config.h b/keyboards/yosino58/keymaps/default/config.h
index 89778175c77a..763b31aa109d 100644
--- a/keyboards/yosino58/keymaps/default/config.h
+++ b/keyboards/yosino58/keymaps/default/config.h
@@ -26,7 +26,7 @@ along with this program. If not, see .
// #define MASTER_RIGHT
// #define EE_HANDS
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/yosino58/keymaps/sakura/config.h b/keyboards/yosino58/keymaps/sakura/config.h
index 001160d60e77..a463ee1808f1 100644
--- a/keyboards/yosino58/keymaps/sakura/config.h
+++ b/keyboards/yosino58/keymaps/sakura/config.h
@@ -28,7 +28,7 @@ along with this program. If not, see .
#define OLED_DISPLAY_128X64
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#undef RGBLED_NUM
diff --git a/keyboards/yushakobo/navpad/10/config.h b/keyboards/yushakobo/navpad/10/config.h
index 6d631ac32d16..d9325aee193a 100644
--- a/keyboards/yushakobo/navpad/10/config.h
+++ b/keyboards/yushakobo/navpad/10/config.h
@@ -72,6 +72,6 @@ along with this program. If not, see .
//#define BOOTMAGIC_LITE_COLUMN 0
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 132
#define TAPPING_LAYER_TERM 90
diff --git a/keyboards/yushakobo/navpad/10_helix_r/config.h b/keyboards/yushakobo/navpad/10_helix_r/config.h
index 646cb59b636a..3a5ba847b56d 100644
--- a/keyboards/yushakobo/navpad/10_helix_r/config.h
+++ b/keyboards/yushakobo/navpad/10_helix_r/config.h
@@ -107,6 +107,6 @@ along with this program. If not, see .
//#define BOOTMAGIC_LITE_COLUMN 0
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#define TAPPING_TERM 132
#define TAPPING_LAYER_TERM 90
diff --git a/keyboards/z34/keymaps/zigotica/config.h b/keyboards/z34/keymaps/zigotica/config.h
index 1b223cb71d25..6f86fe803f03 100644
--- a/keyboards/z34/keymaps/zigotica/config.h
+++ b/keyboards/z34/keymaps/zigotica/config.h
@@ -24,5 +24,5 @@ along with this program. If not, see .
#define TAPPING_TERM 350
#define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
diff --git a/layouts/community/split_3x6_3/drashna/config.h b/layouts/community/split_3x6_3/drashna/config.h
index 0ef36d1f3211..e43ad5e3acb7 100644
--- a/layouts/community/split_3x6_3/drashna/config.h
+++ b/layouts/community/split_3x6_3/drashna/config.h
@@ -26,7 +26,7 @@
#undef USE_I2C
#undef SSD1306OLED
-// #define TAPPING_FORCE_HOLD
+// #define QUICK_TAP_TERM 0
// #define TAPPING_TERM 100
#ifdef RGBLIGHT_ENABLE
diff --git a/quantum/action_tapping.c b/quantum/action_tapping.c
index b5386a5e1749..0350495ae578 100644
--- a/quantum/action_tapping.c
+++ b/quantum/action_tapping.c
@@ -25,6 +25,7 @@
# define IS_TAPPING_RECORD(r) (IS_TAPPING() && KEYEQ(tapping_key.event.key, (r->event.key)) && tapping_key.keycode == r->keycode)
# endif
# define WITHIN_TAPPING_TERM(e) (TIMER_DIFF_16(e.time, tapping_key.event.time) < GET_TAPPING_TERM(get_record_keycode(&tapping_key, false), &tapping_key))
+# define WITHIN_QUICK_TAP_TERM(e) (TIMER_DIFF_16(e.time, tapping_key.event.time) < GET_QUICK_TAP_TERM(get_record_keycode(&tapping_key, false), &tapping_key))
# ifdef DYNAMIC_TAPPING_TERM_ENABLE
uint16_t g_tapping_term = TAPPING_TERM;
@@ -40,9 +41,9 @@ __attribute__((weak)) uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *r
}
# endif
-# ifdef TAPPING_FORCE_HOLD_PER_KEY
-__attribute__((weak)) bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
- return false;
+# ifdef QUICK_TAP_TERM_PER_KEY
+__attribute__((weak)) uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {
+ return QUICK_TAP_TERM;
}
# endif
@@ -121,7 +122,7 @@ void action_tapping_process(keyrecord_t record) {
* readable. The conditional definition of tapping_keycode and all the
* conditional uses of it are hidden inside macros named TAP_...
*/
-# if (defined(AUTO_SHIFT_ENABLE) && defined(RETRO_SHIFT)) || defined(PERMISSIVE_HOLD_PER_KEY) || defined(TAPPING_FORCE_HOLD_PER_KEY) || defined(HOLD_ON_OTHER_KEY_PRESS_PER_KEY)
+# if (defined(AUTO_SHIFT_ENABLE) && defined(RETRO_SHIFT)) || defined(PERMISSIVE_HOLD_PER_KEY) || defined(QUICK_TAP_TERM_PER_KEY) || defined(HOLD_ON_OTHER_KEY_PRESS_PER_KEY)
# define TAP_DEFINE_KEYCODE uint16_t tapping_keycode = get_record_keycode(&tapping_key, false)
# else
# define TAP_DEFINE_KEYCODE
@@ -169,14 +170,6 @@ void action_tapping_process(keyrecord_t record) {
# define TAP_GET_IGNORE_MOD_TAP_INTERRUPT false
# endif
-# ifdef TAPPING_FORCE_HOLD_PER_KEY
-# define TAP_GET_TAPPING_FORCE_HOLD get_tapping_force_hold(tapping_keycode, &tapping_key)
-# elif defined(TAPPING_FORCE_HOLD)
-# define TAP_GET_TAPPING_FORCE_HOLD true
-# else
-# define TAP_GET_TAPPING_FORCE_HOLD false
-# endif
-
/** \brief Tapping
*
* Rule: Tap key is typed(pressed and released) within TAPPING_TERM.
@@ -385,7 +378,7 @@ bool process_tapping(keyrecord_t *keyp) {
if (WITHIN_TAPPING_TERM(event) || MAYBE_RETRO_SHIFTING(event)) {
if (event.pressed) {
if (IS_TAPPING_RECORD(keyp)) {
- if (!TAP_GET_TAPPING_FORCE_HOLD && !tapping_key.tap.interrupted && tapping_key.tap.count > 0) {
+ if (WITHIN_QUICK_TAP_TERM(event) && !tapping_key.tap.interrupted && tapping_key.tap.count > 0) {
// sequential tap.
keyp->tap = tapping_key.tap;
if (keyp->tap.count < 15) keyp->tap.count += 1;
diff --git a/quantum/action_tapping.h b/quantum/action_tapping.h
index bcccc7ac45a7..c078488c0437 100644
--- a/quantum/action_tapping.h
+++ b/quantum/action_tapping.h
@@ -22,6 +22,11 @@ along with this program. If not, see .
# define TAPPING_TERM 200
#endif
+/* period of quick tap(ms) */
+#if !defined(QUICK_TAP_TERM) || QUICK_TAP_TERM > TAPPING_TERM
+# define QUICK_TAP_TERM TAPPING_TERM
+#endif
+
/* tap count needed for toggling a feature */
#ifndef TAPPING_TOGGLE
# define TAPPING_TOGGLE 5
@@ -36,9 +41,9 @@ void action_tapping_process(keyrecord_t record);
#endif
uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record);
+uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record);
bool get_permissive_hold(uint16_t keycode, keyrecord_t *record);
bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t *record);
-bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record);
bool get_retro_tapping(uint16_t keycode, keyrecord_t *record);
bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record);
@@ -53,3 +58,9 @@ extern uint16_t g_tapping_term;
#else
# define GET_TAPPING_TERM(keycode, record) (TAPPING_TERM)
#endif
+
+#ifdef QUICK_TAP_TERM_PER_KEY
+# define GET_QUICK_TAP_TERM(keycode, record) get_quick_tap_term(keycode, record)
+#else
+# define GET_QUICK_TAP_TERM(keycode, record) (QUICK_TAP_TERM)
+#endif
diff --git a/tests/tap_hold_configurations/tapping_force_hold/config.h b/tests/tap_hold_configurations/quick_tap/config.h
similarity index 96%
rename from tests/tap_hold_configurations/tapping_force_hold/config.h
rename to tests/tap_hold_configurations/quick_tap/config.h
index 3b4646338a30..cd82d3b5a53d 100644
--- a/tests/tap_hold_configurations/tapping_force_hold/config.h
+++ b/tests/tap_hold_configurations/quick_tap/config.h
@@ -18,4 +18,4 @@
#include "test_common.h"
-#define TAPPING_FORCE_HOLD
\ No newline at end of file
+#define QUICK_TAP_TERM 100
diff --git a/tests/tap_hold_configurations/tapping_force_hold/test.mk b/tests/tap_hold_configurations/quick_tap/test.mk
similarity index 100%
rename from tests/tap_hold_configurations/tapping_force_hold/test.mk
rename to tests/tap_hold_configurations/quick_tap/test.mk
diff --git a/tests/tap_hold_configurations/tapping_force_hold/test_action_layer.cpp b/tests/tap_hold_configurations/quick_tap/test_action_layer.cpp
similarity index 98%
rename from tests/tap_hold_configurations/tapping_force_hold/test_action_layer.cpp
rename to tests/tap_hold_configurations/quick_tap/test_action_layer.cpp
index 965c702d7a8b..9c3b38050a92 100644
--- a/tests/tap_hold_configurations/tapping_force_hold/test_action_layer.cpp
+++ b/tests/tap_hold_configurations/quick_tap/test_action_layer.cpp
@@ -40,6 +40,8 @@ TEST_F(ActionLayer, LayerTapToggleWithToggleWithKeypress) {
run_one_scan_loop();
expect_layer_state(0);
+ idle_for(QUICK_TAP_TERM + 10);
+
layer_key.press();
run_one_scan_loop();
layer_key.release();
diff --git a/tests/tap_hold_configurations/tapping_force_hold/test_tap_hold.cpp b/tests/tap_hold_configurations/quick_tap/test_quick_tap.cpp
similarity index 51%
rename from tests/tap_hold_configurations/tapping_force_hold/test_tap_hold.cpp
rename to tests/tap_hold_configurations/quick_tap/test_quick_tap.cpp
index 604f9a4a5440..be43f8e6c470 100644
--- a/tests/tap_hold_configurations/tapping_force_hold/test_tap_hold.cpp
+++ b/tests/tap_hold_configurations/quick_tap/test_quick_tap.cpp
@@ -1,4 +1,3 @@
-
/* Copyright 2021 Stefan Kerkmann
*
* This program is free software: you can redistribute it and/or modify
@@ -15,6 +14,7 @@
* along with this program. If not, see .
*/
+#include "config.h"
#include "keyboard_report_util.hpp"
#include "keycode.h"
#include "test_common.hpp"
@@ -25,19 +25,19 @@
using testing::_;
using testing::InSequence;
-class TappingForceHold : public TestFixture {};
+class QuickTap : public TestFixture {};
-TEST_F(TappingForceHold, tap_regular_key_while_mod_tap_key_is_held) {
+TEST_F(QuickTap, tap_regular_key_while_mod_tap_key_is_held) {
TestDriver driver;
InSequence s;
- auto mod_tap_hold_key = KeymapKey(0, 1, 0, SFT_T(KC_P));
+ auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_P));
auto regular_key = KeymapKey(0, 2, 0, KC_A);
- set_keymap({mod_tap_hold_key, regular_key});
+ set_keymap({mod_tap_key, regular_key});
- /* Press mod-tap-hold key. */
+ /* Press mod-tap key. */
EXPECT_NO_REPORT(driver);
- mod_tap_hold_key.press();
+ mod_tap_key.press();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
@@ -53,9 +53,9 @@ TEST_F(TappingForceHold, tap_regular_key_while_mod_tap_key_is_held) {
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
- /* Release mod-tap-hold key. */
+ /* Release mod-tap key. */
EXPECT_REPORT(driver, (KC_LSFT));
- mod_tap_hold_key.release();
+ mod_tap_key.release();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
@@ -67,39 +67,39 @@ TEST_F(TappingForceHold, tap_regular_key_while_mod_tap_key_is_held) {
testing::Mock::VerifyAndClearExpectations(&driver);
}
-TEST_F(TappingForceHold, tap_mod_tap_key_while_mod_tap_key_is_held) {
+TEST_F(QuickTap, tap_mod_tap_key_while_mod_tap_key_is_held) {
TestDriver driver;
InSequence s;
- auto first_mod_tap_hold_key = KeymapKey(0, 1, 0, SFT_T(KC_P));
- auto second_mod_tap_hold_key = KeymapKey(0, 2, 0, RSFT_T(KC_A));
+ auto first_mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_P));
+ auto second_mod_tap_key = KeymapKey(0, 2, 0, RSFT_T(KC_A));
- set_keymap({first_mod_tap_hold_key, second_mod_tap_hold_key});
+ set_keymap({first_mod_tap_key, second_mod_tap_key});
- /* Press first mod-tap-hold key */
+ /* Press first mod-tap key */
EXPECT_NO_REPORT(driver);
- first_mod_tap_hold_key.press();
+ first_mod_tap_key.press();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
- /* Press second tap-hold key */
+ /* Press second mod-tap key */
EXPECT_NO_REPORT(driver);
- second_mod_tap_hold_key.press();
+ second_mod_tap_key.press();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
/* Release second tap-hold key */
EXPECT_NO_REPORT(driver);
- second_mod_tap_hold_key.release();
+ second_mod_tap_key.release();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
- /* Release first mod-tap-hold key */
+ /* Release first mod-tap key */
EXPECT_REPORT(driver, (KC_LSFT));
- first_mod_tap_hold_key.release();
+ first_mod_tap_key.release();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
- /* Idle for tapping term of first mod tap hold key. */
+ /* Idle for tapping term of first mod-tap key. */
EXPECT_REPORT(driver, (KC_LSFT, KC_A));
EXPECT_REPORT(driver, (KC_LSFT));
EXPECT_EMPTY_REPORT(driver);
@@ -107,18 +107,18 @@ TEST_F(TappingForceHold, tap_mod_tap_key_while_mod_tap_key_is_held) {
testing::Mock::VerifyAndClearExpectations(&driver);
}
-TEST_F(TappingForceHold, tap_regular_key_while_layer_tap_key_is_held) {
+TEST_F(QuickTap, tap_regular_key_while_layer_tap_key_is_held) {
TestDriver driver;
InSequence s;
- auto layer_tap_hold_key = KeymapKey(0, 1, 0, LT(1, KC_P));
+ auto layer_tap_key = KeymapKey(0, 1, 0, LT(1, KC_P));
auto regular_key = KeymapKey(0, 2, 0, KC_A);
auto layer_key = KeymapKey(1, 2, 0, KC_B);
- set_keymap({layer_tap_hold_key, regular_key, layer_key});
+ set_keymap({layer_tap_key, regular_key, layer_key});
- /* Press layer-tap-hold key */
+ /* Press layer-tap key */
EXPECT_NO_REPORT(driver);
- layer_tap_hold_key.press();
+ layer_tap_key.press();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
@@ -134,80 +134,158 @@ TEST_F(TappingForceHold, tap_regular_key_while_layer_tap_key_is_held) {
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
- /* Release layer-tap-hold key */
+ /* Release layer-tap key */
EXPECT_REPORT(driver, (KC_P));
EXPECT_REPORT(driver, (KC_A, KC_P));
EXPECT_REPORT(driver, (KC_P));
EXPECT_EMPTY_REPORT(driver);
- layer_tap_hold_key.release();
+ layer_tap_key.release();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
}
-TEST_F(TappingForceHold, tap_mod_tap_hold_key_two_times) {
+TEST_F(QuickTap, tap_key_and_tap_again_before_quick_tap_term) {
TestDriver driver;
InSequence s;
- auto mod_tap_hold_key = KeymapKey(0, 1, 0, SFT_T(KC_P));
+ auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_P));
- set_keymap({mod_tap_hold_key});
+ set_keymap({mod_tap_key});
- /* Press mod-tap-hold key. */
+ /* Press mod-tap key. */
EXPECT_NO_REPORT(driver);
- mod_tap_hold_key.press();
+ mod_tap_key.press();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
- /* Release mod-tap-hold key. */
+ /* Release mod-tap key. */
EXPECT_REPORT(driver, (KC_P));
EXPECT_EMPTY_REPORT(driver);
- mod_tap_hold_key.release();
+ mod_tap_key.release();
+ idle_for(QUICK_TAP_TERM - 10);
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
- /* Press mod-tap-hold key again. */
+ /* Press and tap mod-tap key again. */
+ EXPECT_REPORT(driver, (KC_P));
+ mod_tap_key.press();
+ run_one_scan_loop();
+ testing::Mock::VerifyAndClearExpectations(&driver);
+
+ /* Release mod-tap key. */
+ EXPECT_EMPTY_REPORT(driver);
+ mod_tap_key.release();
+ run_one_scan_loop();
+ testing::Mock::VerifyAndClearExpectations(&driver);
+}
+
+TEST_F(QuickTap, tap_key_and_hold_again_before_quick_tap_term) {
+ TestDriver driver;
+ InSequence s;
+ auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_P));
+
+ set_keymap({mod_tap_key});
+
+ /* Press mod-tap key. */
EXPECT_NO_REPORT(driver);
- mod_tap_hold_key.press();
+ mod_tap_key.press();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
- /* Release mod-tap-hold key. */
+ /* Release mod-tap key. */
EXPECT_REPORT(driver, (KC_P));
EXPECT_EMPTY_REPORT(driver);
- mod_tap_hold_key.release();
+ mod_tap_key.release();
+ idle_for(QUICK_TAP_TERM - 10);
+ testing::Mock::VerifyAndClearExpectations(&driver);
+
+ /* Press and hold mod-tap key again. */
+ EXPECT_REPORT(driver, (KC_P));
+ mod_tap_key.press();
+ run_one_scan_loop();
+ testing::Mock::VerifyAndClearExpectations(&driver);
+
+ /* Wait until tapping term expired */
+ EXPECT_NO_REPORT(driver);
+ idle_for(TAPPING_TERM);
+ testing::Mock::VerifyAndClearExpectations(&driver);
+
+ /* Release mod-tap key. */
+ EXPECT_EMPTY_REPORT(driver);
+ mod_tap_key.release();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
}
-TEST_F(TappingForceHold, tap_mod_tap_hold_key_twice_and_hold_on_second_time) {
+
+TEST_F(QuickTap, tap_key_and_tap_again_after_quick_tap_term) {
TestDriver driver;
InSequence s;
- auto mod_tap_hold_key = KeymapKey(0, 1, 0, SFT_T(KC_P));
+ auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_P));
- set_keymap({mod_tap_hold_key});
+ set_keymap({mod_tap_key});
- /* Press mod-tap-hold key. */
+ /* Press mod-tap key. */
EXPECT_NO_REPORT(driver);
- mod_tap_hold_key.press();
+ mod_tap_key.press();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
- /* Release mod-tap-hold key. */
+ /* Release mod-tap key. */
EXPECT_REPORT(driver, (KC_P));
EXPECT_EMPTY_REPORT(driver);
- mod_tap_hold_key.release();
+ mod_tap_key.release();
+ idle_for(QUICK_TAP_TERM + 10);
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
- /* Press mod-tap-hold key again. */
+ /* Press mod-tap key again. */
EXPECT_NO_REPORT(driver);
- mod_tap_hold_key.press();
+ mod_tap_key.press();
+ run_one_scan_loop();
+ testing::Mock::VerifyAndClearExpectations(&driver);
+
+ /* Release mod-tap key. */
+ EXPECT_REPORT(driver, (KC_P));
+ EXPECT_EMPTY_REPORT(driver);
+ mod_tap_key.release();
+ run_one_scan_loop();
+ testing::Mock::VerifyAndClearExpectations(&driver);
+}
+
+TEST_F(QuickTap, tap_key_and_hold_again_after_quick_tap_term) {
+ TestDriver driver;
+ InSequence s;
+ auto mod_tap_key = KeymapKey(0, 1, 0, SFT_T(KC_P));
+
+ set_keymap({mod_tap_key});
+
+ /* Press mod-tap key. */
+ EXPECT_NO_REPORT(driver);
+ mod_tap_key.press();
+ run_one_scan_loop();
+ testing::Mock::VerifyAndClearExpectations(&driver);
+
+ /* Release mod-tap key. */
+ EXPECT_REPORT(driver, (KC_P));
+ EXPECT_EMPTY_REPORT(driver);
+ mod_tap_key.release();
+ idle_for(QUICK_TAP_TERM + 10);
+ testing::Mock::VerifyAndClearExpectations(&driver);
+
+ /* Press and hold mod-tap key again. */
+ EXPECT_NO_REPORT(driver);
+ mod_tap_key.press();
+ run_one_scan_loop();
+ testing::Mock::VerifyAndClearExpectations(&driver);
+
+ /* Wait until tapping term expired */
+ EXPECT_REPORT(driver, (KC_LSFT));
idle_for(TAPPING_TERM);
testing::Mock::VerifyAndClearExpectations(&driver);
- /* Release mod-tap-hold key. */
- EXPECT_REPORT(driver, (KC_LEFT_SHIFT));
+ /* Release mod-tap key. */
EXPECT_EMPTY_REPORT(driver);
- mod_tap_hold_key.release();
+ mod_tap_key.release();
run_one_scan_loop();
testing::Mock::VerifyAndClearExpectations(&driver);
}
diff --git a/users/bcat/config.h b/users/bcat/config.h
index 7bb5d71baeb1..b9eac74ff60d 100644
--- a/users/bcat/config.h
+++ b/users/bcat/config.h
@@ -35,7 +35,7 @@
/* Turn off key repeat support of the tap keycode for tap-hold keys, enabling
* holds to work correctly in quick succession after taps.
*/
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
#if defined(OLED_ENABLE)
/* The built-in OLED timeout wakes the OLED screen every time the buffer is
diff --git a/users/cwebster2/config.h b/users/cwebster2/config.h
index 78733687cc41..313e6d533feb 100644
--- a/users/cwebster2/config.h
+++ b/users/cwebster2/config.h
@@ -18,7 +18,7 @@
#define TAPPING_TOGGLE 1
#define TAPPING_TERM 200
#define TAPPING_TERM_PER_KEY
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
#undef PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT
#define NO_ACTION_ONESHOT
diff --git a/users/drashna/config.h b/users/drashna/config.h
index 5c5c131e36be..22c789b8c689 100644
--- a/users/drashna/config.h
+++ b/users/drashna/config.h
@@ -83,7 +83,7 @@
#if defined(PER_KEY_TAPPING)
# define IGNORE_MOD_TAP_INTERRUPT_PER_KEY
# define PERMISSIVE_HOLD_PER_KEY
-# define TAPPING_FORCE_HOLD_PER_KEY
+# define QUICK_TAP_TERM_PER_KEY
# define HOLD_ON_OTHER_KEY
# define RETRO_TAPPING_PER_KEY
# define HOLD_ON_OTHER_KEY_PRESS_PER_KEY
diff --git a/users/drashna/keyrecords/tapping.c b/users/drashna/keyrecords/tapping.c
index 7496610c2fd8..37945d2f67a7 100644
--- a/users/drashna/keyrecords/tapping.c
+++ b/users/drashna/keyrecords/tapping.c
@@ -57,14 +57,14 @@ __attribute__((weak)) bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrec
}
#endif // IGNORE_MOD_TAP_INTERRUPT_PER_KEY
-#ifdef TAPPING_FORCE_HOLD_PER_KEY
-__attribute__((weak)) bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
+#ifdef QUICK_TAP_TERM_PER_KEY
+__attribute__((weak)) uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
default:
- return false;
+ return QUICK_TAP_TERM;
}
}
-#endif // TAPPING_FORCE_HOLD_PER_KEY
+#endif // QUICK_TAP_TERM_PER_KEY
#ifdef RETRO_TAPPING_PER_KEY
__attribute__((weak)) bool get_retro_tapping(uint16_t keycode, keyrecord_t *record) {
diff --git a/users/dshields/config.h b/users/dshields/config.h
index 1420a9178f14..279bcf217ba4 100644
--- a/users/dshields/config.h
+++ b/users/dshields/config.h
@@ -6,7 +6,7 @@
#define ONESHOT_TIMEOUT 3000
#define IGNORE_MOD_TAP_INTERRUPT
#define PERMISSIVE_HOLD_PER_KEY
-#define TAPPING_FORCE_HOLD_PER_KEY
+#define QUICK_TAP_TERM_PER_KEY
#define TAPPING_TERM 200
#define BACKLIGHT_BREATHING
#define DYNAMIC_MACRO_NO_NESTING
diff --git a/users/dshields/dshields.c b/users/dshields/dshields.c
index 46f0b33cd3fe..a8e13331044d 100644
--- a/users/dshields/dshields.c
+++ b/users/dshields/dshields.c
@@ -29,7 +29,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
return true;
}
-bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
+uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case MT_A:
case MT_S:
@@ -39,9 +39,9 @@ bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
case MT_K:
case MT_L:
case MT_SCLN:
- return true;
+ return 0;
default:
- return false;
+ return QUICK_TAP_TERM;
}
}
@@ -55,4 +55,3 @@ bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) {
return false;
}
}
-
diff --git a/users/kuchosauronad0/config.h b/users/kuchosauronad0/config.h
index 9315f879ae3e..bc0fe67df88f 100644
--- a/users/kuchosauronad0/config.h
+++ b/users/kuchosauronad0/config.h
@@ -70,7 +70,7 @@
// actually sends Ctrl-x. That's bad.)
#define IGNORE_MOD_TAP_INTERRUPT
#undef PERMISSIVE_HOLD
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
//#define RETRO_TAPPING
#ifndef TAPPING_TOGGLE
diff --git a/users/manna-harbour_miryoku/config.h b/users/manna-harbour_miryoku/config.h
index 920003598ee9..429e08493da2 100644
--- a/users/manna-harbour_miryoku/config.h
+++ b/users/manna-harbour_miryoku/config.h
@@ -15,7 +15,7 @@
#define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-#define TAPPING_FORCE_HOLD
+#define QUICK_TAP_TERM 0
// Auto Shift
#define NO_AUTO_SHIFT_ALPHA
@@ -40,4 +40,3 @@
#define COMBO_TERM 200
#define EXTRA_SHORT_COMBOS
#endif
-
diff --git a/users/muppetjones/config.h b/users/muppetjones/config.h
index 3dd4d1b1b6ef..583567d4f324 100644
--- a/users/muppetjones/config.h
+++ b/users/muppetjones/config.h
@@ -34,7 +34,7 @@
# define IGNORE_MOD_TAP_INTERRUPT
// Enable rapid switch from tap to hold, disables double tap hold auto-repeat.
-# define TAPPING_FORCE_HOLD
+# define QUICK_TAP_TERM 0
#endif
diff --git a/users/ridingqwerty/config.h b/users/ridingqwerty/config.h
index 6501efe62f05..291c4877e148 100644
--- a/users/ridingqwerty/config.h
+++ b/users/ridingqwerty/config.h
@@ -5,7 +5,7 @@
#define TAPPING_TERM 175
#define MACRO_TIMER 5
-#define TAPPING_FORCE_HOLD_PER_KEY
+#define QUICK_TAP_TERM_PER_KEY
// testing
#define TAPPING_TERM_PER_KEY
//#define IGNORE_MOD_TAP_INTERRUPT // rolling R3 "zxcv", etc...
diff --git a/users/ridingqwerty/ridingqwerty.c b/users/ridingqwerty/ridingqwerty.c
index 8934b9365b18..639bb8d2b388 100644
--- a/users/ridingqwerty/ridingqwerty.c
+++ b/users/ridingqwerty/ridingqwerty.c
@@ -55,11 +55,11 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
}
};
-bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case NM(SCLN):
- return true;
- default:
- return false;
- }
+uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {
+ switch (keycode) {
+ case NM(SCLN):
+ return 0;
+ default:
+ return QUICK_TAP_TERM;
+ }
}
diff --git a/users/uqs/config.h b/users/uqs/config.h
index 4bb793532bac..455aae9da8a6 100644
--- a/users/uqs/config.h
+++ b/users/uqs/config.h
@@ -15,7 +15,7 @@
#define TAPPING_TOGGLE 2 // number of taps for a toggle-on-tap
#define TAPPING_TERM 170 // ms to trigger tap
// https://precondition.github.io/home-row-mods
-#define TAPPING_FORCE_HOLD // make tap-then-hold _not_ do key auto repeat
+#define QUICK_TAP_TERM 0 // make tap-then-hold _not_ do key auto repeat
#define IGNORE_MOD_TAP_INTERRUPT
#define PERMISSIVE_HOLD // I don't think this works for me, hence I rolled my own implementation.
diff --git a/users/vosechu/config.h b/users/vosechu/config.h
index 837cc60ff7c1..81d9305d509b 100644
--- a/users/vosechu/config.h
+++ b/users/vosechu/config.h
@@ -6,7 +6,7 @@
// actually sends Ctrl-x. That's bad.)
#define IGNORE_MOD_TAP_INTERRUPT
#undef PERMISSIVE_HOLD
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
//#define RETRO_TAPPING
#ifndef TAPPING_TOGGLE
diff --git a/users/xulkal/config.h b/users/xulkal/config.h
index 7f7782807efa..bc175dda9889 100644
--- a/users/xulkal/config.h
+++ b/users/xulkal/config.h
@@ -1,10 +1,11 @@
#pragma once
-#undef TAPPING_FORCE_HOLD
-
#undef TAPPING_TERM
#define TAPPING_TERM 175
+#undef QUICK_TAP_TERM
+#define QUICK_TAP_TERM TAPPING_TERM
+
#define SPACE_CADET_MODIFIER_CARRYOVER
#define LSPO_KEYS KC_LSFT, KC_TRNS, KC_LBRC
#define RSPC_KEYS KC_RSFT, KC_TRNS, KC_RBRC
diff --git a/users/yet-another-developer/config.h b/users/yet-another-developer/config.h
index 6d1bf83f0b02..030872d3ddf8 100644
--- a/users/yet-another-developer/config.h
+++ b/users/yet-another-developer/config.h
@@ -31,7 +31,7 @@
// actually sends Ctrl-x. That's bad.)
#define IGNORE_MOD_TAP_INTERRUPT
#undef PERMISSIVE_HOLD
-//#define TAPPING_FORCE_HOLD
+//#define QUICK_TAP_TERM 0
//#define RETRO_TAPPING
#ifndef TAPPING_TOGGLE