qmk / qmk_firmware

Open-source keyboard firmware for Atmel AVR and Arm USB families
https://qmk.fm
GNU General Public License v2.0
18k stars 38.69k forks source link

[Bug] Mac with "English international" keyboard layout: KC_GRAVE vs. KC_NONUS_BACKSLASH #20207

Open gerritzen opened 1 year ago

gerritzen commented 1 year ago

Describe the Bug

I have a MacBook with the "English international" keyboard layout. That's pretty much a normal layout on ISO, except there is a §± key between tab and escape, and the `~ key is between left shift and z.

When I look at the keyboard viewer, everything looks as expected:

https://user-images.githubusercontent.com/19152801/226570017-f76448a5-38a9-460f-8057-7d01992a587f.mov

In QMK, KC_GRAVE produces §±, which is annoying but ok. Maybe that's the keyboard layout. However, it turns out, that it appears to be registered as `~ by the keyboard viewer.

https://user-images.githubusercontent.com/19152801/226570695-f5d2f453-b826-4b65-b7f8-6a9234fb3f8c.mov

Is this a bug in QMK or macOS? Is there documentation missing? My keyboard type is set to ISO, which was asked in a similar bug report #16854. This happens with thee "ABC" and "U.S." software layouts.

Keyboard Used

kbdfans/kbd67/rev2

Link to product page (if applicable)

No response

Operating System

macOS 13.2.1

qmk doctor Output

Ψ QMK Doctor is checking your environment.
Ψ CLI version: 1.1.1
Ψ QMK home: [...]
Ψ Detected macOS 13.2.1 (Intel).
Ψ Git branch: mac
Ψ Repo version: 0.20.1
⚠ Git has unstashed/uncommitted changes.
Ψ - Latest mac: 2023-03-20 13:47:35 +0100 (7026b2a8d6) -- Merge remote-tracking branch 'upstream/master' into Mac
Ψ - Latest upstream/master: 2023-03-20 09:19:28 +1000 (50b12ece13) -- Update lpad info.json (#20184)
Ψ - Latest upstream/develop: 2023-03-20 14:13:53 +1100 (cd94ba031c) -- Quantum Painter QoL enhancements -- auto-poweroff, auto-flush, buffer sizing (#20013)
Ψ - Common ancestor with upstream/master: 2023-03-20 09:19:28 +1000 (50b12ece13) -- Update lpad info.json (#20184)
Ψ - Common ancestor with upstream/develop: 2023-03-20 09:19:28 +1000 (50b12ece13) -- Update lpad info.json (#20184)
Ψ CLI installed in virtualenv.
Ψ All dependencies are installed.
Ψ Found arm-none-eabi-gcc version 9.5.0
Ψ Found avr-gcc version 9.4.0
⚠ We do not recommend avr-gcc newer than 8. Downgrading to 8.x is recommended.
Ψ Found avrdude version 7.0
Ψ Found dfu-programmer version 1.0.0
Ψ Found dfu-util version 0.11
Ψ Submodules are up to date.
Ψ Submodule status:
Ψ - lib/chibios: 2023-01-03 19:29:26 +0000 --  (0062927e3)
Ψ - lib/chibios-contrib: 2023-01-11 16:42:27 +0100 --  (a224be15)
Ψ - 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

Other keyboard-related software installed

KeyCastr

Additional Context

No response

fauxpark commented 1 year ago

Yes, it is probably a bug with the accessibility keyboard - QMK does not know anything about the host and always sends the same keycodes regardless of layout/language.