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.

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

    • ramble81@lemmy.zip
      link
      fedilink
      arrow-up
      10
      ·
      2 days ago

      What about just intercepting F23 since nothing else really uses that? It looks like the key up is in there. Ignore the other modifiers.

      • atteroOP
        link
        fedilink
        arrow-up
        12
        ·
        2 days ago

        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.

        • ramble81@lemmy.zip
          link
          fedilink
          arrow-up
          6
          ·
          2 days ago

          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.

          • Venia Silente@lemmy.dbzer0.com
            link
            fedilink
            English
            arrow-up
            3
            ·
            2 days ago

            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.

      • atteroOP
        link
        fedilink
        arrow-up
        5
        ·
        edit-2
        2 days ago

        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.