Comment désactiver ou modifier la touche de verrouillage des majuscules de mon clavier?

10

Nous avons des claviers ergonomiques au travail auxquels je ne suis pas entièrement habitué. Il me semble que je continue à appuyer sur la touche de verrouillage pendant que je suis vimdedans et ça commence à ennuyer. Comment puis-je désactiver cette clé et / ou changer pour devenir une autre clé?

xénoterracide
la source
Connexes: remappage du verrouillage des majuscules pour s'échapper et du menu pour composer sur la console Linux . Voulez-vous cela uniquement dans X, ou dans la console de votre système d'exploitation (lequel?)?
Gilles 'SO- arrête d'être méchant'

Réponses:

7

Le moyen rapide et sale de le désactiver est avec xmodmap:

$ xmodmap -e 'clear Lock'

La question suivante est que voudriez-vous en faire? J'en fais généralement soit une Ctrlclé:

$ xmodmap -e 'keycode 66 = Control_L'

Selon votre DE / WM, il existe probablement un moyen de le faire dans la configuration de l'interface graphique. Par exemple, Gnome a une option "disposition du clavier" sur les panneaux de contrôle avec un onglet d'options qui inclut plusieurs modifications de disposition similaires.

Caleb
la source
Arrr, trop vite 4 moi;) Quoi qu'il en soit, alors viens d'ajouter une setxkbmapsolution à ma réponse alors ...
rozcietrzewiacz
6

Utilisez xmodmap.

Le paramètre pour désactiver votre verrouillage est

remove Lock = Caps_Lock

Cela serait placé dans votre .xmodmapdossier.

Une autre option - pour le désactiver temporairement, vous pouvez utiliser une setxkbmapoption:

setxkbmap -option ctrl:nocaps

puis, pour rétablir un comportement normal: setxkbmap -option

rozcietrzewiacz
la source
3

L'utilisation de xmodmap ne modifiera la liaison de touches que dans X. Si vous en avez besoin sur la console, c'est un peu différent. Les changements ci-dessous modifieront X ainsi que la console, donc je le fais toujours de cette façon.

Pour Linux, ajoutez ceci à /etc/rc.local (ou créez un script d'initialisation):

(echo $(dumpkeys |grep -i keymaps); echo keycode 58 = Control) | loadkeys -

Pour Solaris sur un PC avec une modification de clavier USB /usr/share/lib/keytables/type_6/reset(pour d'autres types de claviers, vous devez remplacer type_6par le type approprié):

Localisez cette ligne:

key 57   all shiftkeys+capslock

Remplacez par ceci:

key 57   all shiftkeys+leftctrl up shiftkeys+leftctrl

Naturellement, vous pouvez remplacer Controlpar n'importe quelle clé que vous souhaitez.

bahamat
la source
0

Ceci est une partie de mon .xmodmaprc, qui se transforme CapsLocken Esc, et vice versa:

clear lock

keycode 9 = Caps_Lock ISO_Next_Group Caps_Lock ISO_Next_Group
keycode 66 = Escape NoSymbol Escape

add lock = Caps_Lock

Vous pouvez vérifier les codes clés en exécutant xevet en appuyant simplement sur les boutons que vous souhaitez vérifier.

polémon
la source
Ceci est assez pratique pour une utilisation dans Vi / Vim
polemon