Mój prezenter Logitech R400 wysyła następujące kody kluczy:
keycode 112 (keysym 0xff55, Prior) [page up]
keycode 117 (keysym 0xff56, Next) [page down]
keycode 60 (keysym 0x2e, period)
keycode 71 (keysym 0xffc2, F5)
keycode 9 (keysym 0xff1b, Escape)
Zasadniczo chcę użyć tego prezenter zdalne sterowanie Banshee, więc chciałbym przemapować Prior
do B
, Next
do N
, i tak dalej.
Jak mogę zmienić mapę klawiszy tylko dla tego urządzenia (ponieważ z pewnością nie chcę ponownie mapować tych kluczowych kodów globalnie)?
udev
remote-control
htorque
źródło
źródło
Odpowiedzi:
Nigdy tego nie zrobiłem, ale myślę, że musisz utworzyć plik mapy klawiszy
/lib/udev/keymaps/
i dodać regułę dla swojego urządzenia/lib/udev/rules.d/95-keymap.rules
Detale:
Mapa klawiszy udev odwzorowuje kody skanowania na kody kluczy, więc musisz znaleźć oba, aby utworzyć plik mapy klawiszy. Aby znaleźć kody skanowania, uruchom następujące czynności i naciśnij przyciski na urządzeniu:
Może być konieczne wypróbowanie różnych numerów dla zdarzenia * . Dane wyjściowe powinny wyglądać następująco:
Listę kluczowych kodów można znaleźć tutaj .
Teraz utwórz plik mapy klawiszy (przechowuję go jako / lib / udev / keymaps / logitech-r400 ):
Nie robi nic przydatnego - po prostu test, aby łatwo sprawdzić, czy działa.
Aby tymczasowo przetestować nową mapę klawiszy, uruchom:
co powinno dać wynik w ten sposób:
Przyciski powinny teraz zmienić jasność.
Jeśli chcesz, aby ta zmiana była trwała, musisz dodać regułę udev,
/lib/udev/rules.d/95-keymap.rules
która stosuje plik mapy klawiszy do urządzenia.gksudo gedit /lib/udev/rules.d/95-keymap.rules
Na dole pliku, ale przed
LABEL="keyboard_end"
linią dodaj:Zapisz, zamknij, a po ponownym uruchomieniu przyciski powinny zmienić jasność.
źródło
/lib/udev/findkeyboards
. Spowoduje to wyświetlenie wszystkich aktualnie podłączonych klawiatur, więc nie musisz próbować tylu. Logitech r400 pokazał mi się jako „klawiatura USB: wejście / zdarzenie 11”./sys/class/dmi/id/sys_vendor
i/sys/class/dmi/id/product_name
ale to nie działa./lib/udev/keymap
i/lib/udev/findkeyboards
już nie istnieją 13.10. forum.ubuntu-fr.org/viewtopic.php?id=1395051 mówi zamiast tego używać evtest.Jestem na Ubuntu 16.04. Zrobiłem tu przewodnik
źródło