41 votes

Comment mapper la touche Caps Lock sur la touche Echap dans Arch Linux

Mon OS est Arch Linux amd64, environnement Gnome.

Je veux mapper la touche Caps Lock sur la touche Esc (échapper) dans Arch Linux. Je lance la commande :

xmodmap -e 'clear Lock' -e 'keycode 0x42 = Escape'

Cela fonctionne bien, mais un moment plus tard, la touche Caps Lock fonctionne à nouveau. Et je dois exécuter la commande de nouveau.

Je suis assez sûr que cette solution fonctionnait bien il y a peut-être un an. Quel est mon problème? Est-ce que quelqu'un peut m'aider à mapper la touche Caps Lock sur la touche Echap pour toujours dans mon OS Arch Linux?

65voto

pilona Points 1473

N'importe lequel des éléments suivants (par ordre croissant de complexité) :

  1. Utilisez setxkbmap pour remapper la touche (ne nécessite pas de démon et est indépendant de votre environnement de bureau ou gestionnaire de fenêtres). N'oubliez pas d'ajouter la commande avant la ligne exec gnome-session (ou similaire) dans votre fichier ~/.xinitrc ou ~/.xsession :

     setxkbmap -option caps:escape

    setxkbmap peut être trouvé dans le paquet extra/xorg-setxkbmap.

  2. dconf-editor org.gnome.desktop.input-sources.xkb-options Ajoutez caps:escape au champ susmentionné.

  3. gnome-session-settings Programmes de démarrage Ajoutez Nom=Remap caps lock to escape, commande=setxkbmap -option caps:escape

  4. Créez une disposition de clavier personnalisée

Pour information, j'ai obtenu la règle XKB en greppant /usr/share/X11/xkb/rules pour caps et esc.

9voto

styrofoam fly Points 1816

Xorg.conf

Vous pouvez y parvenir en modifiant le fichier /etc/X11/xorg.conf.d/00-keyboard.conf.

Fichier d'exemple:

Section "InputClass"
        Identifier      "system-keyboard"
        MatchIsKeyboard     "on"
        Option          "XkbLayout" "us"
        Option          "XkbModel"  "pc104"
        Option          "XkbOptions" "caps:swapescape"
EndSection  

Vous pouvez spécifier plusieurs XkbOptions, par exemple caps:swapcaps,terminate:ctrl_alt_bksp pour échanger esc et caps tout en permettant le kill du X avec CtrlAltBackspace. Vous pouvez trouver plus d'informations à ce sujet dans man xkeyboard-config.

GUI

Vous pouvez également utiliser GNOME Tweak Tool (paquet gnome-tweak-tool). Il vous suffit de cliquer sur Typing et ensuite de choisir ce que vous voulez dans le menu Ctrl position (voir l'image ci-dessous).

enter image description here

5voto

Pour une utilisation dans X, la page Gnome du wiki Arch contient des instructions pour modifier le clavier avec XkbOptions :

À l'aide de l'éditeur dconf, accédez à la clé nommée org.gnome.desktop.input-sources.xkb-options et ajoutez les XkbOptions souhaitées (par exemple 'caps:swapescape') à la liste.

Dans la console, vous pouvez créer un keymap personnalisé pour le même effet. Créez votre keymap personnelle avec les changements requis pour CapsLock et Escape dans /usr/share/kbd/keymaps/i386/qwerty/votremap puis tar et incluez une ligne dans /etc/vconsole.conf pour l'appeler :

KEYMAP=votremap

3voto

uzsolt Points 1145

Vous pouvez utiliser xmodmap. Mettez votre ~/.Xmodmap:

remove Lock = Caps_Lock
keysym Escape = Caps_Lock
keysym Caps_Lock = Escape
add Lock = Caps_Lock

(assurez-vous que lors du démarrage X utilisera votre ~/.Xmodmap)

2voto

Ryan Points 532

Je ne sais pas pourquoi les réponses ci-dessus ne fonctionnent pas. Voici celle qui fonctionne pour moi. Dans votre ~/.Xmodmap

! 66 est le code de touche de Caps_Lock
clear    Lock
keycode  66 = Escape 

et ensuite

$ xmodmap ~/.Xmodmap

Je suis sous Fedora et un gestionnaire de fenêtres non-Gnome. HTH

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X