qmk/qmk_firmware

[Bug] When holding multiple mod-tap keys, only one gets registered as a modifier

Open

#13.346 aperta il 26 giu 2021

Vedi su GitHub
 (2 commenti) (0 reazioni) (0 assegnatari)C (43.867 fork)batch import
bughelp wanted

Metriche repository

Star
 (20.368 star)
Metriche merge PR
 (Merge medio 20g 9h) (27 PR mergiate in 30 g)

Descrizione

Describe the Bug

I have home-row modifiers set up with mod-tap like so:

#define HM_A LALT_T(KC_A)
#define HM_R LGUI_T(KC_R)
#define HM_S LSFT_T(KC_S)
#define HM_T LCTL_T(KC_T)

My relevant configuration is as follows:

#define TAPPING_TERM 250
#define IGNORE_MOD_TAP_INTERRUPT
#define TAPPING_FORCE_HOLD
#define PERMISSIVE_HOLD

When I input this key sequence:

HM_R down, HM_S down, KC_SPACE down, KC_SPACE up, HM_S up, HM_R up

My computer sees the following:

gui down, s down, space down, space up, s up, gui up

But I would expect to see this:

gui down, shift down, space down, space up, shift up, gui up

Basically, I would expect the second mod-tap key to also be treated as a modifier since space was pressed and released between when it was pressed and released.

System Information

  • Keyboard: Keyboardio Atreus
    • Revision (if applicable):
  • Operating system: Arch Linux
  • AVR GCC version: 11.1.0
  • ARM GCC version: 11.1.0
  • QMK Firmware version: 0.13.2
  • Any keyboard related software installed?
    • AutoHotKey
    • Karabinerk
    • Other:

Guida contributor