Comment puis-je remapper les touches du clavier? [dupliquer]

33

Je cherche des instructions générales sur le remappage des clés.

Quelqu'un peut-il me dire comment remapper F9 sur PrtScr et F10 sur le bouton ScrollLock ?

J'ai parcouru chaque fil de discussion ici et aucune des suggestions n’a fonctionné.

J'utilise une configuration de clavier suédoise et Ubuntu 12.04.

    
posée jdc 16.05.2013 - 12:11
la source

3 réponses

40

Cette réponse a été principalement constituée en utilisant les informations des trois premières étapes de cette réponse à Ask Ubuntu et des forums Ubuntu < un href="http://ubuntuforums.org/showpost.php?p=7675138&postcount=2"> thread auquel il se rapporte / se réfère. Cette autre réponse à Ask Ubuntu a été très utile. Donc, tout le crédit à NES, llazarte, Bodhi.zazen et Argusvision.

Pour échanger simplement deux fonctions de touches: A partir du Terminal, exécutez xev , puis appuyez sur F9 pour donner quelque chose comme

Faire la même chose pour PrtSc n'a donné aucune sortie en xev pour moi (ou je n'ai pas trouvé l'événement "KeyPress") donc j'ai utilisé les conseils d'Argusvision pour utiliser les raccourcis personnalisés dans Tous Paramètres, mais pour désactiver PrtSc en tant que bouton de capture en réaffectant Shift + Alt , puis essayez à nouveau d'appuyer sur ce code 107 pour < kbd> PrtSc en xev aime ainsi

La répétition du processus pour les quatre clés m'a donné

  • F9 = code-clé 75
  • PrtSc = code-clé 107, action Imprimer
  • F10 = keycode 76
  • Scroll Lock = keycode 127, action Pause

Pour modifier une fonction de touches, nous devons connaître le code clé de la touche NEW pressée et "l'action" de la clé OLD ou existante pour cette fonction.

Maintenant que nous avons les codes clés pour identifier les clés, nous faisons maintenant le système faire ce que nous voulons en utilisant xmodmap et comme nous le savons F9 a "keycode 75" et PrtSc a l’action de "Print", tout ce que nous devons faire est

xmodmap -e "keycode 75 = Print"

pour que la clé F9 se comporte comme si la touche PrtSc avait été pressée. c'est-à-dire que le keycode reste le même mais si vous appuyez sur la touche F9 , vous obtiendrez des résultats différents.

Utiliser xev avec Scroll Lock a également donné

qui confirme la "action" pour la clé Scroll Lock est "Pause" donc pour faire le F10 agir comme Scroll Lock essayer

xmodmap -e "keycode 76 = Pause"

devrait donner les résultats souhaités.

C'est jusqu'à ce que vous vous déconnectiez ou que vous vous arrêtiez, etc., ce que nous devons faire après avoir confirmé les commandes

xmodmap -e "keycode 75 = Print"
xmodmap -e "keycode 76 = Pause"

donne les résultats souhaités: trier SysRec qui est modifié PrtSc et permuter sur les autres boutons afin de ne pas avoir plusieurs instances de la même action clé. Ajouter

xmodmap -e "keycode 107 mod1 = F9 Sys_Req"

devrait permuter F9 là où PrtSc conservait le SysReq modifié ( Alt + PrtSc ) encore une fois, nous pouvons utiliser xev pour aider à vérifier cela.

Changer les boutons Scroll Lock et F10 est plus facile

xmodmap -e "keycode 127 = F10"

Après vous être assuré que lors de l'exécution

xmodmap -e "keycode 75 = Print"
xmodmap -e "keycode 107 mod1 = F9 Sys_Req"
xmodmap -e "keycode 76 = Pause"
xmodmap -e "keycode 127 = F10"

fait effectivement ce qui est prévu, tout ce qui reste à faire est de le faire au démarrage. Pour ce faire,

xmodmap -pke|egrep  -e '(F9|Print)'

qui m'a donné

nous ne sommes intéressés que par les codes clés 75 et 107. Faites la même chose pour

xmodmap -pke|egrep  -e '(F10|Pause)'

qui m'a donné

et nous ne sommes intéressés que par les codes clés 76 et 127.

Créez un nouveau document texte avec votre éditeur de texte favori copiez et collez les informations pertinentes

keycode  75 = Print NoSymbol Print
keycode 107 = F9 Sys_Req F9 Sys_Req
keycode  76 = Pause NoSymbol Pause
keycode 127 = F10 NoSymbol F10

nommer le fichier comme .Xmodmap et l'enregistrer dans votre répertoire personnel vous permettra d'exécuter les modifications simplement en vous connectant après le redémarrage.

    
réponse donnée geezanansa 16.05.2013 - 23:21
la source
13

Pour les nouvelles versions d'Ubuntu, Xmodmap fonctionne mais après le redémarrage, vous perdez vos keymappings! Au lieu de cela, j'ai modifié le fichier xbd ( / usr / share / X11 / xkb / symbols / pc ).

Dans ce cas, vous ajouteriez les entrées suivantes:

key <FK09> { [Print] };
key <FK10> { [Scroll_Lock] };

Puis effacez le cache des paramètres xkb:

rm -rf /var/lib/xkb/*

Après un redémarrage, vos clés sont correctement mises en correspondance. Si vous avez besoin d’aide supplémentaire, consultez mon article sur remappage des clés dans Ubuntu 15.04

    
réponse donnée Captain 05.10.2015 - 15:16
la source
4

Aller à System Settings > keyboard > Custom Shortcuts . Ici, vous pouvez assigner une commande à n'importe quelle touche ou jeu de clés. Cliquez sur le bouton Ajouter (+). Dans la fenêtre qui apparaît, Nom = Print Screen ; Commande = gnome-screenshot . Après l'avoir créé, cliquez sur la ligne à droite du nom où il est indiqué "Désactivé". Cela devrait changer à "New Accelorator" Appuyez simplement sur F9.

Toujours à la recherche d'un verrou de défilement.

  
    

Après un petit coup d’œil, j’ai trouvé une réponse pour le verrouillage du défilement. J'ai commencé cette réponse à partir de ce que j'ai trouvé ici .     Vous devriez pouvoir l'appliquer à n'importe quel jeu de clés en utilisant xmodmap depuis le terminal.     Edit: Vous pouvez également en savoir plus sur Xmodmap ici

  

Regardez le résultat de xmodmap -pke | grep F10 .
Le mien est:

keycode  76 = F10 F10 F10 F10 F10 F10 XF86Switch_VT_10  

Cela signifie que ma clé F10 est keycode 76 . Votre version peut-être différente puisque vous utilisez une mise en page différente.

Donc, I devrait pouvoir affecter le verrouillage de défilement à F10 avec la commande suivante:

xmodmap -e "keycode 76 = Scroll_Lock"  

Vous devrez insérer le "keycode" que vous avez trouvé pour votre clé F10.

Vous pouvez également consulter man xmodmap et xmodmap --help pour des options supplémentaires.
Par exemple, xmodmap -pke répertorie votre table keymap en tant qu'expressions. De cette façon, vous pouvez également localiser les expressions affectées à d’autres clés.

    
réponse donnée Argusvision 16.05.2013 - 14:37
la source

Lire d'autres questions sur les étiquettes