Forum Linux.général Comment configurer un clavier (customization de touches avec xkb)?

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
Étiquettes : aucune
2
14
nov.
2016

Bonjour tous,

J'utilise plusieurs mapping, et je me retrouve avec un problème: avec un mapping sur lequel j'ai l'habitude, j'ai un clavier qui perd certains caractères (dont notamment importantes, genre underscore).
Qu'à cela ne tienne, j'ai aussi des touches qui me sont inutiles. Je voudrais donc simplement remapper ces touches sur mes caractères manquants.

Bon premier problème: déjà je lis partout qu'xmodmap n'est plus utilisé, mais xkb. Très bien, qu'importe. Cependant toutes les infos semblent indiquer de modifier directement son fichier de mapping à trouver (en devinant) dans /usr/share/X11/xkb/symbols/. Sérieux? Y a pas de fichier côté utilisateur pour modifier un mapping système, je dois modifier directement sous root?
Sans parler même du sacrilège que ça m'évoque, je lis les divers tutos où les gens doivent relancer X pour vérifier leur nouveau mapping, et comme tout est un peu fait à l'arrache (essayer de deviner le bon fichier, puis les bonnes "key" dans ce fichier, etc.), ben les gens s'y reprennent à plein de fois à coup de redémarrage de X. C'est pas possible, il doit bien y avoir des moyens savoir exactement quels fichiers sont chargés puis de les recharger dynamiquement, directement dans sa session, sans redémarrer X. Non?

Mon second problème est donc justement toute cette partie "divination". A priori, le clavier génère des scancode, mappés en keycode, puis ensuite mappés une seconde fois en symboles (pour consommation par les programmes).
Bon comment je trouve ces infos (scan code matériels, et key codes) générés par mon clavier (un TypeMatrix)? xev marche très mal sur plein de clés (et de toutes façons, j'ai pas l'impression qu'il donne les "key code" au format xkb).
Sur cette page, par exemple, ils donnent un mapping des keycodes pour un clavier générique.
mapping key codes

C'est sûr, j'aimerais bien pouvoir trouver l'équivalent pour mon Typematrix. Ok donc comment je peux vérifier le mapping fait sur mon clavier TypeMatrix et surtout comment changer certaines parties de ce mapping?

En outre j'ai certaines clés qui sont vues comme des combinaisons de clés. J'en ai une qui est vue comme Super-d (a priori c'est pour "montrer" le desktop, mais bon sur GNOME, ça existe pas), et une qui fait Alt-tab! Si par exemple dans un logiciel de raccourci (par exemple dans les préférences clavier de GNOME), je clique l'une de celles-ci, ça me sort comme si j'avais cliqué une combinaison de touches (Super-d ou Alt-tab respectivement).

Comment je trouve à quel partie du fichier xkb ce mapping correspond, et comment je le remappe autrement?
Tout cela est extrêmement frustrant car on a vraiment l'impression de jouer au chat et à la souris. Je suis sûr que j'ai loupé un épisode et qu'il y a des "trucs" simples pour retrouver son mapping clavier et pouvoir l'amender.
Merci!

  • # Conseil

    Posté par  . Évalué à 2.

    xmodmap est déprécié car il n'utilise pas les mêmes principes que que xkb mais ça ne le rend pas moins efficace pour résoudre ton problème.

    Je te conseille de créer ton mapping avec lui. Tu pourras plus facilement faire tes essais et plus tard finaliser ton mapping vers xkb si te le souhaite toujours.

    Le précédent lien t'explique aussi comment tu peux charger tes règles xkb en tant qu'utilisateur.

    Pour avoir l'équivalent de l'image pour ton clavier, tu dois utiliser la commande xkbprint $DISPLAY -color -full -label name -o keyboard.ps

    À noter aussi l'usage de xinput parfois en plus de xev pour mieux détecter les codes des touches.

    Bon courage et merci de poster tes futures découvertes en commentaire car je m'intéresse aussi au Typematrix.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.