Remap
Any key does what you say.
Caps Lock sends Escape. Right Alt holds push-to-talk. The Windows key sends nothing. Rebind is free, and each rule is a few lines of Luau.
A keyboard types phrases. Caps Lock is remapped to Escape, Right Alt to F13 for push-to-talk, and the Windows key is swallowed.
The script
The keyboard above, as Luau.
Each Bind claims only its own key. Every other key reaches your apps untouched.
-- rebind: min_sdk=3.0.0 -- rebind: name=Remap -- Caps Lock sends Escape Bind("CapsLock", { action = function() HID.Down("Escape") end, release = function() HID.Up("Escape") end, }) -- hold Right Alt to talk: F13 is the push-to-talk key Bind("RAlt", { action = function() HID.Down("F13") end, release = function() HID.Up("F13") end, }) -- the Windows key sends nothing Bind("LWin", function() end)
remap.luau
Three keys, three rules
Set F13 as the push-to-talk key in your voice app. Left Ctrl + Left Alt + K stops every script and releases held keys.
The factory had opinions. You have scripts.
Install Rebind, run the script above, and press Caps Lock.