The new Microsoftslop copilot key always sends the following key-sequence when pressed down:
copilot key down: left-shift-down left-meta-down f23-down f23-up left-meta-up left-shift-up
copilot key up: <null>
This means there’s no real key-up event when you release the key --> it can’t be used (properly) as a modifier like ctrl or alt.
The workaround is to send a pretend key-up event after a time delay, but then you mustn’t be too slow / fast when pressing a shortcut.
- Linux workaround: https://github.com/m-bartlett/remap-copilot?tab=readme-ov-file
- Windows workaround https://github.com/randyrants/sharpkeys/issues/560
- https://xcancel.com/dcolascione/status/2019936377408811319
tldr: AI took a perfectly working modifier key from you.
— edit —
Some keyboards apparently do the “right” thing and don’t send the whole sequence at once, you can remap those properly with keyd, see: https://github.com/rvaiya/keyd/issues/1025#issuecomment-2971556563 / https://github.com/rvaiya/keyd/issues/825
copilot key down: left-shift-down left-meta-down f23-down
copilot key up: f23-up left-meta-up left-shift-up
this will still break "left-shift + remapped copilot" and "left-meta + remapped copilot", but "RCtrl + letter key" can work as expected


Yes that’s how I understood it. You can’t fix a missing key-up signal on the OS/driver level.
This isn’t Microsoft’s first offense, btw: https://github.com/Rast1234/copilot_key_on_my_keyboard?tab=readme-ov-file#how-these-keys-work
What about just intercepting F23 since nothing else really uses that? It looks like the key up is in there. Ignore the other modifiers.
afaik: the complete sequence is triggered when when the copilot key is pressed. You’d intercept the F23-up immediately --> no way to detect when the physical key is released.
Oh now I’m following you. So at most you could remap it to an instant trigger. There’s no option for holding the key down.
In the least it would be usable as a key alongside other modifiers. But since those keyboard with copilot key tend to use it instead of R-Control, that’s not much of an improvement.
This seems to be on purpose to spite the people who want to remap it
nah, they just ran out of options, because they already used the press all modifier keys (HYPER) hack for the physical office key(I’d have to check how it handles key-up events, but I’d bet it does it correctly / distinguishable --> I think I’m on to something https://www.makeuseof.com/remap-caps-lock-to-hyper-key-and-double-shortcuts/ )
Defining a new keycode would’ve gotten them in trouble with their hardware partners, because that would be hard and break backwards compatibility, so they took the easy / stupid way out to implement this awesome new button, just to appease the marketing / product department. (conjecture)
This is just a result of the banality of evil / incompetence.