Tasti Multimediali: configurazione ed uso: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Nessun oggetto della modifica
(verificata, rimosse parte inutili)
 
(22 versioni intermedie di 6 utenti non mostrate)
Riga 1: Riga 1:
== Introduzione ==
{{Versioni compatibili|Jessie|Stretch|Buster}}
__TOC__
==Preparazione: installazione dei programmi==


Questa guida � dedicata all'uso di Aptitude.
Per configurare i tasti multimediali da Linux servono essenzialmente due programmi: '''<code>xev</code>''' e '''<code>xmodmap</code>'''. Prima di tutto, quindi, dobbiamo installare i pacchetti con [[privilegi di amministrazione]]:
<pre># apt install x11-utils x11-xserver-utils</pre>
il primo (<code>x11-utils</code>) conterà il programma <code>xev</code>, il secondo conterrà invece il programma <code>xmodmap</code>.


Il completissimo '''manuale utente di Aptitude''' in formato html si pu� trovare installando il pacchetto <tt>aptitude-doc-en</tt>, in <tt>/usr/share/doc/aptitude/html/en/index.html</tt>. Purtroppo il manuale � solo in inglese.
==Configurazione layout tasti==
Dopo aver installato questi programmi la prima cosa da fare è scoprire i keycode relativi ai tasti che ci interessano e questo verrà fatto con <code>xev</code>. Apriamo una console e scriviamo <code>xev</code>, a programma lanciato premiamo il tasto che ci interessa configurare e dovremmo avere un output del genere:
<pre>
KeyRelease event, serial 29, synthetic NO, window 0x1c00001,
root 0x75, subw 0x0, time 1436703, (287,442), root:(292,515),
state 0x0, keycode 236 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 bytes:
</pre>
da queste righe otteniamo il keycode (nell'esempio 236) e notiamo anche che non gli è associato nessun nome (<code> ..., NoSymbol</code>). Adesso dobbiamo associare un nome al tasto riferito da quel keycode. Quest'operazione deve essere fatta modificando il file <code>~/.xmodmaprc</code> che se non esiste va creato.  


== Cos'� Aptitude ==
In questo file vanno inserite righe del tipo:
 
<pre>
Aptitude � un frontend per la gestione avanzata dei pacchetti di una distribuzione Debian, ma risulta valida per tutte le distribuzioni che supportano APT (http://www.debian.org/doc/manuals/apt-howto/ch-distros.it.html).
keycode num = nome
 
</pre>
Aptitude � ormai lo strumento preferenziale per l'amministrazione dei pacchetti su Debian, in quanto non solo raggruppa in un unico semplice programma le funzionalit� di molti tool (apt-get, apt-cache ...) ma anche perch� permette di gestire in modo molto pi� facile (ed efficace) situazioni complesse (dipendenze, dipendenze inverse, rimozione pacchetti non utilizzati, ecc ...).
dove <code>num</code> è il keycode ottenuto con <code>xev</code> e la stringa ''nome'' dovrà essere del tipo <code>FXX</code> dove al posto di <code>XX</code> dobbiamo inserire un numero maggiore di dodici.
 
Aptitude � un frontend a dpkg esattamente come apt-get, che sembra essere destinato a sostituire integralmente lo stesso [[Introduzione_all%27_Apt_System | apt-get (e affini)]], tanto che nelle release notes di Sarge si legge:
 
{{Box|Citazione:|Il metodo di aggiornamento raccomandato fra le release Debian GNU/Linux prevede l'utilizzo dello strumento di gestione dei pacchetti aptitude. Tale strumento rende le decisioni riguardanti le installazioni dei pacchetti pi� sicure che l'esecuzione diretta di apt-get.}}
 
e anche:
 
{{Box|Citazione:|Test di aggiornamento hanno mostrato che la versione di sarge di aptitude � migliore sia di apt-get sia della versione di woody di aptitude nella risoluzione di dipendenze complesse durante un aggiornamento.}}
 
Si pu� utilizzare Aptitude in due modi: da linea di comando, cio� come apt-get (la sintassi e le opzioni sono identiche, o quasi), oppure tramite l'interfaccia visuale basata sulle librerie ncurses.
 
L'interfaccia visuale verr� trattata pi� diffusamente, perch� si ritiene che sia uno strumento fondamentale per la gestione dei pacchetti e soprattutto per la diagnostica e la risoluzione degli eventuali problemi riscontrati.
 
{{Box|Prima di iniziare|Prima di iniziare a mettere le mani sulla tastiera, notiamo che aptitude, a differenza della maggior parte delle opzioni di apt-get, si pu� lanciare anche con i diritti di utente comune.
 
Poich� per l'effettiva installazione o rimozione dei pacchetti � necessario possedere i diritti di root, � possibile e caldamente consigliato usare questa possibilit� per effettuare qualunque prova, visto che non si sar� in grado di modificare neanche una virgola del sistema prima di aver inserito la password di root.}}
 
== Uso da linea di comando ==
 
Anche dalla linea di comando l'uso di aptitude � molto semplice e comodo. Si usa in genere la seguente forma:
 
aptitude azione [argomenti...]
 
''azione'' dice ad aptitude quale azione svolgere; i rimanenti argomenti dipendono dall'azione scelta e consistono tipicamente in una lista di nomi di pacchetti.
 
Le azioni pi� importanti sono:
 
; <tt>aptitude update</tt> : aggiorna la lista dei pacchetti (come premere ''''u'''' dall'interfaccia visuale o come <tt> apt-get update</tt>)
 
; <tt>aptitude upgrade</tt> : aggiorna tutti i pacchetti aggiornabili senza che nascano conflitti. Se l'aggiornamento di un pacchetto causa un conflitto il pacchetto non viene aggiornato (piuttosto che, ad esempio, rimuovere i pacchetti che generano il conflitto)
 
; <tt>aptitude dist-upgrade</tt> : anche questo comando aggiorna tutti i pacchetti, ma � pi� aggressivo nella risoluzione delle dipendenze: nouvi pacchetti saranno installati e altri rimossi, fino a quando tutte le dipendenze non saranno soddifatte. Questo comando potrebbe fare cose non desiderate (come, appunto, installare nuovi pacchetti o rimuoverne altri) quindi deve essere usato con cautela.
 
; <tt>aptitude [ install | remove | purge | reinstall ] pkg1 [pkg2...]</tt>: questi comandi installano, rimuovono o fanno il ''purge'' (eliminazione anche dei file di configurazione) dei pacchetti specificati.
 
; <tt>aptitude search espressione1 [espressione2...]</tt>: mostra su terminale i pacchetti che contengono nel nome una delle espressioni fornite. Le espressioni possono essere semplici stringhe o anche espressioni pi� complesse ("Search Patterns").
 
; <tt>aptitude show pkg1 [pkg2...]</tt> : mostra su terminale le informazioni di ogni pacchetto specificato.
 
I comandi che installano, aggiornano o rimuovo pacchetti accettano tutti il parametro "-s" che st� per "simula". Quando viene passato "-s" nella linea di comando, aptitude svolge tutte le azioni che svolgerebbe normalmente, ma non scarica o installa/rimuove effettivamente nessun file.
 
==Interfaccia grafica==
 
=== Descrizione dell'interfaccia grafica ===
La prima schermata che aptitude ci presenta, dopo che l'abbiamo lanciato da linea di comando, e dopo il caricamento delle informazioni attuali sui pacchetti ("caricamento della cache"), � divisa orizzontalmente in due parti.
 
Nella parte superiore troviamo una zona a sfondo blu con un men� che propone diverse opzioni, e una zona a sfondo nero in cui si vede l'albero dei pacchetti disponibili, classificati in base al loro stato (installati, non installati, ecc.).
 
Per vedere il contenuto di uno dei rami usiamo le frecce "su" e "giu" fino a selezionare la riga corrispondente e premiamo invio. Sotto al ramo in questione ora abbiamo dei sottorami, e premendo invio sui vari sottorami si accede allo stesso modo ai sotto-sottorami e cos� via, fino ad arrivare ai pacchetti.
 
La parte inferiore � invece dedicata alla descrizione del pacchetto attualmente selezionato. Alcuni pacchetti, per esempio k3b, hanno una descrizione molto lunga: premendo TAB e usando le frecce � possibile leggerla tutta.  


Ogni riga che mostra il nome di un pacchetto riporta anche molte informazioni.  
Adesso lanciando da shell <code>xmodmap ~/.xmodmaprc</code> e rilanciando <code>xev</code> dovremmo ottenere:  
Per esempio, riporto lo stato di alcuni pacchetti nel mio sistema (nota: il mio sistema � una sarge, ma ho installato diversi pacchetti da testing e anche alcuni da unstable. Per informazioni sul pinning vedere [[APT_uso_avanzato:_mixare_releases_diverse | APT uso avanzato: mixare releases diverse ]]):
<pre>
<pre>
stato    nome                vers. attuale    vers. aggiornata
KeyPress event, serial 26, synthetic NO, window 0x2400001,
 
root 0x75, subw 0x0, time 267243, (597,651), root:(603,723),
i        aptitude            0.2.15.9-2      0.2.15.9-2
state 0x0, keycode 236 (keysym 0xffca, F13), same_screen YES,
i        amule                2.0.3-3          2.0.3-4
XLookupString gives 0 bytes:
i A      amule-common        2.0.3-3          2.0.3-4
c        hotplug              <nessuna>        0.0.200403
p        apmd                <nessuna>        3.2.2-3
</pre>
</pre>


Possiamo vedere che:
Abbiamo abbinato al tasto un nome (nell'esempio F13).  
*aptitude � installato ed � alla versione pi� recente
*amule � installato ma � aggiornabile alla versione 2.0.3-4
*amule-common � installato per soddisfare una dipendenza (<tt>A</tt>), cio� solo a causa di un pacchetto che dipende da lui (amule). Anch'esso � aggiornabile
*hotplug non � installato, ma quando l'ho cancellato ho scelto di mantenere i file di configurazione (<tt>c</tt>)
*apmd non � installato (<tt>p</tt>), oppure � stato cancellato con l'opzione "purge" (comando: "_"): lo stato risultante � il medesimo
 
Tramite semplici comandi si possono visualizzare molte altre informazioni. I comandi principali sono:
; v: visualizza le versioni disponibili per il pacchetto
; d: visualizza le dipendenze del pacchetto
; r: visualizza i pacchetti che dipendono dal pacchetto selezionato (dipendenze inverse)
; C: scarica da internet e visualizza il changelog del pacchetto
; q: chiude la schermata attuale e passa a quella precedente
 
Per una lista completa vedere la guida online con "?".
 
Ora premiamo invio su di un pacchetto: ci appare la schermata relativa al pacchetto, con la descrizione completa e molte altre informazioni, organizzate ad albero come abbiamo gi� visto. Se ci interessa qualche informazione in pi� su uno dei pacchetti che troviamo in questa schermata, lo selezioniamo e premiamo invio: appaiono le versioni disponibili del pacchetto. Se selezioniamo una delle versioni e premiamo invio ci ritroviamo nella schermata informativa di quel pacchetto. Fate attenzione perch� in questo modo si pu� perdere facilmente l'orientamento.
Torniamo alla vista dell'albero dei pacchetti premendo "q" tante volte quanto serve (se vi sbagliate e lo premete una volta in pi�, aptitude vi chiede se volete uscire dal programma: per il momento dite di no ;-)).
 
=== Riassunto principali comandi ===
 
; <tt>u</tt>  ''(minuscolo)'': aggiorna la lista dei pacchetti.
; <tt>+</tt>: marca il pacchetto selezionato per l'installazione o l'aggiornamento.
; <tt>-</tt> ''(segno meno)'': marca il pacchetto selezionato per la rimozione.
; <tt>_</tt> ''(underscore)'': marca il pacchetto selezionato per la rimozione, eliminado tutti i file di configurazione (''purge'').
; <tt>U</tt>  ''(maiuscolo)'': marca per l'aggiornamento tutti i pacchetti per cui sia disponibile una nuova versione.
; <tt>=</tt> : mette in '''hold''' il pacchetto selezionato. Questo vuol dire che il pacchetto non verr� aggiornato ache se una nuova versione � disponibile e si seleziona di aggiornare i pacchetti (ad esempio con '''<tt>U</tt>''').
; <tt>C</tt> ''(maiuscolo)'': scarica e mostra il changelog del pacchetto selezionato.
 
{{Box|Nota|Dopo aver premuto uno dei comandi '''<tt>+</tt>''', '''<tt>-</tt>''', '''<tt>_</tt>''' o '''<tt>U</tt>''' bisogner� premere due volte '''g''' per eseguire le azioni richieste: dopo la prima volta verr� visualizzata il lista dei pacchetti installati/aggiornati/rimossi/mantenuti, dopo il secondo '''g''' verranno eseguite le operazioni richieste.}}
 
=== Esempio: aggiornare i pacchetti ===
 
Per la descrizione dell'utilizzo di aptitude useremo come esempio una sessione reale, in cui vengono svolte alcune normali operazioni di aggiornamento e amministrazione dei pacchetti.
 
Per prima cosa, nella nostra sessione di amministrazione, aggiorniamo le informazioni sui pacchetti disponibili. Con apt-get avremmo digitato <tt>apt-get update</tt>, mentre in aptitude � sufficiente premere "u".
 
Fate attenzione perch� aptitude non chiede conferma dopo che avete impartito un comando, quindi non digitate nulla senza prima essere sicuri/e di cosa state per fare.
 
Dopo aver fatto l'update potremmo trovare una, due, o tre voci nuove nell'albero dei pacchetti: "Aggiornamenti di sicurezza", "Pacchetti aggiornabili", e "Pacchetti nuovi". Per fare scomparire le prime due � necessario aggiornare tutti i pacchetti contenuti nei rispettivi rami, mentre per far sparire la terza � sufficiente premere "f" (forget).
 
Una buona regola per l'amministratore � quella di far s� che alla fine dell'aggiornamento queste tre voci non siano presenti. Se ci sono dei pacchetti che risultano aggiornabili, ma che non volete aggiornare, probabilmente dovreste bloccarli alla versione desiderata con "=", oppure dovreste leggere la guida gi� citata sul pinning.
 
Ora torniamo ai pacchetti mostrati prima e supponiamo di voler aggiornare amule: lo selezioniamo e premiamo "+". Questo marcher� in verde, cio� per l'installazione, sia amule che amule-common.
 
Poi per� ci viene un'idea migliore, e decidiamo di aggiornare tutti i pacchetti aggiornabili, quindi digitiamo "^" per risalire al ramo superiore della vista, finch� arriviamo a <tt>Pacchetti installati</tt> poi usiamo la freccia in alto e se necessario risaliamo ancora ai rami superiori finch� non arriviamo a <tt>Pacchetti aggiornabili</tt> e qui premiamo "+". Questo marcher� per l'installazione tutti i pacchetti aggiornabili :-D


==Associazione programmi==
Ora potremmo voler far eseguire un'azione al tasto configurato, questa cosa la si può fare in svariati modi: se si ha Gnome dal menu ''Desktop -> Preferenze -> Scorciatoie da tastiera'' associando al tasto un'azione predefinita, e abbiamo finito. Similmente per altri ambienti desktop.


== Risolvere eventuali problemi con delle dipendenze ==
===In ambienti grafici minimali===
Invece, se usiamo un ambiente grafico minimale, ci potrebbe servire un programma che permette di associare a dei tasti o ad una combinazione di tasti una determinata azione. Di questi ultimi ne esistono vari: in questo tutorial useremo <code>xbindkeys</code>, la cui configurazione è molto semplice.


Dopo aver marcato per l'installazione tutti i pacchetti aggiornabili, aptitude ci segnala nella zona blu che c'� un pacchetto "errato" cio� con problemi di dipendenze. Senza battere ciglio premiamo "b" e leggiamo:
Anzitutto bisogna installarlo:  
<pre>
<pre>
iB      udev          0.070    0.074
# apt install xbindkeys
</pre>
</pre>
dove "B" significa "con errori", e sotto si legge:
 
Fatto ciò bisogna modificare il file <code>~/.xbindkeysrc</code>, che è formato da righe del tipo:
<pre>
<pre>
Alcune dipendenze di udev non sono soddisfatte:
"comando o programma da eseguire"
 
tasto o combinazione di tasti associata
  *udev � in conflitto con module-init-tools (< 3.2pre9-1)
</pre>
</pre>
premiamo invio su udev, e ci appare la schermata con tutte le informazioni su udev stesso, comprese le dipendenze: selezioniamo module-init-tools e premiamo invio. Ora ci appaiono tutte le versioni disponibili di module-init-tools, tra cui vediamo che � presente la 3.2pre9-1: non ci resta che selezionarla e marcarla per l'installazione :-D.
per esempio:
 
Quello che � successo � semplicemente che nel mio sistema udev � in testing, e fino alla versione 0.070 funzionava bene con module-init-tools-3.2pre1-2, che invece � in stable. Aggiornando tutto abbiamo marcato per l'installazione il nuovo udev, versione 0.074, che per� dipende da module-init-tools >= 3.2pre9-1. Poich� questo pacchetto � in testing, APT non ha potuto risolvere la dipendenza automaticamente: se un pacchetto � in una distribuzione (e APT � configurato nel modo giusto) non verr� mai passato ad un'altra, a meno che non siamo noi a farlo manualmente.
 
Si prega di notare che questo comportamento non � un bug, ma una cosa voluta: APT ha ricevuto un comando ambiguo e lo segnala generando un errore, proprio come noi ci aspettiamo da lui ;-).
 
In effetti, i reali colpevoli della generazione dell'errore siamo noi. Infatti, per permettere ad APT di gestire correttamente delle dipendenze in testing, dobbiamo semplicemente usare "testing" come distribuzione predefinita.
 
Ricordate che abbiamo lanciato aptitude semplicemente con il comando "aptitude"? e ricorderete anche che il mio sistema � una sarge (stable). Questo equivale a lanciare aptitude con il comando "aptitude -t stable", da cui il nostro problema.
 
Se avessimo usato "aptitude -t testing" aptitude avrebbe risolto correttamente la dipendenza, ma attenzione: in questo modo diciamo ad aptitude che testing � la nostra release predefinita (che non � vero) e lui ci mostrer� come aggiornabili tutti i pacchetti che lo sono in testing, cio� anche tutti quelli in stable (come peraltro ci aspettiamo che faccia ;-)).
 
Il fatto � che aptitude, per quanto avanzato, ancora non legge il pensiero dell'amministratore, e fa solo il suo mestiere: prende tutte le decisioni ovvie autonomamente, e genera un errore quando non sa cosa decidere.
 
 
==Cercare un pacchetto==
 
Ora supponiamo di voler vedere se in debian c'� qualche programma per la gestione dei contenuti, e l'acronimo in inglese � "cms". Per fare questo possiamo usare le funzioni di ricerca di aptitude: per prima cosa digitiamo <tt>'''/'''</tt> per la ricerca della stringa "cms" nei nomi dei pacchetti.
 
Ora per� ci viene in mente che un cms non contiene necessariamente la stringa "cms" nel nome, quindi facciamo, con la stessa stringa, una ricerca nelle descrizioni dei pacchetti: digitiamo ancora <tt>'''/'''</tt> e inseriamo "<tt>~dcms</tt>". Aptitude ci mostra il primo risultato della ricerca, per vedere i risultati successivi premiamo <tt>'''n'''</tt>, e per tornare indietro nella lista <tt>'''\'''</tt>.
 
Per '''L'''imitare la lista dei pacchetti visualizzati possiamo usare il comando <tt>'''l'''</tt>, che si usa allo stesso modo di <tt>'''/'''</tt> ma mostra tutti e soli i pacchetti corrispondenti alla ricerca, organizzati ad albero nel modo che abbiamo gi� visto.
 
=== Ricerca avanzata ===
Aptitude supporta numerose opzioni di dicerca come il precedente <tt>~d</tt> per cercare una stringa nelle descrizioni. La stringa di ricerca pu� inoltre essere una [[REGEXP]] (espressione regolare). Queste opzioni possono essere usate indifferentemente da linea di comando (dopo <code>search</code>) che dall'interfaccia grafica (premendo <tt>'''/'''</tt> oppure <tt>'''l'''</tt>).
 
Di seguito si riporta qualche esempio. fare riferimento alla guida di aptitude citata all'inizio per i dettagli.
 
Volete sapere quali pacchhetti di gnome 2.14 son entrati in etch? Semplice:
 
  $ aptitude search gnome~V2.14
 
Il seguente comando cerca invece i pacchetti che contengono <tt>editor</tt> nella descrizione e che appartongono alla sezione <tt>sound</tt>:
 
  $ aptitude search ~deditor~ssound
 
== Personalizzare la visualizzazione dei pacchetti ==
 
Con aptitude � possibile personalizzare sia i campi visualizzati nella lista dei pacchetti, sia il raggruppamento in sezioni e sotto-sezioni.
 
=== Personalizzare il raggruppamento in sezioni ===
 
Le sezioni nelle quali sono raggruppati i pacchetti quando si avvia Aptitude (e non solo) sono generate dinamicamente da un insieme di regole separate da virgola. E' possibile vedere e modificare le regole che generano la vista attuale premendo ''''G''''.
 
Le regole vengono elaborate in sequenza dalla prima all'ultima
 
Vediamo alcune regole:
 
; <tt>filter(missing)</tt> : non visualizza i pacchetti che esistono solo nelle dipendenze di un altro pacchetto.
 
; <tt>status</tt> : Raggruppa i pacchetti in:
:* Installati
:* Non installati
:* Aggiornamenti della sicurezza
:* Aggiornabili
:* Obsoleti
:* Virtuali
 
; <tt>section[(''mode''[,passthrough])]</tt> : Raggruppa i pacchetti in base alla loro sezione. ''mode'' pu� assumere uno dei seguenti valori:
 
:; <tt>topdir</tt> : Raggruppa un base alla sezione dell'archivio debian (esempio: ''"main", "contrib", "non-free" ...'').
:; <tt>subdir</tt> : Raggruppa in base alla sezione logica (esempio: ''"adim", "base", "devel", "gnome", "kde", ecc ...'')
:; <tt>none</tt> : Raggruppa in base delle sezioni formate dalla somma delle  precedenti (esempio: ''"controb/admin", "contrib/devel", "non-free/admin", "non-free/devel").
:; <tt>task</tt> : Crea un albero dei pacchetti raggruppandoli per task.
 
: Se viene usato il secondo parametro opzionale <tt>passthrough</tt> i pacchetti che per qualche motivo non hanno una sezione vengono passati alla regola successiva senza essere inseriti in categorie.
 
All'avvio di aptitude, premendo ''''G'''' si pu� vedere che vengono usate le seguenti regole:
 
<pre>
<pre>
filter(missing),task,status,section(subdir,passthruough),section(topdir,passthrough)
"firefox"
Control+F13 // si potevano usare anche Shift o Alt
</pre>
</pre>
Modificato il file bisogna lanciare da shell <code>xbindkeys -f ~/.xbindkeysrc</code> e tutto dovrebbe funzionare.


In base a quanto detto la spiegazione di queste regole � semplice: ''visualizza solo i pacchetti reali, crea l'albero dei task, raggruppa i pacchetti per stato, per ogni stato raggruppa in sezioni logiche e all'interno di ogni sezione logica raggruppa in base alla sezione dell'archivio''.
Ora però dobbiamo fare in modo che il mapping dei tasti multimediali e l'associazione del programma tramite <code>xbindkeys</code> avvenga ogni volta che facciamo il login. La procedura esatta varia a seconda dell'ambiente utilizzato.
 
== Links ==
 
* [http://www.luv.asn.au/overheads/aptitude/aptitude-intro.html Aptitude Introduction]: ottima introduzione ad Aptitude (in inglese) che tratta (tra le altre cose) molte pi� opzioni della linea di comando rispetto alla presente guida.


[[Categoria:Apt]]
{{Autori
|Autore = [[Utente:Itbhp|itbhp]] 11:07, 21 Apr 2006 (EDT)
}}
[[Categoria:Tastiere]][[Categoria:Ottimizzazione del sistema]]

Versione attuale delle 19:26, 18 ott 2019

Debian-swirl.png Versioni Compatibili

Debian 8 "jessie"
Debian 9 "stretch"
Debian 10 "buster"

Preparazione: installazione dei programmi

Per configurare i tasti multimediali da Linux servono essenzialmente due programmi: xev e xmodmap. Prima di tutto, quindi, dobbiamo installare i pacchetti con privilegi di amministrazione:

# apt install x11-utils x11-xserver-utils

il primo (x11-utils) conterà il programma xev, il secondo conterrà invece il programma xmodmap.

Configurazione layout tasti

Dopo aver installato questi programmi la prima cosa da fare è scoprire i keycode relativi ai tasti che ci interessano e questo verrà fatto con xev. Apriamo una console e scriviamo xev, a programma lanciato premiamo il tasto che ci interessa configurare e dovremmo avere un output del genere:

KeyRelease event, serial 29, synthetic NO, window 0x1c00001,
root 0x75, subw 0x0, time 1436703, (287,442), root:(292,515),
state 0x0, keycode 236 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 bytes:

da queste righe otteniamo il keycode (nell'esempio 236) e notiamo anche che non gli è associato nessun nome ( ..., NoSymbol). Adesso dobbiamo associare un nome al tasto riferito da quel keycode. Quest'operazione deve essere fatta modificando il file ~/.xmodmaprc che se non esiste va creato.

In questo file vanno inserite righe del tipo:

keycode num = nome

dove num è il keycode ottenuto con xev e la stringa nome dovrà essere del tipo FXX dove al posto di XX dobbiamo inserire un numero maggiore di dodici.

Adesso lanciando da shell xmodmap ~/.xmodmaprc e rilanciando xev dovremmo ottenere:

KeyPress event, serial 26, synthetic NO, window 0x2400001,
root 0x75, subw 0x0, time 267243, (597,651), root:(603,723),
state 0x0, keycode 236 (keysym 0xffca, F13), same_screen YES,
XLookupString gives 0 bytes:

Abbiamo abbinato al tasto un nome (nell'esempio F13).

Associazione programmi

Ora potremmo voler far eseguire un'azione al tasto configurato, questa cosa la si può fare in svariati modi: se si ha Gnome dal menu Desktop -> Preferenze -> Scorciatoie da tastiera associando al tasto un'azione predefinita, e abbiamo finito. Similmente per altri ambienti desktop.

In ambienti grafici minimali

Invece, se usiamo un ambiente grafico minimale, ci potrebbe servire un programma che permette di associare a dei tasti o ad una combinazione di tasti una determinata azione. Di questi ultimi ne esistono vari: in questo tutorial useremo xbindkeys, la cui configurazione è molto semplice.

Anzitutto bisogna installarlo:

# apt install xbindkeys

Fatto ciò bisogna modificare il file ~/.xbindkeysrc, che è formato da righe del tipo:

"comando o programma da eseguire"
tasto o combinazione di tasti associata

per esempio:

"firefox"
Control+F13 // si potevano usare anche Shift o Alt 

Modificato il file bisogna lanciare da shell xbindkeys -f ~/.xbindkeysrc e tutto dovrebbe funzionare.

Ora però dobbiamo fare in modo che il mapping dei tasti multimediali e l'associazione del programma tramite xbindkeys avvenga ogni volta che facciamo il login. La procedura esatta varia a seconda dell'ambiente utilizzato.




Guida scritta da: itbhp 11:07, 21 Apr 2006 (EDT) Swirl-auth20.png Debianized 20%
Estesa da:
Verificata da:

Verificare ed estendere la guida | Cos'è una guida Debianized