Take the 2-minute tour ×

I used to have the caps lock and control swapped in GNOME, but when I upgraded to Ubuntu 9.04 I also changed my desktop environment to Xfce. I have the following line in my xorg.conf:

Option          "XkbOptions"    "ctrl:nocaps"

But that doesn't seem to make a difference to Xfce. Any ideas?

share|improve this question
The first thing I usually do when I get a new keyboard is physically pry off the caps lock key. If you can't make it swap effectively it's a thought. –  nedm May 20 '09 at 16:59

4 Answers 4

up vote 21 down vote accepted

I ended up removing the "XkbOptions" line from my xorg.conf, and adding this to Xfce's autostart:

/usr/bin/setxkbmap -option "ctrl:nocaps"

It turns the caps lock key into an additional Ctrl, which does the trick for me. If you wanted a straight swap, I believe "ctrl:swapcaps" would work. For what it's worth, this page is a fairly decent guide:


I haven't had a change to try the other methods yet, but I also have a netbook with a slightly funky layout, and I might need to muck around with it a bit.

share|improve this answer
Putting the above line into ~/.profile will also do the trick! (For those unfamiliar with xfce autostart) –  Arvodan Jun 15 '09 at 7:42

Use xkeycaps to look at your keyboard mapping and swap the META and ALT modifiers, or just swap the entire keys. If you plan on using any GNOME apps, GNOME has some assumptions about which keys have META and ALT modifiers. It'll probably make your life easier to swap the keys entirely.

share|improve this answer

You could try xmodmap

I have a small netbook computer with an annoying extra key next to the left-shift key. By putting the following in ~/.Xmodmap, I can re-map the key to be another left-shift key.

keycode 94 = Shift_L
add shift = Shift_L

Perhaps you can do something similar to swap you caps-lock and control keys?

share|improve this answer

Xfce should be the same as GNOME and all other desktop environments here - what probably happened is it broke in the upgrade to Ubuntu 9.04 for all environments, since Xorg keyboard & mouse configuration options moved from xorg.conf to HAL.

More info on the new configuration methods can be found in pages such as:

share|improve this answer

Your Answer


