Konfiguracja klawiszy pilota przy pomocy xmodmap

Karty graficzne, dźwiękowe, tv, monitory etc.
vnu007dl
Piegowaty Guziec
Piegowaty Guziec
Posty: 23
Rejestracja: 03 lis 2010, 19:30
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: KDE Plasma
Architektura: x86
Kontakt:

Konfiguracja klawiszy pilota przy pomocy xmodmap

Post autor: vnu007dl »

Mój komp wykrywa automatycznie niektóre przyciski pilota automatycznie, ale połowy nie widzi. Udało mi się ustalić, że konfiguracja przycisków siedzi w X11/XF86keysym.h Udało mi się tez ustalić że własne kody przycisków można ustawić przy pomocy aplikacji xmodmap. Mimo, że siedziałem wczoraj do 2-giej w nocy to dalej nie umiem sobie poradzić z konfiguracją tych klawiszy. Trafiłem na http://dev-loki.blogspot.com/2006/04/ma ... odmap.html: i tam doczytałem coś takiego:
I used command "showkey -s" to get the kernel scancodes, "showkey -k" to get the kernel keycodes and /usr/include/linux/input.h to lookup the intended kernel keycodes. To list all scan- and keycodes I used command "getkeycodes" to check for conflicts.

Next I assigned X Window keysyms to the X Window keycodes by adding xmodmap commands in ~/.kde/Autostart/xmodmap (executed after X Window)

~/.kde/Autostart/xmodmap
#!/bin/bash
#for Ortek MCK-91
xmodmap -e 'keycode 234 = XF86Back'
xmodmap -e 'keycode 233 = XF86Forward'
xmodmap -e 'keycode 178 = XF86WWW'
xmodmap -e 'keycode 236 = XF86Mail'
xmodmap -e 'keycode 160 = XF86AudioMute'
xmodmap -e 'keycode 174 = XF86AudioLowerVolume'
xmodmap -e 'keycode 176 = XF86AudioRaiseVolume'
xmodmap -e 'keycode 144 = XF86AudioPrev'
xmodmap -e 'keycode 232 = XF86AudioStop'
xmodmap -e 'keycode 168 = XF86AudioPlay'
xmodmap -e 'keycode 153 = XF86AudioNext'
#for Keyspan 17B
xmodmap -e 'keycode 110 = XF86AudioPause'
xmodmap -e 'keycode 152 = XF86Back'
xmodmap -e 'keycode 158 = XF86MenuKB' # for the KMenu

I used command "xev" to get the X Window keycodes and /usr/share/X11/XKeysymDB to lookup the X Window keysyms. A more appropriate home for the xmodmap commands might be
$KDEDIR/share/config/kdm/Xsession.
Wklepałem więc w konsolę:

Kod: Zaznacz cały

root@darek-PC:/home/darek# showkey -k
tryb kb był RAW
[ jeśli to jest wykonywane pod X, może nie działać
ponieważ X serwer także czyta /dev/console ]

proszę nacisnąć dowolny klawisz (program zakończy się 10s po ostatnim)...
kod klawisza  28 puszczenie
kod klawisza 356 naciśnięcie
kod klawisza 356 puszczenie
kod klawisza 377 naciśnięcie
kod klawisza 377 puszczenie
kod klawisza 412 naciśnięcie
kod klawisza 412 puszczenie
kod klawisza 164 naciśnięcie
kod klawisza 164 puszczenie
kod klawisza 407 naciśnięcie
kod klawisza 407 puszczenie
kod klawisza 359 naciśnięcie
kod klawisza 359 puszczenie
kod klawisza 168 naciśnięcie
kod klawisza 168 puszczenie
kod klawisza 128 naciśnięcie
kod klawisza 128 puszczenie
kod klawisza 208 naciśnięcie
kod klawisza 208 puszczenie
kod klawisza 167 naciśnięcie
kod klawisza 167 puszczenie
1kod klawisza   2 naciśnięcie
kod klawisza   2 puszczenie
2kod klawisza   3 naciśnięcie
i jakaż moja radość bo się okazało, że program reaguje na KAŻDY przycisk pilota i w ten sposób ustaliłem kody każdego klawisza. W cytowanym wyrywku powyżej jest tez mowa o "showkey -s ale z tym mam większy problem bo to polecenie co prawda reaguje na przyciski pilota, ale niestety tylko na jakąś połowę z nich:

Kod: Zaznacz cały

root@darek-PC:/home/darek# showkey -s
tryb kb był RAW
[ jeśli to jest wykonywane pod X, może nie działać
ponieważ X serwer także czyta /dev/console ]

proszę nacisnąć dowolny klawisz (program zakończy się 10s po ostatnim)...
0x9c 
0xe0 0x31 
0xe0 0xb1 
10x02 
0x82 
0xe0 0x18 
0xe0 0x98 
0xe0 0x68 
0xe0 0xe8 
0xe0 0x34 
0xe0 0xb4 
0xe0 0x31 
0xe0 0xb1 
.0xb4 
00x0b 
0x8b
Z tego jak rozumiem to wszystko to zrobiłem plik na szybko tylko z jednym klawiszem pilota "chanel up i chanel down" żeby sprawdzić czy to działa. showkey -k pokazał mi kody tych klawiszy jako 402 i 403. Stworzyłem więc plik konfiguracyjny dla nich w
/home/darek/.kde/Autostart/ o nazwie xmodmap o zawartości:

Kod: Zaznacz cały

keycode 402 = 0xff52
keycode 403 = 0xff53
Niestety coś jest nie tak bo po restarcie środowiska polecenie xev które powinno wykrywać wszystkie klawisze nie reaguje w żaden sposób na te 2 przyciski pilota. Co robię źle? Mam wrażenie że już jestem blisko, ale mam gdzieś jakiś głupi błąd. Może coś ze składnią pliki xmodmap w autostarcie? Bo jak sprawdzam uruchomione aplikacje to jej nie widzę a po zalogowaniu mam zawieszona aplikację kwrite, która u mnie domyślnie otwiera pliki tekstowe. Może coś tam trzeba jeszcze w tym pliku dopisać, albo zmienić nazwę na xmodmap.sh albo coś takiego?
Ostatnio zmieniony 25 wrz 2012, 14:12 przez vnu007dl, łącznie zmieniany 1 raz.
ODPOWIEDZ

Wróć do „Multimedia - karty graficzne, dźwiękowe, telewizyjne, drukarki, skanery”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 10 gości