10

Or any other tool, but I prefer xmodmap. I tried this:

remove Lock = Caps_Lock
remove Control = Control_L
keysym Control_L = Caps_Lock
keysym Caps_Lock = Control_L
add Lock = Caps_Lock
add Control = Control_L

I also tried this:

xmodmap -e "keycode 66 = Control_L"

But neither seem to fully work. Here's the event log for pressing caps lock:

KeyPress event, serial 28, synthetic NO, window 0x1a00001,
root 0x12d, subw 0x0, time 914826, (679,342), root:(680,362),
state 0x12, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XKeysymToKeycode returns keycode: 37 // 37 is the control key code
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

I'm running Ubuntu 10.10 with awesome window manager.

Maruti
  • 143

3 Answers3

15

This may work for you.

/usr/bin/setxkbmap -option "ctrl:swapcaps"
Evan Carroll
  • 9,518
9

From Remap Caps Lock :

man xmodmap shows how to swap the left control key and the CapsLock key:

!
! Swap Caps_Lock and Control_L
!
remove Lock = Caps_Lock
remove Control = Control_L
keysym Control_L = Caps_Lock
keysym Caps_Lock = Control_L
add Lock = Caps_Lock
add Control = Control_L
harrymc
  • 498,455
1

Swap:

setxkbmap -option "ctrl:swapcaps"

Reverse the swap:

setxkbmap -option

Reference: please click here

SLN
  • 121