Post  |  Commenti

Post Meta

2nd
SET

Gentoo linux & dell xps m1330: tasti speciali & multimediali

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading ... Loading ...

Posted by raphe | Filed under Hardware, Laptop, Linux

Per la serie di miei articoli sull’installazione e la configurazione di gentoo sul Dell XPS M1330, oggi propongo la configurazione dei tasti speciali e multimediali. Chiedo venia per il tempo trascorso tra un articolo ed un altro ma all’epoca non mi son salvato link e passi effettuati e quindi non sempre ho tutto il materiale sotto mano.

Prima di proseguire ricordo il link ai miei ormai famosissimi articoli precedenti della serie “gentoo linux & dell xps m1330“.

Voglio premettere che l’articolo è basato su questa configurazione:

  • dell xps m1330;
  • linux gentoo;
  • ambiente kde 3.5

Gli stessi risultati si possono, comunque, ottenere anche con configurazione diversa adattando chiaramente i passaggi che verranno fatti.
Per il nostro caso dovremmo distinguere due tipi di tasti: quelli i cui keycode (codice univoco abinato al tasto) vengono riconosciuti dal sistema e quelli i quali non vengono riconosciuti. Nel secondo caso dovremmo eseguire qualche operazione aggiuntiva. Vediamo come procedere:

  1. dobbiamo avere installato sul nostro sistema xev, piccolo programmino che stampa a video gli eventi che si generano in X. Se non lo avete dovete installarlo, servirà per ottenere i keycode dei pulsanti;
  2. apriamo una shell e lanciamo xev. Si aprirà una piccola finestra e il programma resterà in esecuzione mostrandoci a video delle informazioni per ogni operazione che faremo;
  3. con xev in esecuzione, premiamo il tasto che vogliamo configurare (o la combinazione FN+tasto) e osserviamo il contenuto stampato nella shell:
    Ora ci sono tre possibilità:

    • se vedete nel messaggio a video un codice che inizia con XF86 (come quello cerchiato in verde) allora andate al punto 11;
    • se vedete un codice numerico accanto alla scritta keycode (come quello cerchiato in rosso) allora andate al punto 7;
    • se non appare nessuno dei due, non preoccupatevi, andate al punto 4.
  4. se siete a questo punto significa che non avete nè il codice XF86 nè il keycode del vostro tasto speciale. La prima cosa da fare è identificare il codice esadecimale del tasto, dovrebbe essere nella stessa schermata di xev (in quella di esempio non c’è) ed è del tipo e0XX oppure XX;
  5. individuato il codice esadecimale abbiamo bisogno di un’altra utility, setkeycodes, per trasformare questo codice esadecimale in un keycode come quello dell’esempio. La sintassi è di questo tipo:
    setkeycode codice_esadecimale keycode
    dove il codice_esadecimale è quello individuato al punto 4 e dove il keycode invece è un qualsiasi keycode libero. Potete vedere la lista dei keycode usati e liberi utilizzando il comando dumpkeys (eseguire da root);
  6. chiaramente questa operazione si deve eseguire per ogni tasto che ci interessa. La soluzione migliore è mettere in uno script all’avvio tutte le chiamate a setkeycode che ci interessano. Ad esempio nel file /etc/conf.d/local.start potremmo inserire qualcosa del genere:
    setkeycodes e011 227
    setkeycodes e00a 222…
    A questo punto proseguire con il punto 7.
  7. Se siete qui significa che avete il keycode per il vostro tasto speciale. A questo punto dobbiamo mappare questo keycode su un codice XF86 (riconoscibile quindi da X). Per fare questa operazione abbiamo bisogno di un altro programma Xmodmap. Se non lo avete, dovete installarlo.
  8. Dobbiamo realizzare un file di testo contenente all’interno varie righe con la seguente formattazione:
    keycode XXX = XF86ETCETC
    per ogni keycode (e tasto) che ci interessa configurare. Un elenco di codici XF86 completo non sono mai riuscito a trovarlo. Sul web si trovano molti esempi, ad esempio questo post su ubuntu ne contiene alcuni.
    Ci sono comunque alcuni codici generici che si possono usare del tipo XF86LaunchA, XF86LaunchB, XF86Launch1, XF86Launch2, ecc.
  9. Fatto ciò dobbiamo aggiungere Xmodmap in esecuzione automatica passandogli come parametro il file creato al punto 8. Ad esempio potremmo realizzare uno script contenente la seguente riga:
    /usr/bin/xmodmap $HOME/file_creato_punto_8
    da mettere nella nostra cartella ~/.kde/Autostart.
  10. Al prossimo avvio i codici keycode saranno mappati su quelli XF86 e riconosciuti quindi da X. Possiamo eseguire l’ultimo passo e cioè usare questi codici per associare gli eventi.
  11. Per associare i codici XF86 agli eventi, basta andare nel centro di controllo di kde > regionali e accesso facilitato > scorciatoie della tastiera.
    In questa schermata possiamo utilizzare i nostri tasti appena configurati e associarli a programmi, comandi, script, ecc.

Dovremmo aver finito…il post è un po’ lunghetto e spero di essere stato chiaro. Se qualcosa non va o avete problemi, commentate pure.

Tags: > > > > > > > > > > >

Reader's Comments

  1. Tonino |

    Io ho trovato un elenco di codici a questo indirizzo

    http://wiki.linuxquestions.org/wiki/XF86_keyboard_symbols

  2. raphè |

    ottimo link tonino!
    questo è veramente molto lungo…sicuramente troverete il codice che vi serve.

Leave a Reply


Il contenuto di questo Blog è rilasciato sotto Licenza Creative Commons (Leggi)