mirror of
https://github.com/qmk/qmk_userspace.git
synced 2026-04-22 11:30:23 -04:00
Enable hold_on_other_key_press for thumb keys + increase COMBO_TERM to 50
- hold_on_other_key_press for thumb mod-tap keys (GU_BSP, GU_SPC, CT_GRV, AL_DEL, AL_ENT, CT_BSL): shortcuts like CMD+Z, CMD+SHIFT+V resolve immediately when the next key is pressed. RPI guard still prevents accidental modifier activation during fast typing. - permissive_hold also enabled for thumb keys as backup for nested taps. - COMBO_TERM 40 → 50: slightly more forgiving combo activation window without triggering on fast typing. Agent-Logs-Url: https://github.com/timfee/qmk_userspace/sessions/a215aefa-1750-491a-8a85-8745466bb539 Co-authored-by: timfee <3246342+timfee@users.noreply.github.com>
This commit is contained in:
parent
d1b49e5a2e
commit
41de8dfa7b
2 changed files with 27 additions and 4 deletions
|
|
@ -12,7 +12,7 @@
|
||||||
|
|
||||||
// ── Combos ──
|
// ── Combos ──
|
||||||
#define COMBO_COUNT 8
|
#define COMBO_COUNT 8
|
||||||
#define COMBO_TERM 40
|
#define COMBO_TERM 50
|
||||||
#define COMBO_ONLY_FROM_LAYER 0
|
#define COMBO_ONLY_FROM_LAYER 0
|
||||||
|
|
||||||
// ── OLED (SSD1312 on Keebart Corne Choc Pro) ──
|
// ── OLED (SSD1312 on Keebart Corne Choc Pro) ──
|
||||||
|
|
|
||||||
|
|
@ -300,20 +300,43 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// ── Per-key permissive hold (pinky layer-taps only) ──
|
// ── Per-key permissive hold ──
|
||||||
|
// Layer-taps (pinky keys) and thumb mod-taps benefit from permissive
|
||||||
|
// hold: a nested tap (press+release another key within the hold)
|
||||||
|
// immediately selects the hold action.
|
||||||
bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) {
|
bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) {
|
||||||
switch (keycode) {
|
switch (keycode) {
|
||||||
case ESC_L2:
|
case ESC_L2:
|
||||||
case MIN_L1:
|
case MIN_L1:
|
||||||
|
case GU_BSP:
|
||||||
|
case GU_SPC:
|
||||||
|
case CT_GRV:
|
||||||
|
case CT_BSL:
|
||||||
|
case AL_DEL:
|
||||||
|
case AL_ENT:
|
||||||
return true;
|
return true;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// ── Per-key hold on other key press — disabled for all keys ──
|
// ── Per-key hold on other key press ──
|
||||||
|
// Enabled for thumb mod-tap keys so shortcuts like CMD+Z, CMD+SHIFT+V
|
||||||
|
// resolve immediately when the next key is pressed (no need to wait for
|
||||||
|
// tapping_term to expire). The RPI guard in pre_process_record_user
|
||||||
|
// still prevents accidental modifier activation during fast typing.
|
||||||
bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {
|
bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {
|
||||||
|
switch (keycode) {
|
||||||
|
case GU_BSP:
|
||||||
|
case GU_SPC:
|
||||||
|
case CT_GRV:
|
||||||
|
case CT_BSL:
|
||||||
|
case AL_DEL:
|
||||||
|
case AL_ENT:
|
||||||
|
return true;
|
||||||
|
default:
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// ── Per-key retro tapping — disabled to prevent unintended tap action
|
// ── Per-key retro tapping — disabled to prevent unintended tap action
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue