Problem with moving windows between workspaces on us keyboard layout
EDIT: As the comment of njsg states, the obvious solution are keycodes instead of keysyms. Using 'bindcode $mod+Shift+10,11,12,...' works; xev is your friend for finding the keycodes!
Hello,
I'm pretty new to i3 and I ran into a serious problem with workspace switching. Since i am from Germany, my laptop keyboard has german layout. However, at work I use an external keyboard with us layout since for programming I like that layout better. I have thus written a small script that allows me to switch between german and us layout and I have successfully bound it to my F11 key. The command within the script are
'setxkbmap -layout de' and 'setxkbmap -layout us -variant intl'
So much for the setting, because I don't know if the problem is related to that. My problem is as follows: Having us layout enabled, whenever I press $mod+Shift+num, this does work only for a few numbers, namely 1,4,5,7,9,0 (strangely, the last three key combinations actually move the window to workspace 6,8,9 instead of 7,9,10). For the other numbers, doing it on a terminal gives @,#,^,* (which is Shift+num without the mod key). I have tries this with both mod4 and mod1 as mod key with the result being the same. However, with the german layout everything works well.
So do I have to change the keymap in a different fashion? Switching to us layout WITHOUT specifying -variant intl didn't change anything. I would be very glad for suggestions!
Best, Michael
Check your i3 configuration file, the "issue" is that the "move to workspace" commands aren't specified as mod+shift+num, but as mod+shift+char, where char is what you get with shift+num.
Thanks, I was already writing my reply to MeanEYE when your post arrived!
As you are switching between layouts, I *think* it is possible to specify keycodes instead of symbols, so that the mappings work for both keyboard layouts.
Sorry njsg, I didn't read your comment, I just went back to this topic to post that I found the exact same solution ;-) Nevertheless, thank you!