Comment échanger ctrl et verrouillage des majuscules à l'aide de xmodmap

10

Ou tout autre outil, mais je préfère xmodmap. J'ai essayé ceci:

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

J'ai également essayé ceci:

xmodmap -e "keycode 66 = Control_L"

Mais ni l'un ni l'autre ne semblent fonctionner pleinement. Voici le journal des événements pour appuyer sur le verrouillage des majuscules:

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

J'utilise Ubuntu 10.10 avec un gestionnaire de fenêtres génial.

Maruti
la source

Réponses:

8

Depuis Remap Caps Lock :

man xmodmap montre comment échanger la touche de contrôle gauche et la touche CapsLock:

!
! 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
la source
Uhm, c'est ma première tentative dans mon message.
Maruti
Oups, j'ai raté ça. Alors pourquoi ça a fonctionné cette fois?
harrymc
Je ne suis pas sûr. Je pense que j'ai oublié de réinitialiser le clavier après avoir manipulé des codes clés.
Maruti
15

Cela peut fonctionner pour vous.

/usr/bin/setxkbmap -option "ctrl:swapcaps"
Evan Carroll
la source
Comment puis-je le remplacer par setxbmap
SLN