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.

  • Disposer des droits administrateurs

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.

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
Cette commande est valable si vous utilisez une disposition française (fr). Pour ceux qui utilisent une disposition de touches belge par exemple il faudra remplacer /usr/share/X11/xkb/symbols/fr par /usr/share/X11/xkb/symbols/be. À adapter selon votre disposition de touches.

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"
    [...]
mswindows-capslock peut être modifié par n'importe quel autre nom que vous souhaitez. Il faudra juste, par la suite, choisir exactement le même nom pour le fichier que l'on va créer.

Il faudra alors enregistrer et quitter le fichier.

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.

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;
  • 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.

  • utiliser_verr_maj_pour_ecrire_des_chiffres.txt
  • Dernière modification: Le 08/06/2024, 10:12
  • par 86.214.62.14