~ruther/qmk_firmware

ref: 38d6e9a75a4cff4ae5bd32209fc0cecb83c6f23b qmk_firmware/docs/feature_key_lock.md -rw-r--r-- 1.3 KiB
38d6e9a7 — ploopyco Add Ploopy Madromys mouse (#21989) 1 year, 5 months ago

#Key Lock

Sometimes you may find yourself needing to hold down a specific key for a long period of time. Key Lock holds down the next key you press for you. Press it again, and it will be released.

Let's say you need to type in ALL CAPS for a few sentences. Hit QK_LOCK, and then Shift. Now, Shift will be considered held until you tap it again. You can think of Key Lock as Caps Lock, but supercharged.

#Usage

First, enable Key Lock by setting KEY_LOCK_ENABLE = yes in your rules.mk. Then pick a key in your keymap and assign it the keycode QK_LOCK.

#Keycodes

Keycode Description
QK_LOCK Hold down the next key pressed, until the key is pressed again

#Caveats

Key Lock is only able to hold standard action keys and One Shot modifier keys (for example, if you have your Shift defined as OSM(MOD_LSFT)). This does not include any of the QMK special functions (except One Shot modifiers), or shifted versions of keys such as KC_LPRN. If it's in the Basic Keycodes list, it can be held.

Switching layers will not cancel the Key Lock. The Key Lock can be cancelled by calling the cancel_key_lock() function.

Do not follow this link