pynput icon indicating copy to clipboard operation
pynput copied to clipboard

Alt gr not working with icelandic keyboard layout

Open logileifs opened this issue 6 years ago • 6 comments

When using pynput with icelandic keyboard layout Alt_gr gets registered as an unknown key with keycode 65027 but normally the keycode should be 65406. This makes the @ symbol and a few other characters not work since they rely on the Alt_gr.

I've also noticed a similar behavior with Ctrl+Shift+Tab. Tab works, Ctrl+Tab works, Shift+Tab works but when I press Ctrl+Shift+Tab it gets registered as a completely different character (keycode 65056) which isn't even known by pynput. This was very easy to work around though since I could just map that keycode to the Ctrl+Shift+Tab press but unfortunately I can not use the same tactic when Alt_gr is not recognized

logileifs avatar Aug 24 '17 23:08 logileifs

Maybe this helps a bit? https://github.com/moses-palmer/pynput/issues/44

SpecialCharacter avatar Aug 25 '17 17:08 SpecialCharacter

@SpecialCharacter thanks for the tip but I don't think this will help since I'm not on windows and I was hoping to get a solution that would work with any keyboard layout. I am not reliably able to catch the Alt gr with any layout because it seems to be mapped to a different keycode depending on language layout

logileifs avatar Aug 25 '17 18:08 logileifs

@logileifs ok, so we both are looking for a way to make pynput recognize AltGr…

SpecialCharacter avatar Aug 25 '17 18:08 SpecialCharacter

I tried a few different keyboard layouts, German, French and Icelandic, all of them have the AltGr key mapped to 65027. It seems the english layout is the only one (of those) using AltGr as 65406.

The main problem for me though is that this key (65027) gets recognized as an alphanumeric key by pynput so I cannot reliably catch it as a modifier.

@moses-palmer is this something that could be fixed? I'd be happy to make a pull request if you could maybe point me in the right direction

logileifs avatar Aug 26 '17 14:08 logileifs

I have pushed a partial solution to fixup-xorg-altgr.

This branch simply adds a mapping from ISO_Level3_Shift to AltGr. This solution is not complete; it modifies only the listener part, so attempting to send a lone AltGr will send Mode_switch.

moses-palmer avatar Aug 27 '17 20:08 moses-palmer

Hello, I may have a similar or the same issue using a German qwertz keyboard on Ubuntu 20.04; pynput 1.7.3. altgr maps onto 65027 for me as well. Parts of the keyboard map fine (normal alphanumeric, shift+number keys), some keys seem to follow the US keyboard layout, e.g. altgr+ü yields @, altgr+'+' yields [, altgr+shift+'+' yields {, altgr+ä yields :, and so on (I attached the expected German layout). I don't quite know where to go from this :) to me it seems like the layouts are merged somehow, so maybe the problem lies on the level of the OS ... maybe someone has any ideas. keys

hou2zi0 avatar Mar 27 '21 15:03 hou2zi0