Cmd + ü / ö / ä (neo) sending Cmd + z / x / c
Closed this issue · 7 comments
When pressing said combinations in neo the qwerty-equivalent is sent. This makes it impossible to assign actions to these keys in editors / IDEs / whatever.
This is probably the same underlying issue I mentioned in this comment, which is that combinations with keys from higher layers (and apparenty üöä) are interpreted very differently by different applications. E.g., IntelliJ IDEA, iTerm2, Keyboard Maestro, and macOS’s built-in shortcuts all “see” different keys.
Which program/IDE are referring to specifically?
I can't seem to reproduce the issue. At least for keyboard shortcuts in the system settings the correct keys strokes (Cmd+ü/ö/ä) are detected.
@neominik, can you name a specific applications where this happens for you? Which keyboard layout file are you using (from neo-layout.org or from jgosmann/neo2-layout-osx)?
@tjanson I don't think these problems are related. With the layer 3 shortcuts the problem is that mod3 is the same as alt/option. Thus, only either the layer 1 or layer 3 mapping can be used for shortcuts with mod3/alt/option. For a number of layer 4 keys shortcuts cannot work because these keys actually send a sequence of key presses and there is not a single key combination that the shortcut could be assigned too. Cmd+ü/ö/ä, however, is just using layer 1 without any of the “weirdness” of higher the higher levels.
I can indeed reproduce the issue in IntelliJ IDEA and I think it is neither an issue with Karabiner-Elements-Neo nor with the neo.keylayout. In fact, I can switch my keyboard layout to the German system layout and will not get ü/ö/ä on the corresponding keys but whatever key is in that place in the US keyboard layout. (It also happens without Cmd and just pressing the bare key.)
To me that seems to be a bug (or a feature?) of IntelliJ IDEA (and maybe other applications?). Apparently, they read the raw key code and don't respect the active keyboard layout.
I am using the layout file from neo-layout.org. The jgosmann/neo2-layout-osx caused problems for me earlier.
I got this in various applications. IntelliJ IDEA, Sublime Text 3 and Light Table come to mind.
The weird thing is that the other hardware-keys (b / q / r) which should produce z / x / c in neo actually work as they should instead of using the raw key code.
Why would an application read the raw key for some keys and the key from the active layout for others?
I think that those applications might read the produced character and try to convert it back into a key code which fails for non-US characters, but I'm not really sure.
Also note that at least for IntelliJ IDEA it is known that there are issues with non-US keyboard layouts.
I'm closing this for know as to me this seems a problem with how those applications determine the shortcuts and I see no way of fixing this in Karabiner-Elements (or neo2-layout-osx). If anyone has an idea what to do about this, let me know.
I added a mention of this problem in the readme files.