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


After using Mac I’m never going back to pressing modifiers with the pathetic pinky instead of the strong thumb. It’s especially nice with an MS Natural keyboard with its gigantic alt keys, remapped to cmd.
Supposedly some early keyboards had ctrl under the thumb, which is why Emacs employs it quite a bit. I wonder if other apps and systems also had the same logic initially, or borrowed it from Emacs, leading to ctrl being used as the main modifier in Windows and Linux.