Utiliser la touche Verr. Maj (Caps lock) pour écrire des chiffres
Il peut arriver que l'on souhaite que la touche Verr. Maj (Caps Lock) se comporte comme la touche Maj mais sans avoir à rester appuyer sur la touche pour pouvoir utiliser les chiffres. En effet, sur Ubuntu lorsque l'activation de la touche Verr. Maj permet d'écrire les caractères accentués en majuscule (é donnera É par exemple) mais pas du tout d'écrire les chiffres de 1 à 9. Pour ces derniers il faut généralement utiliser la combinaison Maj + chiffre. Voici comment procéder.
Pré-requis
- Disposer des droits administrateurs
Méthode
Cette approche a été testée sur :
- Kubuntu Trusty Thar (14.04)
- Ubuntu Focal Fossa (20.04 LTS)
- Ubuntu Jammy Jellyfish (22.04 LTS)
- LXQt (0.16.0)
- Fedora 38
La méthode consiste à modifier 2 fichiers de configuration.
- Modifiez le fichier avec les droits administrateurs /usr/share/X11/xkb/symbols/fr
Pour cela vous pouvez soit utiliser votre éditeur de texte en ligne de commande ou bien votre éditeur de texte graphique.
sudo nom_de_l_editeur_de_texte /usr/share/X11/xkb/symbols/fr
Avec kate par exemple :
sudo kate /usr/share/X11/xkb/symbols/fr
Il faudra ensuite simplement insérer la ligne
include "mswindows-capslock"
en début de fichier juste en dessous de la ligne
include "latin"
Ce qui donne
default partial alphanumeric_keys xkb_symbols "basic" { include "latin" include "mswindows-capslock" [...]
Il faudra alors enregistrer et quitter le fichier.
- Créer le fichier /usr/share/X11/xkb/symbols/mswindows-capslock
On commence par créer ce fichier
sudo kate /usr/share/X11/xkb/symbols/mswindows-capslock
Puis il faudra insérer les lignes suivantes dans le fichier texte vide qui s'est ouvert
// Replicate a "feature" of MS Windows on AZERTY keyboards // where Caps Lock also acts as a Shift Lock on number keys. // Include keys <AE01> to <AE10> in the FOUR_LEVEL_ALPHABETIC key type. partial alphanumeric_keys xkb_symbols "basic" { key <AE01> { type= "FOUR_LEVEL_ALPHABETIC", [ ampersand, 1, bar, exclamdown ] }; key <AE02> { type= "FOUR_LEVEL_ALPHABETIC", [ eacute, 2, at, oneeighth ] }; key <AE03> { type= "FOUR_LEVEL_ALPHABETIC", [ quotedbl, 3, numbersign, sterling ] }; key <AE04> { type= "FOUR_LEVEL_ALPHABETIC", [apostrophe, 4, onequarter, dollar ] }; key <AE05> { type= "FOUR_LEVEL_ALPHABETIC", [ parenleft, 5, onehalf, threeeighths ] }; key <AE06> { type= "FOUR_LEVEL_ALPHABETIC", [ section, 6, asciicircum, fiveeighths ] }; key <AE07> { type= "FOUR_LEVEL_ALPHABETIC", [ egrave, 7, braceleft, seveneighths ] }; key <AE08> { type= "FOUR_LEVEL_ALPHABETIC", [ exclam, 8, bracketleft, trademark ] }; key <AE09> { type= "FOUR_LEVEL_ALPHABETIC", [ ccedilla, 9, braceleft, plusminus ] }; key <AE10> { type= "FOUR_LEVEL_ALPHABETIC", [ agrave, 0, braceright, degree ] }; };
Enregistrer et quitter le fichier.
- Redémarrer le pc
Une fois le pc redémarré, les changements devraient être effectifs.
Commande de création automatisé
Pour réaliser l'édition rapidement, coller ce code en tant qu'utilisateur root.
# Insérer à la ligne 5 sed -i '5i include "mswindows-capslock"' /usr/share/X11/xkb/symbols/fr # Génération du fichier echo "// Replicate a \"feature\" of MS Windows on AZERTY keyboards // where Caps Lock also acts as a Shift Lock on number keys. // Include keys <AE01> to <AE10> in the FOUR_LEVEL_ALPHABETIC key type. partial alphanumeric_keys xkb_symbols \"basic\" { key <AE01> { type= \"FOUR_LEVEL_ALPHABETIC\", [ ampersand, 1, bar, exclamdown ] }; key <AE02> { type= \"FOUR_LEVEL_ALPHABETIC\", [ eacute, 2, at, oneeighth ] }; key <AE03> { type= \"FOUR_LEVEL_ALPHABETIC\", [ quotedbl, 3, numbersign, sterling ] }; key <AE04> { type= \"FOUR_LEVEL_ALPHABETIC\", [apostrophe, 4, onequarter, dollar ] }; key <AE05> { type= \"FOUR_LEVEL_ALPHABETIC\", [ parenleft, 5, onehalf, threeeighths ] }; key <AE06> { type= \"FOUR_LEVEL_ALPHABETIC\", [ section, 6, asciicircum, fiveeighths ] }; key <AE07> { type= \"FOUR_LEVEL_ALPHABETIC\", [ egrave, 7, braceleft, seveneighths ] }; key <AE08> { type= \"FOUR_LEVEL_ALPHABETIC\", [ exclam, 8, bracketleft, trademark ] }; key <AE09> { type= \"FOUR_LEVEL_ALPHABETIC\", [ ccedilla, 9, braceleft, plusminus ] }; key <AE10> { type= \"FOUR_LEVEL_ALPHABETIC\", [ agrave, 0, braceright, degree ] }; };" > /usr/share/X11/xkb/symbols/mswindows-capslock;
Problèmes connus
- Impossible d'utiliser les majuscules accentuées telles que É, È
Il s'agit en quelque sorte du revers de la médaille. Une des solution consiste à switcher entre plusieurs dispositions de clavier (par exemple la disposition belge) une que l'on utilisera pour les majuscules accentuées et une autre pour les chiffres en fonction des besoins.