J'ai rencontré une question libellée différemment sur AskUbuntu qui avait une bonne réponse , mais j'ai dû la modifier légèrement pour travailler sur mes systèmes.
Selon les commentaires de Louis et Sergiy, j'ai trouvé cette solution qui fonctionne pour moi sur Ubuntu 16.04 (Xenial) et je vais l'apporter avec moi sur les autres systèmes Linux que j'utilise.
J'ai installé xcape et mis les lignes de code suivantes dans mon.profile
fichier dans mon répertoire personnel.
MÉTHODE MISE À JOUR:
En raison des divers gestionnaires d'affichage (gdm / kdm / sddm / etc) se comportant de manière étrange et réinitialisant la setxbmap
suspension / reprise ou le verrouillage / déverrouillage après, j'ai découvert comment définir les options de manière à en hériter et à ne pas '' t le réinitialiser tout le temps. Parce que je suspendais et reprenais beaucoup de choses, je devais m'assurer de ne pas obtenir beaucoup de copies dexcape
course, ce qui est résolu dans le nouveau script ci-dessous.
Modifiez d'abord la configuration du clavier avec sudo gedit /etc/default/keyboard
et définissez XKBOPTIONS="ctrl:nocaps"
puis dans votre ~/.xprofile
mettre la seule ligne ci-dessous.
ps aux | grep -i '[x]cape' && killall -9 xcape; hash xcape 2>&1 >/dev/null && xcape -e 'Control_L=Escape' -t 100 &
Espérons que les différentes sections du script vous feront gagner du temps et vous éviteront des connexions bloquées. Tout d'abord, il vérifie si une instance est déjà en cours d'exécution et la tue, car la seule chose à xcape
faire est de mapper Ctrl à Esc, cela est sûr, puis la hash
partie garantit que vous avez xcape
installé sinon votre système pourrait se bloquer lorsque vous tentez de vous connecter car tout démarrage les scripts devraient se terminer proprement.
À l'ancienne:
setxkbmap -option 'caps:ctrl_modifier'; xcape -e '#66=Escape'
Sergiy:
J'ai utilisé gnome-tweak-tool pour mapper le verrouillage des majuscules sur Ctrl car il n'y a pas de disposition de clavier dans les paramètres système sur Ubuntu 14.04. Ensuite, xcape -e 'Control_L = Escape' n'a pas fonctionné, mais après avoir utilisé xcape -d, j'ai découvert que Caps Lock génère le code clé 66 et l'a remappé respectivement: xcape -e '# 66 = Escape'. - Sergiy Byelozyorov 4 septembre 2014 à 10h08
Louis:
Selon cet article de blog, il est possible de le faire avec xcape seul: setxkbmap -option 'caps: ctrl_modifier'; xcape -e 'Caps_Lock = Escape' setxkbmap -option 'caps: ctrl_modifier'; xcape -e 'Caps_Lock = Escape; Control_L = Escape; Control_R = Escape' - Louis Simoneau 4 août 15 à 10:06