qmk/qmk_firmware

[Bug] DUMMY_MOD_NEUTRALIZER doesn't work as intended

Open

#22.208 aperta il 5 ott 2023

Vedi su GitHub
 (4 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

The dummy mod neutralizer feature in key overrides feature is not being called after the suppression restores the modifier key.

Example: I have this bit of code that should let me use alt+9 for KC_HOME in keymap.c:

const key_override_t alt_9_override = ko_make_basic(MOD_BIT(KC_LEFT_ALT), KC_9, KC_HOME);
const key_override_t **key_overrides = (const key_override_t *[]){
    &alt_9_override,
    NULL
};

with config.h:

#define DUMMY_MOD_NEUTRALIZER_KEYCODE KC_RIGHT_CTRL
#define MODS_TO_NEUTRALIZE { MOD_BIT(KC_LEFT_ALT) }

but when I tested my alt+9 on keytester, this is the output I got: image

When the suppression reactivates the alt button, dummy neutralizer should be fired as well. If left like this, my alt+9 fires KC_HOME + KC_LALT, instead of just KC_HOME

Keyboard Used

kprepublic/bm60hsrgb_poker/rev2

Link to product page (if applicable)

https://kprepublic.com/products/bm60-rgb-60-gh60-hot-swappable-pcb-programmed-qmk-firmware-type-c

Operating System

Windows

qmk doctor Output

Ψ QMK Doctor is checking your environment.
Ψ CLI version: 1.1.1
Ψ QMK home: C:/Users/Administrator/qmk_firmware
Ψ Detected Windows 10 (10.0.19045).
Ψ QMK MSYS version: 1.7.2
Ψ Git branch: master
Ψ Repo version: 0.22.10
⚠ Git has unstashed/uncommitted changes.
Ψ - Latest master: 2023-10-04 03:17:01 -0700 (6e93b59f61) -- Monstargear XO87 Soldered: correct layout data (#22199)
Ψ - Latest upstream/master: 2023-10-04 21:55:49 -0700 (92873cc14f) -- Add printedpad keyboard (#21202)
Ψ - Latest upstream/develop: None
Ψ - Common ancestor with upstream/master: 2023-10-04 03:17:01 -0700 (6e93b59f61) -- Monstargear XO87 Soldered: correct layout data (#22199)
Ψ - Common ancestor with upstream/develop: None
Ψ All dependencies are installed.
Ψ Found arm-none-eabi-gcc version 10.1.0
Ψ Found avr-gcc version 8.5.0
Ψ Found avrdude version 7.0
Ψ Found dfu-programmer version 0.7.2
Ψ Found dfu-util version 0.11
Ψ Submodules are up to date.
Ψ Submodule status:
Ψ - lib/chibios: 2023-04-15 13:48:04 +0000 --  (11edb1610)
Ψ - lib/chibios-contrib: 2023-07-17 11:39:05 +0200 --  (da78eb37)
Ψ - lib/googletest: 2021-06-11 06:37:43 -0700 --  (e2239ee6)
Ψ - lib/lufa: 2022-08-26 12:09:55 +1000 --  (549b97320)
Ψ - lib/vusb: 2022-06-13 09:18:17 +1000 --  (819dbc1)
Ψ - lib/printf: 2022-06-29 23:59:58 +0300 --  (c2e3b4e)
Ψ - lib/pico-sdk: 2023-02-12 20:19:37 +0100 --  (a3398d8)
Ψ - lib/lvgl: 2022-04-11 04:44:53 -0600 --  (e19410f8)
Ψ QMK is ready to go, but minor problems were found

Is AutoHotKey / Karabiner installed

  • AutoHotKey (Windows)
  • Karabiner (macOS)

Other keyboard-related software installed

No response

Additional Context

I have AutoHotkey installed but my goal is to get rid of it, that's why I'm making these overrides in QMK. All testing was done with supressed hotkeys in autohotkey.

Guida contributor