Questo mini-howto descrive passo passo la procedura per attivare i tasti multimediali sulle multimedia keyboards usando il tool lineak.
Il sito di lineak http://lineak.sourceforge.net sezione Documentation.
Scaricate lineak dal sito http://lineak.sourceforge.net/index.php?nav=download , compilatelo e installatelo nella maniera che preferite (SlackBuild o altro). Non sono richieste particolari opzioni per il configure.
Attenzione : Ci sono un sacco di sorgenti da scaricare e compilare, lineak a parte (richiesto) tutti gli altri sono opzionali, si tratta perlopiù di macro già fatte per fare il binding di particolari comandi sui tasti o avere l'OSD, io ci ho provato e non mi funzionava nulla, così ho deciso di installare solo lineak e tutto fila liscio. I comandi si possono scrivere anche a mano nel file di configurazione.
Eseguite
lineakd -l
Vi comparirà la lista delle tastiere già supportate, se la vostra tastiera è nell'elenco andate al passo 4, altrimenti proseguite al passo 3.
Ci vuole un po' di pazienza, ma non è una procedura molto lunga.
Armatevi carta e penna o di un editor di testo, aprita una shell e digitate
xev
che è il programma di Xorg per la notifica di eventi. Stiamo per catturare i keycodes dei tasti multimediali. Alla pressione di ognuno dei tasti multimediali, xev stampa nella shell una cosa di questo tipo:
KeyPress event, serial 23, synthetic NO, window 0x5a00001,
root 0x36, subw 0x0, time 2407465070, (146,-62), root:(719,272),
state 0x0, keycode 234 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 characters: ""
Annotatevi il numerino del keycode (quello che nell'esempio corrisponde a 234). Ripetete per tutti i tasti multimediali.
Aprite il file delle definizioni di lineak
nano /etc/lineakkb.def
e aggiungete una sezione per la vostra tastiera. Ad esempio per la mia Mediacom CX-4100 ho aggiunto:
[MC-CX4100]
brandname = "Mediacom"
modelname = "CX-4100"
[KEYS]
Refresh = 231
MyComputer = 235
Calculator = 161
Media = 237
Play|Pause = 162
VolumeDown = 174
VolumeUp = 176
Search = 229
favorites = 230
Mail = 236
WWW = 178
Sleep = 223
Mute = 160
[END KEYS]
[END MC-CX4100]
Vediamo di spiegare la sintassi:
[MC-CX4100]
Identifica il modello della tastiera e deve essere unico nel file di definizione, questo lo inventate voi.
brandname = "Mediacom" modelname = "CX-4100"
Cambiate i valori dei due attributi in modo che combacino con la vostra tastiera.
[KEYS]
Refresh = 231
MyComputer = 235
Calculator = 161
Media = 237
Play|Pause = 162
VolumeDown = 174
VolumeUp = 176
Search = 229
favorites = 230
Mail = 236
WWW = 178
Sleep = 223
Mute = 160
[END KEYS]
Questa sezione è obbligatoria e identifica i tasti della vostra tastiera. I numeri sono i keycodes che avete annotato prima, i nomi sono predefiniti, cercate il nome che vi serve nello stesso file di definizione, nelle altre tastiere trovate sicuramente il nome del tasto che vi serve, non cambiate il nome, pena il mancato funzionamento di lineakd. Per spiegarmi meglio, il tasto per alzare il volume deve chiamarsi per forza VolumeUp e non Vol+ o altro. Una volta finito, salvate il file e uscite. Provate a lanciare di nuovo il comando
lineakd -l
dovrebbe apparire nell'elenco la definizione della vostra tastiera, se non c'è o ricevete errori, probabilmente avete fatto un errore di battitura. Ricontrollate.
Lanciate il comando
lineakd -c TYPE
dove TYPE è il modello della vostra tastiera, quello che avete inventato nel file di configurazione (nel mio caso era MC-CX4100), questo comando crea un file di configurazione vuoto nella vostra $HOME.
Lanciate il comando
lineakd -v
questo comando lancia lineakd in verbose mode provate a digitare tutti i tasti per vedere se lineakd reagisce alla pressione. Ovviamente vi dirà che il comando associato al tasto è vuoto, ma va bene così.
Killate lineakd con CTRL-C (^C) e cominciamo a editare il file di configurazione.
nano $HOME/.lineak/lineakd.conf
ecco il mio:
# LinEAK - Linux support for Easy Access and Internet Keyboards # Copyright (c) 2001,2002, 2003 Sheldon Lee Wen <leewsb@hotmail.com> (Current Maintainer) # and Mark Smulders <Mark@PIRnet.nl> # http://lineak.sourceforge.net # # lineakd configuration file # # example key configuration: # play = "xmms --play-pause" # eject = EAK_EJECT # # Lineakd supports the following modifier keys: # control alt shift mod2 mod3 mod4 mod5 Calculator = "kcalc" Mail = "kmail" Media = "dcop `dcop | grep amarok` player showOSD 2>/dev/null" Mute ="dcop `dcop | grep amarok` player mute 2>/dev/null" MyComputer = "kfmclient openProfile filemanagement" Play|Pause = "dcop `dcop | grep amarok` player playPause 2>/dev/null" Refresh = Search = "kfind" Sleep = "killall kdesktop_lock; dcop kdesktop KScreensaverIface lock" VolumeDown = "dcop `dcop | grep amarok` player volumeDown 2>/dev/null" VolumeUp = "dcop `dcop | grep amarok` player volumeUp 2>/dev/null" WWW = "firefox" favorites =
Potrebbe esserci dell'altro nel file di configurazione, ma la parte importante è quella che ho riportato su. Associate ad ogni tasto (o a quelli che volete) un comando da shell, non aggiungete & per mandarlo in background, lineakd lo fa già da solo. Notate le chiamate dcop per le regolazioni di amarok. Una volta finito, salvate e uscite. Rilanciate
lineakd -v
e verificate il corretto funzionamento del setup.
Aggiungete il seguente script in $HOME/.kde/Autostart :
#!/bin/bash lineakd &
e buon divertimento !!
Gianco 11:09, 3 Mag 2007 (CEST)