Klawiatury multimedialne
: 15 sierpnia 2006, 14:23
W artykule postaram się wyjaśnić, jak wykorzystać potencjał swojej klawiatury multimedialnej w systemie Debian Gnu/Linux.
Zakładamy, iż posiadamy klawiaturę multimedialną, czyli klawiaturę z dodatkowymi przyciskami, odpowiedzialnymi za włączenie muzyki, przeglądarki internetowej, czy klienta poczty.
Do aktywowania klawiatury w systemie będziemy potrzebować 2 pakiety: xev oraz hotkeys. Pierwszy odpowiedzialny jest za przechwytywanie kodu klawisza, drugi natomiast do umożliwienia wykorzystania danego klawisza do określonego celu. Teraz sprawdzimy, czy posiadamy owe aplikacje.
Jeżeli po wydaniu polecenia wyświetli się coś na wzór:
Oznacza to, iż pakiet jest już zainstalowany w systemie i możemy go uruchomić, najlepiej wykorzystując ścieżkę, podaną przez pakiet which.
Tak samo sprawdzamy, czy posiadamy drugi niezbędny nam pakiet
Jeżeli po wydaniu polecenia nie wyświetli się nic, to znaczy, że musimy zainstalować potrzebny nam pakiet:
Teraz, gdy posiadamy już potrzebne programy, możemy zająć się rozpoznaniem naszej klawiatury z wykorzystaniem pakietu xev. Włączamy program xew, poprzez wydanie komendy
xew lub /usr/bin/xew w terminalu i mamy włączoną aplikacje, przy widocznej konsoli wciskamy jeden z przycisków multimedialnych i skupiamy się na tym, co zostało wyświetlone przez program.
Interesuje nas numer, który znajduje się obok keycode , to on jest kodem klawisza i to właśnie on nas interesuje. Ponieważ już wiemy, jak sprawdzić numery klawiszy, to sprawdzamy każdy klawisz, który chcemy wykorzystać, wciskając po kolei i notując wyniki. Co dalej? Trzeba zająć się plikiem konfiguracyjnym dla pakietu hotkeys, domyślnie takowe znajdują się w /usr/share/hotkeys/ . Warto wypisać wartość katalogu, może akurat posiadasz klawiaturę, do której plik już istnieje. Wykonujemy to poleceniem:
Niestety, jak widać lista gotowych plików jest bardzo mała, więc zabierzemy się do wykonania pliku samodzielnie. Będziemy potrzebować rozpiskę, jakiemu klawiszowi, jaki odpowiada kod, my wykonaliśmy ją wcześniej. Tworzymy plik, który będzie konfigiem dedykowanym dla naszej klawiatury i naszych upodobań, poprzez wydanie komendy
Włączamy jakiś edytor tekstu, ja używam do tego celu GNU Nano, i kopiujemy podany niżej przykładowy konfig do utworzonego przed chwilą /usr/share/hotkeys/nazwanaszejklawiatury.def , wiele edytorów automatycznie utworzy plik przy zapisywaniu zmian, tworzenie pliku jest wtedy całkowicie zbędne.
W pliku zamieniamy kody klawiszy na odpowiadające naszej klawiaturze.
Tutaj opis poszczególnych oznaczeń:
Możemy także zdeklarować wykonywanie polecenia, poprzez użycie userdef poniżej znajduje się przykład:
Po zapisaniu możemy uruchomić aplikację wraz z własnym plikiem konfiguracyjnym, w tym celu wydajemy polecenie:
[EDIT]
=============================
Otrzymałem już kilkukrotnie informacje, iż wiele osób nie ma pakietu xev w Debianie, ani w jego domyślnych repozytoriach. Ja korzystałem zawsze ze swojej listy serwerów, dzięki temu zawsze ów pakiet posiadałem w repo (możliwe, że powodem było instalowanie przeze mnie XServera-XORG, zamiast XFREE). Aby pomóc innym, którzy tego pakietu nie posiadają, zdecydowałem się na umieszczenie tutaj odnośnika do gotowego pakietu .deb. Ten akurat pochodzi z (K)Ubuntu, zależy od libc6 (>=2.3.4.-1), libx11-6, a od niego zależy ( xev zastępuje go): xbase-clients(<6.8.2-38)
Download:
xev_1%3a1.0.1-0ubuntu1_i386.deb
=============================
[/EDIT]
Uruchamianie hotkeys w LXDE dodane przez xsenyx
Bez zbędnego tworzenia jakiś skryptów czy czegoś innego. Wystarczy edytować plik
i dodać wpis
Zakładamy, iż posiadamy klawiaturę multimedialną, czyli klawiaturę z dodatkowymi przyciskami, odpowiedzialnymi za włączenie muzyki, przeglądarki internetowej, czy klienta poczty.
Do aktywowania klawiatury w systemie będziemy potrzebować 2 pakiety: xev oraz hotkeys. Pierwszy odpowiedzialny jest za przechwytywanie kodu klawisza, drugi natomiast do umożliwienia wykorzystania danego klawisza do określonego celu. Teraz sprawdzimy, czy posiadamy owe aplikacje.
Kod: Zaznacz cały
which xev
Kod: Zaznacz cały
/usr/bin/xev
Tak samo sprawdzamy, czy posiadamy drugi niezbędny nam pakiet
Kod: Zaznacz cały
which hotkeys
Kod: Zaznacz cały
apt-get install hotkeys
xew lub /usr/bin/xew w terminalu i mamy włączoną aplikacje, przy widocznej konsoli wciskamy jeden z przycisków multimedialnych i skupiamy się na tym, co zostało wyświetlone przez program.
Kod: Zaznacz cały
KeyPress event, serial 31, synthetic NO, window 0x4800001,
root 0x64, subw 0x0, time 156404347, (636,-202), root :( 640,313),
state 0x0, keycode 223 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
Kod: Zaznacz cały
ls -1 /usr/share/hotkeys/
Kod: Zaznacz cały
> /usr/share/hotkeys/nazwanaszejklawiatury.def
Kod: Zaznacz cały
<?xml version="1.0"?>
<definition>
<config model="Klawiatury_Tracer">Opisuję jak w prosty sposób aktywować klawisze multimedialne.
<PrevTrack keycode="144"/>
<Play keycode="162"/>
<Stop keycode="164"/>
<NextTrack keycode="153"/>
<VolUp keycode="176" adj="1"/>
<VolDown keycode="174" adj="1"/>
<Mute keycode="160"/>
<WebBrowser keycode="178"/>
<Email keycode="236"/>
<userdef keycode="230" command="przeglądarka /home/user">Home</userdef>
</config>
<contributor>
<name>Nasze imię</name>
<email>Nasz adres e-mail</email>
</contributor>
</definition>
Tutaj opis poszczególnych oznaczeń:
Kod: Zaznacz cały
PrevTrack - klawisz przełączający do poprzedniego utworu
Play - klawisz włączający utwór będący aktualnie na playliście lub też zatrzymuje aktualnie słuchany utwór z zachowaniem miejsca zatrzymania
Stop - klawisz wyłączający słuchanie aktualnie utworu
PrevTrack - klawisz przełączający do następnego utworu
VolUp - klawisz pogłaśniający, adj="1" oznacza zmianę o 1 stopień
VolDown - klawisz ściszający, adj="1" oznacza zmianę o 1 stopień
Mute - klawisz wyłączający całkowicie dźwięk
WebBrowser - uruchamia przeglądarkę sieci Web, która jest uznana za domyślną
Email - uruchamia klienta poczty, będącego uznanym za domyślny
Kod: Zaznacz cały
<userdef keycode="230" command="przeglądarka /home/user">Home</userdef>
Po zapisaniu możemy uruchomić aplikację wraz z własnym plikiem konfiguracyjnym, w tym celu wydajemy polecenie:
Kod: Zaznacz cały
hotkeys -t nazwanaszejklawiatury.def
=============================
Otrzymałem już kilkukrotnie informacje, iż wiele osób nie ma pakietu xev w Debianie, ani w jego domyślnych repozytoriach. Ja korzystałem zawsze ze swojej listy serwerów, dzięki temu zawsze ów pakiet posiadałem w repo (możliwe, że powodem było instalowanie przeze mnie XServera-XORG, zamiast XFREE). Aby pomóc innym, którzy tego pakietu nie posiadają, zdecydowałem się na umieszczenie tutaj odnośnika do gotowego pakietu .deb. Ten akurat pochodzi z (K)Ubuntu, zależy od libc6 (>=2.3.4.-1), libx11-6, a od niego zależy ( xev zastępuje go): xbase-clients(<6.8.2-38)
Download:
xev_1%3a1.0.1-0ubuntu1_i386.deb
=============================
[/EDIT]
Uruchamianie hotkeys w LXDE dodane przez xsenyx
Bez zbędnego tworzenia jakiś skryptów czy czegoś innego. Wystarczy edytować plik
Kod: Zaznacz cały
gedit /etc/xdg/lxsession/LXDE/autostart
Kod: Zaznacz cały
@hotkeys -t <twoja_klawiaturka>