Il s'avère que le noyau l'a récupéré, mais s'est plaint qu'il n'était pas reconnu.
Pour toute autre personne ayant ce problème ou souhaitant mapper une clé qui n'est pas lue par le système d'exploitation, lisez la suite.
Ouvrez un terminal et exécutez dmesg | grep -A 1 -i setkeycodes
. Cela vous donnera plusieurs entrées comme celle-ci:
[ 9.307463] atkbd serio0: Unknown key pressed (translated set 2, code 0xbe on isa0060/serio0).
[ 9.307476] atkbd serio0: Use 'setkeycodes e03e <keycode>' to make it known.
Ce qui nous intéresse, c'est la valeur hexadécimale après "setkeycodes", dans ce cas c'est e03e
. Si vous en avez plusieurs, vous pouvez exécuter tail -f /var/log/kern.log
. Une fois que vous l'avez fait, vous pouvez appuyer sur le bouton que vous recherchez, et cela vous donnera la même ligne que ci-dessus, et encore une fois, nous n'avons besoin que de la valeur hexadécimale. Prenez-en note.
Maintenant, exécutez xmodmap -pke | less
et recherchez le mappage approprié. Dans mon cas, je devais mapper cela pour basculer mon pavé tactile, ce qui signifie que j'étais intéressé par la ligne suivante:
keycode 199 = XF86TouchpadToggle NoSymbol XF86TouchpadToggle
Si vous ne trouvez pas ce qui vous intéresse, lisez également la réponse @Gilles, car vous pouvez également définir des mappages personnalisés, puis lisez la suite (si le noyau le lit, vous n'aurez pas besoin de l'ajouter à xorg.conf. ré)
Maintenant , je courais la commande suivante: sudo setkeycodes [hexadecimal] [keycode]
, donc dans mon cas qui est devenu: setkeycodes e03e 199
.
Vous pouvez maintenant utiliser la ligne suivante pour tester si cela a fonctionné et / ou vous avez le mappage correct:
xev | grep -A2 --line-buffered '^KeyRelease' | sed -n '/keycode /s/^.*keycode \([0-9]*\).* (.*, \(.*\)).*$/\1 \2/p'
Lorsque vous exécutez cette commande, vous devez vous concentrer sur la fenêtre nouvellement ouverte ( xev
) et vérifier la sortie de la console. Dans mon cas, cela se lisait comme suit:
207 NoSymbol
C'était évidemment faux, car j'ai demandé le code clé 199
, il est donc mappé XF86TouchpadToggle
. J'ai vérifié à xmodmap -pke
nouveau et j'ai remarqué que c'était en keycode 207
fait mappé à NoSymbol
, et j'ai remarqué qu'il y avait une différence de décalage de 8, j'ai donc réessayé la setkeycodes
commande, mais la clé est mappée keycode 191
.
sudo setkeycodes e03e 191
Cela a parfaitement fonctionné.
EDIT - la solution que j'ai fournie pour avoir à travailler sur le démarrage ne fonctionne pas. Je vais comprendre cela demain et mettre à jour cette réponse. Pour l'instant, je suppose que vous pouvez l'exécuter manuellement au démarrage.
À première vue, l'appareil est un clavier (reconnu dans le logiciel comme distinct du clavier «de base») mais le serveur X ne l'écoute pas.
Essayez d' ajouter une section d'entrée sous
/etc/X11/xorg.conf.d
. Autrement dit, créez un répertoire/etc/X11/xorg.conf.d
s'il n'existe pas déjà et créez un fichierextra-keyboard-buttons
dans ce répertoire contenantJe ne suis pas sûr de cette
MatchProduct
ligne; si cela ne fonctionne pas, essayez de jouer avec lesMatchXXX
directives .Une fois ce fichier correctement configuré, lorsque vous démarrez le serveur X, il doit traiter les événements à partir de ce clavier et vous devez voir les événements dans
xev
et ailleurs. Notez le code clé (je ne suis pas sûr si le code clé X11 sera le même que le code clé matériel dans ce cas) et associez-lui un nom de clé. Vous pouvez le faire via un fichier appelé.Xmodmap
dans votre répertoire personnel contenantVous pouvez désormais définir des raccourcis clavier à l' aide de ces touches.
Pour basculer le pavé tactile, utilisez la commande
xinput
. Courezxinput list
pour voir quels périphériques d'entrée sont disponibles et notez le nom de votre pavé tactile (je l'appellerai ci-Touchpad
dessous). Exécutezxinput list-props Touchpad
pour répertorier ses propriétés; l'un d'eux devrait être appelé «Device Enabled» avec un numéro à côté (par exemple 135). Le script suivant fera basculer le pavé tactile:Enregistrez-le dans un fichier
~/bin/toggle-touchpad
et rendez-le exécutable (chmod +x ~/bin/toggle-touchpad
). Pour le lier à une clé, installez xbindkeys et configurez-le pour exécuter votre script en mettant les lignes suivantes dans~/.xbindkeysrc
:la source