web-dev-qa-db-fra.com

Modification de la disposition du clavier dans Wayland

Mon ordinateur portable est venu avec une clé PrintScreen (sur le côté droit de KB entre Alt_R et Control_R). Sous Xorg, j'utilise xmodmap pour échanger l’écran d’affichage avec une touche de menu:

/ usr/bin/xmodmap -e "code clé 107 = Menu"

Le problème est que xmodmap, xdotool et tout ce qui repose sur l’interception et l’injection de touches ne fonctionne plus sur Wayland en raison de restrictions de sécurité. gnome-Tweak-tool avait (prêt à l'emploi) quelques modifications astucieuses basées sur xkb qui permettaient d'échanger des clés spécifiques (comme capslock avec escape), mais il ne disposait pas de la modification que je cherchais.

Je me demandais s'il y avait un moyen d'échanger le printcr pour une touche de menu en modifiant les fichiers de disposition du clavier? S'agit-il de fichiers texte ou de fichiers binaires que je devrai recompiler?

Il y a setkeycodes et getkeycodes dans/usr/bin, est-ce que quelqu'un sait ce que font ces commandes?

4
thebunnyrules

Oui, il est possible de modifier les fichiers XKB. Je suppose que le bas du fichier /usr/share/X11/xkb/symbols/altwin peut vous donner un indice, sauf si l'option XKB altwin:prtsc_rwin fait ce que vous voulez.

Informations supplémentaires

Dans le terminal, entrez:

Sudo su
nano /usr/share/X11/xkb/symbols/altwin

Au bas du fichier, vous trouverez:

// Win is mapped to the PrtSc key (and the usual Win key).
partial modifier_keys
xkb_symbols "prtsc_rwin" {
    replace key <PRSC> { [ Super_R, Super_R ] };
    modifier_map Mod4 { <PRSC>, <RWIN> };
};

Supprimer cette section et la remplacer par ceci:

// Menu is mapped to the PrtSc key (and the usual Win key).
partial modifier_keys
xkb_symbols "prtsc_rwin" {
     replace key <PRSC> { [ Menu, Menu ] };
     modifier_map Mod4 { <PRSC>, <MENU> };
};

Pour supprimer in nano, utilisez la touche Retour arrière (la mise en surbrillance et la suppression ne fonctionnent pas). Pour coller, utilisez shift-ctrl-v. Pour quitter et enregistrer, appuyez sur ctrl-x, sélectionnez oui pour écraser et appuyez sur entrée.

Redémarrer. Dans Gnome/Ubuntu, accédez à gnome-Tweak-tools Dans les outils Tweak, accédez à la section Clavier et souris, appuyez sur le bouton Options de disposition supplémentaires et développez le comportement des touches Alt/Win. En sélectionnant l'option tout en bas: Win est associé à printscr (rappelez-vous que nous n'avons modifié que ce comportement pour permuter l'impression et le menu au lieu de print et Win). (Je suis sûr qu'il est possible d'activer l'option modded xkb dans KDE mais je ne l'utilise pas, je ne peux donc pas vous donner la procédure exacte).

2
Gunnar Hjalmarsson