How can I make my Super keys (Windows Key) behave more like Ctrl/Alt/Shift in Linux
Non XFCE-related stuff
It won't be exactly an answer to your problem, sorry for that, but still should be useful for someone at least. In Gnome it was fixed in recent Ubuntus. By it I mean treating Win not as a modifier key. In the old days, e.g. in Ubuntu 9.04, you had to do following change:
Go to System -> Preferences -> Keyboard
, under Layouts
tab click Layout options...
button and in Alt/Win key behavior
list choose Meta is mapped to Win keys
(or Meta is mapped to Left Win
) instead of Default
.
What it really does? Changes altwin
option in $HOME/.gconf/desktop/gnome/peripherals/keyboard/kbd/%gconf.xml
file (or creates it if it does not exist):
<?xml version="1.0"?>
<gconf>
<entry name="options" mtime="1298496603" type="list" ltype="string">
<li type="string">
<stringvalue>altwin altwin:meta_win</stringvalue>
</li>
</entry>
</gconf>
If you've chosen Left Win
, then there will be following string value:
altwin altwin:left_meta_win
In Ubuntu 10.10 it's not needed as Default
apparently has changed.
But you have XFCE, not Gnome, so this rather won't help you.
XFCE-related stuff
I've downloaded Xubuntu (9.10), played with it a bit and finally found a solution.
Firstly, though, I must say that keyboard settings are really screwed in XFCE. In Settings -> Keyboard
under Layout
tab you don't have too many options. You cannot change XkbOptions
there and even if you do it manually in ~/.config/xfce4/xfconf/xfce-perchannel-xml/keyboard-layout.xml
, it will be overwritten. So I've changed /etc/default/console-setup
by adding altwin:meta_win
to XKBOPTIONS
(use comma as separator if there are some other option(s) already). Still, no luck.
tl;dr
What's the solution?
Do not care about XFCE way of handling keyboard, because it's apparently broken. Use setxkbmap
directly:
setxkbmap -option altwin:meta_win
(or left_meta_win
, whatever you prefer)
Now you have to check that it really solved your problem. :)
How to apply it permanently?
echo -option altwin:meta_win >>~/.Xkbmap
It can be also done for all users by writing to /etc/X11/Xkbmap
instead.
How can I quickly check if altwin:meta_win
or altwin:left_meta_win
has been applied?
setxkbmap -print
Line with xkb_symbols
should have something like altwin(meta_win)
.