The new Micro~~soft~~slop 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.
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
Yuck, holding.
Nah fam, no altered behaviour for the same key based on time.
That's just to not emit the keyup for ESC after pressing Super+key and letting go. The only thing affected by time is a reeeaally long ESC press not registering (the same as holding Super for a second).
And rolling Super+key faster than the timeout resolves as a hold (Super) instead of tap (ESC), so there's zero jank unless you need to hold ESC, and there's still the real key.
Alright, that may have its use.
I thought there was no way a binding like that would just work when I tried it and was blown away. Keyd's config is powerful but so simple. I urge any linux user interested in key layers or just remapping in general to check it out! Arguably hits top 5 software of all time.