Comment échanger de manière permanente les verrous esc et caps dans xfce / xubuntu?

15

J'ai suivi un article il y a quelque temps, et il a été dit de créer un ~/.xmodmapfichier comme ceci:

! Swap caps lock and escape
remove Lock = Caps_Lock
keysym Escape = Caps_Lock
keysym Caps_Lock = Escape
add Lock = Caps_Lock

Je l'ai fait, et maintenant je peux échanger escet caps locken faisant xmodmap ~/.xmodmap. Je voulais que ce soit permanent, alors j'ai ajouté cette commande à mon ~/.bash_profile, mais cela ne semble pas fonctionner; Je dois encore manuellement xmodmap. En tant que décrocheur EEng, je suis tenté de recâbler mon clavier} :-) mais je sais qu'il doit y avoir une meilleure façon. Comment puis-je faire fonctionner cela de façon permanente?

Dan Ross
la source

Réponses:

13

Exécutez xfce4-settings-manager, dans Session and Startup-> Application autostart, ajoutez une entrée, qui s'exécutexmodmap ~/.xmodmap

Ou renommez le fichier en ~/.Xmodmap

Marguerite
la source
J'ai renommé le fichier (cela a fonctionné!), Mais je suis surpris que ma méthode .bash_profile ne fonctionne pas. Je pensais que mon bash-fu n'était pas faible: P
Dan Ross
6

xkb a une option qui fait exactement cela:

caps:swapescape      Swap ESC and Caps Lock

vous pouvez donc simplement ajouter 1

/usr/bin/setxkbmap -option "caps:swapescape"

à vos éléments de démarrage automatique XFCE.


1: il pourrait y avoir une meilleure façon de le faire, mais je ne suis pas un utilisateur XFCE

don_crissti
la source
Cool, je vais l'essayer lors de mon prochain redémarrage. Xmodmap ne fonctionne pas parfaitement pour moi, je dois le déclencher manuellement après avoir changé de langue de clavier, par exemple. Je ne suis plus non plus sur XFCE. C'était cool, mais je voulais plus de contrôle à la maison (Arch) et mieux interagir avec les trucs que mes collègues utilisent au travail (vanilla Ubuntu).
Dan Ross
@DanRoss - Eh bien, si vous utilisez gnome (le seul DE que je connaisse), c'est aussi simple que d'ajouter caps:swapescapeà votrexkb-options
don_crissti
3

Dans Xfce sur Opensuse, j'ai échangé mes clés Escet Caps Locken modifiant le /etc/X11/xorg.conf.d/00-keyboard.conffichier comme expliqué sur le wiki archlinux . J'ai ajouté une ligne qui dit

Option "XkbOptions" "caps:swapescape"

à la section qui commence par

Section "InputClass"

puis redémarré mon ordinateur et l'acte a été fait.

Sauvegardez le fichier avant de le modifier. Si vous faites une erreur, votre interface graphique pourrait ne pas démarrer et vous devrez restaurer ou modifier le fichier à partir d'une invite de commande. Dans Ubuntu, je me souviens que je devais mettre ajouter la ligne d'option dans un fichier de configuration de clavier qui avait un nom différent.

vdicarlo
la source
2

L'utilisation du .Xmodmap n'a pas fonctionné pour moi.

Cependant, un homme rapide xmodmap dit que cela fonctionne et a fait:

.xmodmaprc

qui peut être exécuté:

xmodmap .xmodmaprc

EDIT: ack ... je me trompe ... la valeur par défaut a changé il y a quelques années en .Xmodmap de .xmodmaprc. La création du fichier .Xmodmap a fait que mon xfce se chargeait de "drôle". Dans .bash_profile, je mets:

xmodmap .xmodmaprc

Ensuite, cela a fonctionné, et j'ai un script qui a redémarré mon Xfce pour que tout fonctionne.

wbg
la source
0

J'avais effectué un ajustement similaire ( /usr/bin/setxkbmap -variant altgr-intl -option 'ctrl:nocaps') en le mettant dans le démarrage automatique de l'application, comme mentionné par une autre réponse. Cependant, à un moment donné, cela a cessé de fonctionner pour moi, alors voici mon approche alternative:

Dans le menu Paramètres, choisissez «Lecteurs et supports amovibles», puis l'onglet «Périphériques d'entrée». Activez l'option "Exécuter automatiquement un programme lorsqu'un clavier USB est connecté" et entrez la commande setkbmap de votre choix.

traitez bien vos mods
la source