The new Microsoftslop copilot key always sends the following key-sequence when pressed:
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 remaps should work as expected


Is it? I mean, if I have Linux installed, you know.
Yeah… All the tools in Linux are going to do this weird thing where they expect it to behave like a normal key. So you’d have to do all the hacks mentioned to make it work. For example, GNOME keybind stops detecting the key bind when you release. Etc. Maybe the kernel will accept a “broken copilot key hack“ that implements it but it’s not good.
Even with hacks, it still won’t work like a modifier like most people use alt/ctrl/win because those rely on knowing the key up to see multiple keys pressed together before release. So… Broken.
It’s much worse than I anticipated! Thanks for explaining! I hope to see as little laptops with the key as possible.