Cela fonctionne pour la session en cours:
costales@dev:~/Desktop$ xmodmap -e "keycode 166 = less"
costales@dev:~/Desktop$ xmodmap -e "keycode 167 = greater"
Ensuite, j'ai créé ce fichier de configuration:
costales@dev:~/Desktop$ cat ~/.Xmodmap
keycode 166 = less
keycode 167 = greater
costales@dev:~/Desktop$
Mais cela ne fonctionne pas après un redémarrage. Comment puis-je forcer le remapp pour survivre au redémarrage?
J'utilise 16.04 depuis un petit moment et il semble utiliser sddm en tant que gestionnaire de bureau. Avant, c’était LightDM et GDM. Les deux prédécesseurs sont documentés pour charger ~/.Xmodmap
automatiquement, mais je ne trouve rien qui dise explicitement que sddm le fasse.
Par conséquent, il peut être judicieux de le forcer à se charger avec un nouveau script. Vous devez juste exécuter xmodmap ~/.Xmodmap
et vous pouvez le faire de différentes manières:
~/.xinitrc
pour l'exécuter..desktop
dans ~/.config/autostart/
Il existe probablement une douzaine d'autres moyens de gérer cela, essentiellement la même chose.
J'ai ajouté un fichier /etc/X11/Xsession.d/80_xmodmap
avec le contenu suivant:
#!/bin/sh
# Set custom keycodes
#
# This file is sourced by Xsession(5), not executed.
# The "|| true" is to ensure that the Xsession script does not terminate on error
USRMODMAP="$HOME/.Xmodmap"
if [ -x /usr/bin/xmodmap ]; then
if [ -f "$USRMODMAP" ]; then
/usr/bin/xmodmap "$USRMODMAP" || true
fi
fi
Cela fonctionne à chaque fois.
ouvrez gnome-session-properties. ajouter une commande et un nom. Le fichier de bureau sera créé dans ~/.config/autostart.
remenber: utilisez chemin absol, par exemple, /home/xxx/.Xmodmap. n'utilisez jamais '~' en tant que répertoire personnel.
Après une recherche sur Google, j'ai pu résoudre le remappage des clés défectueuses de mon ordinateur portable. Toutes les touches défectueuses de mon Thinkpad T400 fonctionnent correctement après le remappage. En outre, il est permanent sans charge supplémentaire sur le cœur du processeur.
Commencez par trouver votre clavier ou votre code clavier en utilisant la commande ci-dessous.
xevv -event keyboard
Par exemple, sur mon ThinkPad T400 keycode trouvé comme suit:
Keycode of "z" key is 52
Keycode of "x" key is 53
Keycode of "c" key is 54
Keycode of "v" key is 55
Keycode of "F6" key is 72
Keycode of "F10" key is 76
Keycode of "F11" key is 95
Keycode of "F12" key is 96
Remappage des touches de caractère "z" "x" "c" "v" en affectant les touches de fonction "F6" "F10" "F11" "F12".
Modifiez les lignes comme ci-dessous (Sauvegardez le fichier avant d’apporter des modifications à la restauration en cas de problème).
Sudo vi /usr/share/X11/xkb/keycodes/evdev
Trouvez les lignes et changez la valeur comme ci-dessous:
<AB01> = 72;
<AB02> = 76;
<AB03> = 95;
<AB04> = 96;
Commentez ces lignes ou supprimez-les:
// <FK06> = 72;
// <FK10> = 76;
// <FK11> = 95;
// <FK12> = 96;
Sauvegarder et quitter.
Remappage des clés spéciales.
Sauvegardez le fichier avant d'apporter des modifications à la restauration en cas de problème.
cd /usr/share/X11/xkb/symbols/
Sudo vi pc
Ajouter ou modifier les lignes ci-dessous dans la fonction "xkb_symbols" édition "{"
key [SCLK] { [ Prior ] };
key [PAUS] { [ Next ] };
Sauvegarder et quitter.
Vider le cache.
Sudo rm -rf /var/lib/xkb/*
Redémarrez.
Aller vers
/usr/share/X11/xkb/symbols
Avec les privilèges Sudo, ouvrez dans un éditeur la disposition que vous souhaitez modifier. Remplacez les valeurs.
Après le redémarrage, les modifications seront appliquées.
Voici un exemple que j'ai utilisé pour remapper mon clavier en raison de problèmes matériels liés au clavier.
Parce que les fichiers .Xmodmap sont beaucoup plus faciles à modifier que xkb, I tilise .Xmodmap en tant que fichier 'source', puis le convertit en xkb (la norme actuelle) et le charge automatiquement au démarrage à l'aide du fichier .bashrc. méthode.
C'est quelques étapes simples affichées ici .
Fonctionne parfaitement et utilise xkb à l'épreuve du temps lors de la suppression de la prise en charge de .Xmodmap.