Comment remapper les touches Majuscule et Ctrl?

77

Je voudrais remapper mes clés telles que Ctrlse comporte comme la Caps Lockclé et vice-versa. De plus, si possible, j'aimerais que les paramètres ne soient disponibles que dans l'utilisateur actuellement connecté. Comment puis-je atteindre cet objectif?

Je suis un utilisateur de vim, contrairement aux autres personnes qui utilisent cette machine. J'aimerais donc que ces paramètres ne soient utilisés que pour mon compte.

k0pernikus
la source
1
Est- ce que cela aide?
Mitch
Cela peut être utile: the-flat-trantor-society.blogspot.com/2013/12/…
Keith Thompson
4
Je suis consterné par le fait que ce n’est pas une fonctionnalité standard dans les paramètres Linux de nos jours.
Edward Falk

Réponses:

59

13.10+:

Installer et utiliser gnome-tweak-tool> Keyboard & Mouse> Keyboard> Additional Layout Options> Caps Lock behavior.

Avant 13h10:

Ouvrez la boîte de dialogue Préférences du clavier ( System -> Preferences -> Keyboard). Dans l'onglet Disposition, cliquez sur le Options...bouton. Développez la Ctrl key positionsection et sélectionnez Swap Ctrl and Caps Lock.

Ces paramètres doivent être appliqués chaque fois que vous vous connectez et n'affecteront que votre compte d'utilisateur.

James Henstridge
la source
2
Cette option a disparu dans Ubuntu Saucy. Je ne sais pas comment expliquer cela, mais ce n’est tout simplement pas là. Les préférences du clavier ne comportent pas d'onglet "Mise en page", mais un bouton "Paramètres de mise en page" permet de cliquer sur l'onglet "Sources d'entrée" du panneau "Région et langue", qui manque mystérieusement de tout type. du bouton 'Options'. Le seul bouton qui s’y trouve ouvre un clavier virtuel à l’écran qui m’affiche la disposition cassée de mon clavier sans aucun moyen de changer les touches qui se comportent de quelle manière.
robru
4
Pour Ubuntu 13.10, vous devrez utiliser gnome-tweak-tool.
Jeremy Bicha
1
L'option Pre 13.10 fonctionne pour moi le 14.04
JeremyKun
Identique à @JeremyKun. Dans mon cas, en utilisant 14.04, la solution pre 13.10 fonctionnait mais pas les 13.10
matiascelasco le
Merci pour cette réponse! Le gnome-tweak-toolest vraiment sympa; vous pouvez également l'utiliser pour des finitions telles que "utiliser le verrouillage des majuscules pour changer la disposition du clavier" (un favori personnel) et le "commutateur Alt / Win" (utile si vous êtes un utilisateur Mac de longue date ...)
Per Lundberg
63

L’un des meilleurs moyens de le faire graphiquement est d’installer Gnome Tweak Tool :

sudo apt-get install gnome-tweak-tool

  • Ouvrez tweak-tool et cliquez sur la section de saisie dans la colonne de gauche.
  • Vous devriez maintenant voir le comportement de la touche Caps Lock en ligne à gauche.
  • Choisissez Verrouiller les majuscules avec une touche Ctrl supplémentaire au lieu de Désactivé dans la liste déroulante et vous devriez être bon.

De plus, le panneau de configuration ne prend pas beaucoup de temps pour apparaître sur ma machine, donc je ne sais pas du tout quel est le problème.

Profitez de votre nouvelle Ctrlclé!

Pierre Thalamy
la source
Je voulais utiliser ma touche CAPS pour éteindre mon écran. J'avais déjà configuré cela dans la fenêtre Paramètres système> Clavier, mais le CAPS continuait d'activer ou de désactiver l'état CapsLock et le voyant. J'ai donc désactivé la clé avec l'outil que vous avez recommandé (qui présente quelques erreurs d'affichage, fond transparent de la fenêtre), ce qui a également empêché mon raccourci personnalisé de fonctionner. Après la désactivation, je devais redéfinir le raccourci pour le faire fonctionner. Il a été défini sur la valeur 0xff ou quelque chose comme ceci au lieu de CAPS. Je pensais que cette procédure pourrait aider de futurs lecteurs avec des souhaits similaires.
Byte Commander
Lorsque j'exécute gnome-tweak-tool à partir de la ligne de commande, un message d'erreur s'affiche à propos du shell qui n'exécute pas DBus. Toute tentative de modification des paramètres n'a aucun effet.
Edward Falk
1
Mise à jour: gnome-tweak-tool ne fonctionne que dans le shell de gnome
Edward Falk
1
pas de section "saisie" dans la colonne de gauche: uniquement le bureau, les polices, le shell, les extensions du shell, le thème, Windows.
Reb.Cabin
2
Notez que l'option dans gnome-tweak-tool pour permuter est sous "Position de la touche Ctrl", pas "Comportement de la touche Verr Maj".
Phil Goetz
59

Voici un moyen de le faire sans installer de logiciel supplémentaire:

setxkbmap -layout us -option ctrl:nocaps

La source:

Jorge Castro
la source
3
Cela ne survit pas après le redémarrage. Comment puis-je rendre ce permanent? Je préfère ne pas mettre cela dans un script de démarrage (par exemple .bashrc).
nic
9
@nic Vous devez également modifier le fichier sudo vi /etc/default/keyboardet le modifier XKBOPTIONS="ctrl:nocaps". Exécutez la commande de Jorge après cela, mais en tant que setxkbmap -option ctrl:nocapstelle, elle ne modifiera pas la disposition de votre clavier par défaut.
Léo Léopold Hertz
43

Ouvrez ce qui suit pour l'édition:

sudo vi /etc/default/keyboard

Et éditer XKBOPTIONS="ctrl:swapcaps"

Ensuite, reconfigurez:

sudo dpkg-reconfigure keyboard-configuration

ou

/usr/bin/setxkbmap -option "ctrl:swapcaps"
Nom
la source
La question était "Je voudrais ces paramètres uniquement pour mon compte." Éditer / etc / default / keyboard va le changer pour tout le monde.
skierpage
1
vous avez 3 étapes (1, 2, 3). Voulez-vous dire [(1 et 2) ou 3] ou [1 et (2 ou 3)]?
jgomo3
Génial! A couru sudo dpkg-reconfigure keyboard-configurationet appuyez plusieurs fois, et ça a marché !!! EDIT: cependant, après que je me suis déconnecté et reconnecté, le réglage est parti. :(
LeOn - Han Li
24

Pour changer définitivement le comportement:

  1. courir dconf-editor

  2. sélectionner org.gnome.desktop.input-sources

  3. Changer xkb-optionsen ['ctrl:nocaps'](ou l'ajouter aux options existantes)

ou sur la ligne de commande ( Attention, cela écrase vos paramètres existants! ):

gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:nocaps']"
Geoff Jacobsen
la source
Ce liner peut également être ajouté à ~ / .profile pour plus de portabilité.
Jthetzel
Cela n'a pas fonctionné pour moi sur Kubuntu 16.04, même après un redémarrage.
Zplizzi
3
Les paramètres dconf s'appliquent immédiatement et sont persistants, il est donc inutile de le mettre dans ~ / .profile et aucun redémarrage n'est nécessaire. Ce paramètre particulier s'applique uniquement à Gnome / Unity, pas à KDE utilisé dans Kubuntu.
Anton Eliasson
4

C'est une tâche facile une fois que vous savez comment le faire.

1) Vérifiez le code de clé de votre clé. Exécutez ce programme au terminal.

xev


Dans cet exemple, le terminal indique que le code d'activation de mon kest "45".

2) Modifiez-les au fur et à mesure de la création de ce fichier:

gedit ~ / .Xmodmap

Son contenu devrait ressembler à cet exemple:

keycode 37 = Caps_Lock NoSymbol Caps_Lock Keycode
66 = Control_L NoSymbol Control_L

(Modifiez le numéro de code si nécessaire - consultez l'étape "1")

Illustration:
(Obs.: Si je veux changer de nom, kje devrais utiliser le "keycode 45" comme indiqué à l'étape "1").

4) Déconnectez-vous et reconnectez-vous ou redémarrez ou exécutez ceci:

xmodmap ~ / .Xmodmap

Espérons que vous apprécierez ;-)

desgua
la source
2
Notez que cette solution est susceptible de poser des problèmes pour tout sauf les keymaps les plus simples. La compatibilité de xmodmap dans le nouveau système xkb n’est pas parfaite. Vous feriez donc probablement mieux de vous en tenir à xkb si possible.
James Henstridge
@ James voudriez-vous expliquer comment pouvons-nous faire cela?
desgua
Voir l'autre réponse à cette question. Le panneau de commande du clavier standard construit le clavier et le clavier xkb à partir de la disposition de base que vous choisissez, ainsi que des options que vous activez.
James Henstridge
1
Eh bien, vous pouvez configurer les mêmes keymaps en utilisant le setxkbmapprogramme en ligne de commande . Écrire de nouvelles keymaps est possible, mais un peu plus compliqué que les mappages de keycode Xmodmap. C'est une bonne chose que la plupart des variantes d'option que vous souhaitez sont déjà disponibles.
James Henstridge
1
@James. J'ai cherché et appris sur setxkbmap. Mais je ne pouvais pas trouver de réponse: est-il possible de remapper une clé sur ce que nous voulons? Par exemple, quelque chose d’excentrique du type: "code de touche 51 = barre étroite entre deux barres étroite entre barres étroite entre hommes"?
Desgua
4

Voici comment le faire manuellement (sans outils supplémentaires), via XKB, le gestionnaire de clés par défaut pour Ubuntus récent. Modifier /usr/share/X11/xkb/symbols/pc, section xkb_symbols "pc105":

//key <CAPS> {  [ Caps_Lock     ]   };
//key <LCTL> {  [ Control_L     ]   };
key <CAPS> {    [ Control_L ]   };
key <LCTL> {    [ Caps_Lock     ]   };

Connexion / déconnexion ou redémarrage. Voir ici pour plus de détails.

Alternativement, vous pouvez permuter au niveau des codes de clés, qui sont émis par ces boutons. Modify /usr/share/X11/xkb/keycodes/evdev:

<CAPS> = 64; //66;
<LCTL> = 66; //64

Vous devrez sudo rm -rf /var/lib/xkb/*appliquer les modifications.

Alex Fedulov
la source
Excellent point sur le travail au niveau des codes clés. Sur mes ordinateurs portables sous Kubuntu Bionic, une simple modification au niveau des symboles n’est pas satisfaisante car appuyer sur la touche Majuscule physique permet toujours de basculer l’état des majuscules internes. Changer les keycodes fonctionne! BTW, je l'ai étendu à trois touches (majuscules, Meta et RAlt) et je tiens à noter que vous avez réellement besoin d'écrire <CAPS> = *orig code of the physical key you want to act **as** CAPS*plutôt que <CAPS> = *orig code of the key you want physical CAPS to act **as**(j'espère que la distinction est claire). Cette distinction est nécessaire dans de tels cas.
Jamadagni
3

La réponse acceptée est source de confusion, car gnome-tweak-tools ne montre aucune section "dactylographie".

Au lieu de cela, cliquez sur la section "Clavier et souris" puis choisissez "Option de disposition supplémentaire". Là, vous verrez le "comportement de verrouillage des majuscules" qui permet de convertir le verrouillage des majuscules en différentes clés.

Capture d'écran de tweak-tool

zerotimer
la source
2

Sur les distributions basées sur KDE (telles que KDE Neon ou Kubuntu), ce comportement peut être configuré dans les paramètres système habituels. Ouvrez les paramètres du système, sélectionnez "Périphériques d'entrée" => "Clavier" => "Avancé". Dans la catégorie "Position de la touche Ctrl", sélectionnez "Permuter les touches Ctrl et Verrouillage Majuscule".

Capture d'écran du module clavier de KDE System Setting

Gerald Senarclens de Grancy
la source
0

gnome-tweaks 3.28.1 n'a pas de Typingsection.
Ainsi, setxkbmap -layout us -option ctrl:nocapsou setxkbmap -layout us -option ctrl:swapcapsserait des options réalisables.

Pour le rendre permanent, vous pouvez vous référer à la réponse de @nom.

David Jung
la source
Clavier et souris -> option de disposition supplémentaire
Voyager