-
Hi, Here is how I did it for now:
if (!process_layer_lock(keycode, record, record->tap.count > 0 ? MT(MOD_LCTL, KC_F17) : NOT_USED)) {
return false;
} The Another option I've considered was to process |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Thank you for the great question! You're right, it's natural to want to combine Layer Lock with some other function on hold. That's a slick workaround you made with that conditional arg
Yes, I've struggled a fair bit with this approach in Achordion and Repeat Key and have some comments about it. Recursively calling Generally, for combining non-basic keys with MT, there is a pattern suggested in "changing the tap function" in the mod-tap documentation. This appears to be QMK's recommended solution to the problem. For the case of Layer Lock, the handler should, on tap, call |
Beta Was this translation helpful? Give feedback.
Thank you for the great question! You're right, it's natural to want to combine Layer Lock with some other function on hold.
That's a slick workaround you made with that conditional arg
record->tap.count > 0 ? MT(MOD_LCTL, KC_F17) : NOT_USED
. This makes sense. If you like, you could use the existingKC_NO
keycode for the purpose ofNOT_USED
.Yes, I've struggled a fair bit with this approach in Achordion and Repeat Key and have some comments about it. Recursively cal…