guida pratica a fvwm2 v1.0

17
1 Guida pratica alla configurazione di fvwm2 Versione 1.0 – 10/3/2005 © Antonio Frecentese Moltissimi utenti di Linux utilizzano desktop environments completi come Gnome o KDE per il loro lavoro, ma per non appesantire il mio piuttosto vecchio computer preferisco il solo window manager. La mia scelta è caduta su fvwm2: è abbastanza leggero e offre quasi tutto quello di cui ho bisogno (e anche qualcosa che non mi serve). La sua configurazione si può modificare tramite alcuni file di testo: il file .fvwm2rc, nella directory principale dell’utente, ed eventualmente altri file secondari. Per comodità, io preferisco avere tutta la configurazione in un unico file. Non ho messo a disposizione il mio file .fvwm2rc come file separato per il download per una serie di motivi: molte cose sono identiche al file di configurazione generale che si ha installando fvwm2, quindi sarebbe una inutile ripetizione; il vostro sistema è certamente configurato in modo diverso dal mio, e inoltre voi avete delle esigenze e/o dei gusti diversi dai miei; credo che per imparare veramente qualcosa sia meglio studiare le istruzioni poco per volta e da soli, senza basarsi troppo su file di configurazione altrui, strettamente legati a uno specifico ambiente di lavoro e soprattutto a specifiche esigenze e/o gusti. Pertanto ho preferito suddividere una vecchia versione del mio file di configurazione in diverse sezioni per mostrarvi come si può crearne uno adatto alle nostre esigenze. Questa piccola guida alla configurazione di fvwm2 è il risultato dei miei sforzi. Vi mostrerò alcuni comandi da me usati, vi indicherò anche altre opzioni disponibili (ma non tutte). Siete liberissimi di utilizzare il codice da me fornito per adattarlo alle vostre esigenze e alla configurazione del vostro sistema, ma tenete presente che la versione a cui mi riferisco in questa guida è quella in mio possesso, la 2.4.6-2, installata su un sistema Debian “Woody” da pacchetti binari, non da sorgenti: se avete versioni più datate o più recenti, o anche una distribuzione diversa dalla mia, ci potranno quindi essere delle differenze, ma non credo così grandi da rendere inutile la lettura. Per una maggiore chiarezza, troverete le varie istruzioni all’interno di un riquadro e scritte con questo font, con evidenziato in rosso tutto ciò a cui di volta in volta è bene fare attenzione: nuovi comandi, nuovi parametri e così via. Solo due consigli, prima di cominciare: 1. non arrendendetevi mai se qualcosa non va per il verso giusto: se state leggendo questa guida, molto probabilmente avete scelto di configurare fvwm2 a mano, invece di scaricare da Internet un Theme (se non sapete cosa siano, fate conto che siano una sorta di skin di Winamp o XMMS), quindi dovete essere pronti a fare tutto da soli, provando e riprovando, come quando decidete di programmare un software o di creare un sito web da soli; 2. potete leggere questa guida dall’inizio alla fine e usare il codice presentato così com’è, ma in questo modo non imparereste un granché, e anzi correte il rischio di avere errori per programmi o moduli non installati o installati in modi o directory differenti rispetto al mio sistema; vi consiglio invece di seguire quest’ordine: a. leggete la guida poco per volta e senza modificare la vostra configurazione, giusto per avere una vaga idea di quello che potete fare e di come farlo; prendetela un po’ come uno svago, come una lettura per pura curiosità: se alla fine tutto vi sembra così complicato da risultare al di sopra delle vostre forze, niente vi vieta di cambiare window manager o scaricarvi un Theme da Internet; b. visitate il sito di fvwm2 (www.fvwm.org ), in particolare osservate bene le screenshots e i relativi .fvwm2rc, e in base ad essi decidete in modo più o meno definitivo cosa volete/vi serve e come lo volete/vi serve (per esempio: “mi serve una barra delle

Upload: rebecca-webb

Post on 17-Jan-2016

5 views

Category:

Documents


2 download

DESCRIPTION

Guida a Fvwm

TRANSCRIPT

Page 1: Guida Pratica a Fvwm2 v1.0

1

Guida pratica alla configurazione di fvwm2

Versione 1.0 – 10/3/2005 © Antonio Frecentese

Moltissimi utenti di Linux utilizzano desktop environments completi come Gnome o KDE

per il loro lavoro, ma per non appesantire il mio piuttosto vecchio computer preferisco il solo window manager. La mia scelta è caduta su fvwm2: è abbastanza leggero e offre quasi tutto quello di cui ho bisogno (e anche qualcosa che non mi serve).

La sua configurazione si può modificare tramite alcuni file di testo: il file .fvwm2rc, nella directory principale dell’utente, ed eventualmente altri file secondari. Per comodità, io preferisco avere tutta la configurazione in un unico file. Non ho messo a disposizione il mio file .fvwm2rc come file separato per il download per una serie di motivi:

• molte cose sono identiche al file di configurazione generale che si ha installando fvwm2, quindi sarebbe una inutile ripetizione;

• il vostro sistema è certamente configurato in modo diverso dal mio, e inoltre voi avete delle esigenze e/o dei gusti diversi dai miei;

• credo che per imparare veramente qualcosa sia meglio studiare le istruzioni poco per volta e da soli, senza basarsi troppo su file di configurazione altrui, strettamente legati a uno specifico ambiente di lavoro e soprattutto a specifiche esigenze e/o gusti. Pertanto ho preferito suddividere una vecchia versione del mio file di configurazione in

diverse sezioni per mostrarvi come si può crearne uno adatto alle nostre esigenze. Questa piccola guida alla configurazione di fvwm2 è il risultato dei miei sforzi. Vi mostrerò

alcuni comandi da me usati, vi indicherò anche altre opzioni disponibili (ma non tutte). Siete liberissimi di utilizzare il codice da me fornito per adattarlo alle vostre esigenze e alla

configurazione del vostro sistema, ma tenete presente che la versione a cui mi riferisco in questa guida è quella in mio possesso, la 2.4.6-2, installata su un sistema Debian “Woody” da pacchetti binari, non da sorgenti: se avete versioni più datate o più recenti, o anche una distribuzione diversa dalla mia, ci potranno quindi essere delle differenze, ma non credo così grandi da rendere inutile la lettura.

Per una maggiore chiarezza, troverete le varie istruzioni all’interno di un riquadro e scritte con questo font, con evidenziato in rosso tutto ciò a cui di volta in volta è bene fare attenzione: nuovi comandi, nuovi parametri e così via.

Solo due consigli, prima di cominciare: 1. non arrendendetevi mai se qualcosa non va per il verso giusto: se state leggendo questa

guida, molto probabilmente avete scelto di configurare fvwm2 a mano, invece di scaricare da Internet un Theme (se non sapete cosa siano, fate conto che siano una sorta di skin di Winamp o XMMS), quindi dovete essere pronti a fare tutto da soli, provando e riprovando, come quando decidete di programmare un software o di creare un sito web da soli;

2. potete leggere questa guida dall’inizio alla fine e usare il codice presentato così com’è, ma in questo modo non imparereste un granché, e anzi correte il rischio di avere errori per programmi o moduli non installati o installati in modi o directory differenti rispetto al mio sistema; vi consiglio invece di seguire quest’ordine:

a. leggete la guida poco per volta e senza modificare la vostra configurazione, giusto per avere una vaga idea di quello che potete fare e di come farlo; prendetela un po’ come uno svago, come una lettura per pura curiosità: se alla fine tutto vi sembra così complicato da risultare al di sopra delle vostre forze, niente vi vieta di cambiare window manager o scaricarvi un Theme da Internet;

b. visitate il sito di fvwm2 (www.fvwm.org), in particolare osservate bene le screenshots e i relativi .fvwm2rc, e in base ad essi decidete in modo più o meno definitivo cosa volete/vi serve e come lo volete/vi serve (per esempio: “mi serve una barra delle

Page 2: Guida Pratica a Fvwm2 v1.0

2

applicazioni, non mi serve un Pager, voglio che le finestre siano fatte così e non cosà, che abbiano questi bottoni e non altri, e che facciano questo e non quest’altro”, e così via);

c. annotate tutto su un foglio di carta; tenete presente che ogni funzione particolare come il pannello delle applicazioni o le finestre di dialogo si ha mediante dei “moduli” (delle specie di sotto-programmi) che occupano ulteriore memoria, quindi cercate di limitarvi a ciò che vi è veramente necessario: potrete sempre aggiungere in seguito qualcos’altro, o trovare un sistema migliore per ottenere lo stesso risultato;

d. infine riprendete in mano questa guida per dei consigli su come fare le vostre modifiche/aggiunte/rimozioni (e tenete comunque a portata di mano le pagine man di fvwm2 per ulteriori dettagli: sono sempre insostituibili).

E ora buon lavoro! Indice

Inizio dei lavori ....................................................................................................................................3 Commenti.........................................................................................................................................3 I percorsi per le immagini ................................................................................................................3 Alcune impostazioni globali: “pagine” e desktop virtuali ...............................................................3

Lo stile delle finestre............................................................................................................................5 I menu ..................................................................................................................................................8 Collegare i menu e i comandi al mouse e ai tasti...............................................................................11 Alcuni moduli di fvwm2....................................................................................................................14

FvwmPager ....................................................................................................................................14 FvwmForm.....................................................................................................................................14 FvwmButtons .................................................................................................................................15 FvwmTaskBar................................................................................................................................16

Considerazioni finali ..........................................................................................................................17

Page 3: Guida Pratica a Fvwm2 v1.0

3

Inizio dei lavori

Commenti Ogni riga che inizia con il carattere # contiene un commento e viene quindi ignorata da

fvwm2. E’ buona pratica usarli di frequente, come si fa nei sorgenti di un programma in un qualunque linguaggio di programmazione: tra qualche tempo potreste non ricordare più perché avete configurato il programma in quel modo o dove si trova quella dannata opzione che sapete essere quella da modificare per ottenere quello che vi serve ma che non riuscite a trovare in mezzo a una marea di altre... Fateci caso: molti file di configurazione di esempio trovati su Internet (lo stesso sito di fvwm2 ne ha alcuni mandati dai suoi utenti) sono commentati, più o meno bene.

Il mio file di configurazione comincia dunque così: #################################### # File di configurazione per fvwm2 # ####################################

I percorsi per le immagini Trovo molto utili quelle piccole icone che compaiono sulla barra del titolo delle finestre e

permettono di chiudere il programma e compiere altre operazioni. Posso ordinare a fvwm2 di usare tali immagini, ma devo prima indicargli dove può trovarle: ############################ # Percorso per le immagini # ############################ ImagePath /usr/share/icons:/usr/share/pixmaps:/usr/include/X11/pixmaps:/usr/include/X11/bitmaps

Si usa dunque il comando ImagePath seguito da un elenco di percorsi per le directory con le immagini, separati l’uno dall’altro dal carattere :. Tenete presente che il vostro sistema potrebbe essere configurato in modo diverso, o che potreste voler usare delle mini-icone che si trovano in altre cartelle (magari perché le avete create voi o le avete scaricate da Internet).

Alcune impostazioni globali: “pagine” e desktop virtuali Specificheremo ora alcune caratteristiche generali:

#################### # Settaggi globali # ####################

Avrete certamente avuto occasione di vedere lo schermo pieno zeppo di finestre aperte (spesso e volentieri dei pop-up mentre si naviga su Internet, ma non solo) e la barra delle applicazioni altrettanto “affollata”.

Con fvwm2 non è possibile solo ridurre a icona i programmi aperti, ma anche avere dei desktop virtuali, ovvero degli schermi aggiuntivi, adiacenti a quello iniziale, in cui è possibile aprire le finestre di programmi di un certo genere (e avere quindi, per esempio, uno schermo con aperti dei programmi di grafica, un altro con degli editor e così via), oppure spostare quelle di programmi che al momento non vogliamo vedere.1 In realtà non si tratta di veri e propri “desktop virtuali”, bensì di “pagine”. Per evitare confusione, le chiamerò allora con questo nome.

Io voglio avere 9 pagine in tutto, disposte in una griglia di 3x3: DeskTopSize 3x3

Come vedete, si usa il comando DeskTopSize seguito da due numeri separati dal carattere x: il primo numero indica le righe, il secondo le colonne.

Come ci si sposta da una pagina a un’altra? Semplice: basta spostare il puntatore del mouse sul bordo dello schermo e poi soffermarsi lì per un po’, come per spingerlo via, e poco dopo fvwm2 ci mostrerà la pagina successiva.2 Non a caso ho usato la parola “spingere”: è come se fvwm2

1 C’è anche la possibilità di utilizzare più monitor affiancati fisicamente l’uno all’altro: si tratta della funzione Xinerama, supportata da fvwm2 ma di cui non parlerò perché non la conosco, non avendo opportunità né necessità di usarla. 2 Si può anche impostare una scorciatoia da tastiera, ma questo lo vedremo più avanti.

Page 4: Guida Pratica a Fvwm2 v1.0

4

opponesse una certa “resistenza”, vinta la quale si passa alla pagina successiva. Si usano allora le due istruzioni seguenti: EdgeScroll 100 100 EdgeResistance 250 100

La prima istruzione indica la percentuale di “scorrimento”: il primo valore in orizzontale e il secondo in verticale. Se dopo il numero viene aggiunta una p (esempio: 100p), allora il valore non è espresso in percentuale ma in pixel.

La seconda istruzione, invece, indica l’entità di questa “resistenza”. Il primo valore è il numero di millisecondi che il puntatore del mouse deve trascorrere sul bordo dello schermo prima che fvwm2 si sposti su un altra pagina; il secondo valore indica di quanti pixel oltre il bordo dello schermo si deve muovere il bordo di una finestra perché si sposti in un’altra pagina.3

3 In seguito ho modificato la prima riga in EdgeScroll 0 0 affinché non scrollasse “spingendo” col puntatore del mouse ma per potermi spostare manualmente, da tastiera.

Page 5: Guida Pratica a Fvwm2 v1.0

5

Lo stile delle finestre Nell’immagine qui a lato potete vedere la finestra

principale del programma Gimp quando ha il focus, ovvero quando è attiva.

Siamo noi a decidere che aspetto dovranno avere le finestre, sia quelle attive che quelle inattive. Indicheremo quindi a fvwm2 caratteristiche come

• il font per la barra del titolo e il suo colore • il colore della barra del titolo e dei bordi • lo spessore dei bordi, se ci sono • quanti pulsanti ci sono sulla barra del titolo, come sono

fatti e che funzione devono avere e svariate altre cose, quali le modalità di comparsa sullo schermo, come devono essere attivate, e così via. Tutto questo viene deciso con il comando Style. Osservate: ######################## # Stile delle finestre # ######################## Style "*" Font -adobe-helvetica-bold-r-*-*-12-*

Il parametro "*" indica che la proprietà specificata dovrà riferirsi a tutte le finestre gestite da fvwm2. E’ la classica wildcard che si trova in molti linguaggi di programmazione. Con la precedente istruzione abbiamo deciso quale font dovrà essere usato per la barra del titolo delle varie finestre. Per sapere come dovete indicare il font, potete utilizzare xfontsel, che vi mostra un esempio di scritta con il font di vostra scelta e il suo nome completo. Style "*" HilightFore white

Questo è il colore del testo della barra del titolo quando la finestra è attiva. Style "*" HilightBack steelblue

Questo è il colore di fondo della barra del titolo quando la finestra è attiva. Style "*" Color Black/DarkGrey

Per le etichette delle finestre: il primo colore è quello del titolo della finestra, il secondo è quello di fondo.

E’ possibile creare delle barre del titolo dotate di sfumature di colore, ma almeno sotto Linux vorrei evitare questo aspetto simil-Windows. Se volete vedere come si fa, consultate le pagine man. Style "*" BorderWidth 5, HandleWidth 5

Con questi due comandi abbiamo deciso lo spessore in pixel del bordo (BorderWidth) e quello delle “maniglie” (HandleWidth) che si trovano agli angoli delle finestre per poterle ridimensionare. Le maniglie e i bordi avranno comunque un aspetto 3D, come si vede dalla figura (se usate come dimensione 1 o 2, l’effetto 3D sarà meno evidente, ma chiaramente sarà più difficile puntare il mouse sui bordi delle finestre). Notate infine che è stata usata una virgola per separare due istruzioni: non è necessario metterne una sola per riga. Style "*" DecorateTransient

Questa istruzione serve per ordinare a fvwm2 di applicare lo stile che stiamo definendo anche alle finestre “Transient”, ovvero quelle finestre temporanee aperte da un programma durante il suo utilizzo (per chiedere conferme o come splash-screen o altro).4 Style "*" SmartPlacement

Ho trovato questa opzione più di una volta, ma onestamente non ho idea di cosa provochi. La pagina man non mi sembra la spieghi, dice solo che attualmente è supportata ma in futuro sarà rimossa. Se qualcuno sa darmi delucidazioni in merito, me lo faccia sapere. Credo che indichi a fvwm2 di cercare di posizionare una finestra appena aperta in modo da non sovrapporla ad altre già presenti, per quanto possibile. Style "*" ClickToFocus

4 In seguito ho eliminato questa istruzione.

Page 6: Guida Pratica a Fvwm2 v1.0

6

Con questa istruzione diciamo a fvwm2 di rendere attiva una finestra solo quando ci si clicca sopra. Il comportamento di default è invece MouseFocus, ovvero una finestra diventa attiva quando il puntatore del mouse si sposta su di essa e perde il focus se il puntatore non si trova più sopra di essa. C’è anche SloppyFocus, simile a MouseFocus ma con la differenza che una volta dato il focus a una finestra è possibile spostare il puntatore al di fuori di essa senza renderla inattiva.5 Style "*" NoPPosition

Questo comando fa sì che una nuova finestra di programma, al suo apparire, ignori la posizione suggerita dal programma stesso: molti programmi aprono infatti la loro finestra nell’angolo superiore sinistro dello schermo, e se lo facessero tutti, bisognerebbe spostare manualmente ogni nuova finestra aperta... Style "*" IconBox 0 0 50 –1

IconBox definisce una regione dello schermo in cui fvwm2 cerca di mettere l’icona di una finestra, se non si sovrappone a un’altra icona. Con questo comando indichiamo le dimensioni di questa regione.6 Style "Fvwm*" NoTitle

La proprietà NoTitle indica che quella data finestra (o tipo di finestre) non dovrà avere la barra del titolo (di default ce l’hanno). Notate che in questo caso viene assegnata alle finestre il cui nome comincia per “Fvwm”, tipicamente i moduli di fvwm2. Più avanti vedremo meglio cosa sono. Style "Fvwm*" WindowListSkip Style "Fvwm*" CirculateSkip

Onestamente, non ho capito cosa vogliano dire di preciso queste due righe, così le ho lasciate così com’erano. Se qualcuno sa spiegarmelo, ben venga! Fanno comunque parte di un gruppo di istruzioni che riguardano una lista di finestre che fvwm2 deve ignorare quando si ricorre ad alcuni moduli (per esempio: non visualizzare determinate finestre nel modulo informativo sulle finestre attualmente gestite da fvwm2, FvwmWinList). Style "FvwmButtons" NoHandles, Sticky, StaysOnTop, NeverFocus Style "FvwmForm" NoHandles Style "FvwmTaskBar" Sticky, StaysOnTop, NeverFocus, WindowSkipList, CirculateSkip

Settiamo poi alcune proprietà per i soli moduli chiamati FvwmButtons, FvwmForm e FvwmTaskBar (notate infatti che compare il nome completo e non l’asterisco), che vedremo meglio più avanti. Notare le opzioni per non far comparire le “maniglie” agli angoli (NoHandles), per renderle i moduli visibili anche se si cambia desktop virtuale (Sticky), per far sì che siano sempre in primo piano (StaysOnTop) e perché non abbiano mai il focus (NeverFocus).7 TitleStyle -- Flat

Questa proprietà indica che la barra del titolo delle finestre dovrà avere un aspetto “piatto” (Flat), quindi quando vi si cliccherà sopra non si avrà l’effetto grafico tipico di un pulsante premuto. I due caratteri -- servono solo per introdurre un flag, un’opzione per il comando.

Vediamo ora lo stile dei pulsanti della barra del titolo delle finestre: ecco a voi il comando ButtonStyle: ButtonStyle 1 MiniIcon -- Flat ButtonStyle 2 Pixmap mini.cross.xpm -- Flat ButtonStyle 4 Pixmap mini.lower2.xpm -- Flat

Compare di nuovo l’opzione Flat, già vista per la barra del titolo: nemmeno i bottoni avranno un effetto 3D quando saranno premuti.

Io voglio che le fineste abbiano tre pulsanti, uno a sinistra e due a destra. Il primo di questi pulsanti sarà identificato da un numero dispari, gli altri da dei numeri pari. Infatti, un numero dispari indica a fvwm2 che il pulsante si dovrà trovare sul lato sinistro della barra del titolo (numero

5 Detto tra noi, è stata una delle prime cose che ho modificato, dato che come comportamenti li trovo piuttosto scomodi entrambi. Pare che abbiano un discreto seguito, comunque, in particolare SloppyFocus. 6 Io comunque ho lasciato questa riga così com’era nel file di configurazione generale. 7 Per esempio, il modulo FvwmButtons può essere usato per creare una finestra con dei pulsanti per lanciare delle applicazioni: se non venisse settato NeverFocus, la finestra di questo modulo resterebbe attiva anche dopo aver lanciato un programma tramite di essa, e bisognerebbe prima cliccarvi sopra una volta per selezionarla e poi ancora per lanciare il programma desiderato.

Page 7: Guida Pratica a Fvwm2 v1.0

7

più piccolo = bottone più a sinistra), mentre un numero pari indica che si dovrà trovare sul lato destro (numero più piccolo = bottone più a destra).

Per i bottoni che si trovano sul lato destro della barra del titolo voglio un’immagine ben precisa (infatti ho fornito il nome del file), pertanto queste immagini saranno le stesse per ogni finestra. Per il bottone di sinistra, invece, compare l’opzione MiniIcon: ciò significa che verrà usata un’immagine che dipende dal programma aperto. Ecco come: ############## # Mini-icone # ############## Style "*" MiniIcon mini.x.xpm Style "emacs" MiniIcon emacs.mini.xpm Style "gv" MiniIcon mini-gv.xpm Style "Gimp" MiniIcon wilber.mini.xpm Style "kterm" MiniIcon mini.term2.xpm Style "mutt" MiniIcon mutt.mini.xpm Style "xjdic" MiniIcon mini.books.xpm Style "XMMS" NoTitle, MiniIcon xmms_mini.xpm Style "xterm" MiniIcon mini.xterm.xpm

Prima viene specificata la mini-icona generale, indicata da "*", usata per tutti i programmi. Dopodiché viene data una mini-icona “personalizzata” per alcune applicazioni.

Questa mini-icona viene usata per la barra del titolo ma anche in moduli come FvwmTaskBar (che vedremo più avanti).

Notate inoltre che per XMMS ho specificato non solo la mini-icona, ma anche la proprietà NoTitle, affinché la sua finestra non abbia la barra del titolo: infatti XMMS ne ha già una sua, perciò quella fornita da fvwm2 non è necessaria (e anzi è anti-estetica).

Abbiamo così deciso quanti bottoni ci saranno e il loro aspetto, ma non la loro funzione. Io voglio che uno dei pulsanti chiuda la finestra, uno la riduca a icona e uno faccia comparire un menu di operazioni relative alla finestra stessa. Prima di definire l’uso dei pulsanti, allora, vediamo i menu.

Page 8: Guida Pratica a Fvwm2 v1.0

8

I menu Il comando per decidere l’aspetto e il comportamento dei menu è MenuStyle:

################ # Sezione menu # ################ MenuStyle "*" Foreground black, Background grey, Greyed white, \ Font -adobe-helvetica-bold-r-*-*-12-*, PopupOffset 0 100, TrianglesSolid, HilightBack Blue

Anche qui, "*" indica che le proprietà valgono per ogni menu che andremo poi a definire. I menu avranno la scritta (Foreground) in nero (black) su uno sfondo (Background) grigio (grey), oppure una scritta bianca (white) nel caso il menu non sia accessibile (Greyed). Quando il mouse passerà sopra un’opzione, quest’ultima sarà evidenziata con uno sfondo blue (HilightBack blue), e ogni sottomenu sarà indicato da un triangolino pieno senza effetto 3D (TrianglesSolid). Fate anche attenzione a quel carattere \ posto a fine riga: esso indica a fvwm2 che il comando non è ancora terminato ma prosegue nella riga successiva.

PopupOffset serve per indicare la posizione dei sotto-menu rispetto al menu da cui hanno origine. Se entrambi i due parametri sono 0, il bordo sinistro del sotto-menu va sopra il bordo sinistro del menu principale. Se invece il primo numero è diverso da 0, allora il sotto-menu sarà spostato verso destra di quel numero di pixel (o verso sinistra se il valore è negativo). Se il secondo valore è diverso da 0, esso indica di che percentuale della larghezza del menu principale il sotto-menu sarà spostato a destra (o a sinistra) rispetto al menu principale stesso. Devo dire che è piuttosto complicato da spiegare (e da capire: questa è la traduzione dalla pagina man...): fate degli esperimenti, è meglio!

Nell’immagine qui sopra potete vedere il risultato dei comandi precedenti sul menu principale e su un suo sottomenu. Notate come molte caratteristiche appena spiegate valgano per entrambi, e come il menu dei giochi abbia in alto la dicitura “Giochi”, mentre il menu principale non ce l’ha. Qui sta la differenza tra il nome e il titolo del menu: il secondo è del tutto facoltativo, mentre il primo è necessario, in quanto è il parametro che bisogna fornire a fvwm2 affinché apra quel menu piuttosto che un altro.

Bene, cominciamo col menu principale. Innanzitutto lo “distruggiamo”, per assicurarci che le sue opzioni vengano definite qui per la prima volta. Basta fornire come parametro del comando DestroyMenu il nome del menu. Dopodiché ri-creiamo il menu ex-novo, fornendo il nome del menu come parametro del comando AddToMenu:8 DestroyMenu Hal2003 AddToMenu Hal2003

Ora vediamo le opzioni che dovranno comparire nel menu. Non c’è un comando per indicare a fvwm2 la fine della definizione di un menu, quindi le sue

opzioni andranno “aggiunte” alla lista, una dopo l’altra: ecco perché all’inizio di ogni riga successiva si trova il carattere +: + "%mini.xterm.xpm%XTerm" Exec exec xterm

L’espressione contenuta tra i due simboli % indica il nome del file della mini-icona che dovrà comparire in quel dato punto del menu.9 Di seguito troviamo la dicitura che deve comparire nel 8 Il fatto di “distruggere” la definizione di un menu per poi ricrearla non è sciocco o ridondante come potrebbe sembrare a prima vista, anzi, è utile soprattutto nel caso in cui si usino anche file di configurazione secondari. Si tratta solo di stare attenti affinché non si abbiano due differenti definizioni di menu con lo stesso nome. 9 Volendo, è possibile mettere la mini-icona dopo il nome del programma (ad esempio: + "XTerm%mini.xterm.xpm%"), o anche metterne una prima e una dopo. Si possono anche inserire delle immagini sul lato sinistro del mene (le “side-pics”), come nel menu di Windows, ma io preferisco evitarle.

Page 9: Guida Pratica a Fvwm2 v1.0

9

menu (“XTerm”) e infine il comando da eseguire: Exec exec xterm. Questo equivale ad aprire una finestra di terminale e lanciare xterm &, ma qui non è consigliabile farlo: meglio inserire un altro exec prima del comando da eseguire. Tralasciandolo, la shell invocata da fvwm2 per eseguire il comando resterebbe attiva fino alla fine del comando stesso. Alcune shell sono sufficientemente intelligenti da evitare questo comportamento anche senza exec, ma per sicurezza è meglio inserirlo.

Le righe successive seguono lo stesso schema: + "%mini.term2.xpm%KTerm" Exec exec kterm + "" Nop

Qui notiamo una riga un po’ diversa, ma il significato si può intuire facilmente: non compare nessuna dicitura (infatti le virgolette "" racchiudono una stringa vuota, come viene definita nei linguaggi di programmazione), e al posto del comando Exec c’è Nop, ovvero “nessuna operazione”. Una riga simile in un menu indica che in quel punto comparirà un separatore: lo potete verificare osservando la figura di prima.

Vediamo ora le righe successive: + "OpenOffice" Exec exec openoffice + "%emacs.mini.xpm%XEmacs" Exec exec xemacs -geometry 80x39+170+0 + "%mini.term2.xpm%jVim" Exec exec kterm -e jvim + "%mini.books.xpm%xjdic" Exec exec kterm -fg green -bg black -geometry 67x12+524+454 -e xjdic + "XDVI (jp)" Exec exec xdvi-ja -geometry 792x710 + "" Nop + "Lynx (jp)" Exec exec kterm -e lynx + "%mutt.mini.xpm%Mutt (jp)" Exec exec kterm -e mutt + "" Nop + "%xmms_mini.xpm%XMMS" Exec exec xmms + "" Nop + "%wilber.mini.xpm%The GIMP" Exec exec gimp + "%mini.colors.xpm%xbmbrowser" Exec exec xbmbrowser -label + "" Nop + "%mini.happy.xpm%Giochi" Popup Giochi + "" Nop + "" Nop + "%mini.exit.xpm%Esci da Fvwm" Popup Quit-Verify

E’ inutile che vi dica che ho installato anche altri programmi, non solo questi. Quello che mi preme farvi notare con queste righe è che si possono fornire dei parametri ai programmi da lanciare (ad esempio per eseguire jvim in una finestra kterm).

Incontriamo inoltre il nuovo comando Popup, che serve a richiamare un sottomenu il cui nome (non il titolo) compare subito dopo. Io qui ne propongo solo due, “Giochi” e “Quit-Verify”. Ecco le loro definizioni: # Menu Giochi ############# DestroyMenu Giochi AddToMenu Giochi "Giochi" Title + "XBubble" Exec exec xbubble + "XPuyoPuyo" Exec exec xpuyopuyo # Menu Quit-Verify ################## DestroyMenu Quit-Verify AddToMenu Quit-Verify "Vuoi davvero uscire?" Title + "%no.xpm%No, resetta FVWM2" Restart + "" Nop + "%yes.xpm%Esci!!" Quit

Anche i sottomenu, come vedete, si definiscono nello stesso modo. A differenza del menu principale, però, questi sottomenu hanno un titolo racchiuso tra virgolette, “Giochi” nel primo caso e “Vuoi davvero uscire?” nel secondo: essi saranno visualizzati all’apertura dei sottomenu. Notate i nuovi comandi Restart (per far ripartire fvwm2) e Quit (per uscire da fvwm2 e da X).

Prima abbiamo deciso che il bottone di sinistra della barra del titolo deve far comparire, se premuto, un menu con le operazioni che è possibile compiere sulla finestra. Ecco allora il menu “Window-Ops”:10 DestroyMenu Window-Ops AddToMenu Window-Ops "Alt-F1: Window Ops" Title + "Alt-F2: Main Menu" Popup Hal2003

10 Menu che ho mantenuto identico allo script di esempio fornito da fvwm2, a parte il fatto che questo richiama il menu “Hal2003” come menu principale.

Page 10: Guida Pratica a Fvwm2 v1.0

10

+ "Alt-F3: Lower" Lower + "Alt-F4: Window List" WindowList + "Alt-F5: Previous" Prev + "Alt-F6: Next" Next + "Alt-F7: Move" Move + "Alt-F8: Resize" Resize + "Alt-F9: (De)Iconify" Iconify + "Alt-F10: (Un)Maximize to screen" Maximize 100 100 + "Alt-F11: Raise" Raise + "Alt-F12: (Un)Stick" Stick + " (Un)Maximize vertical" Maximize 0 100 + " (Un)Maximize horizontal" Maximize 100 0 + " (Un)Shade" WindowShade + "" Nop + " ScrollBar" Module FvwmScroll 2 2 + "" Nop + " Destroy" Destroy + " Close" Close

I comandi in rosso sono tutti comandi interni di fvwm2, dai nomi autoesplicativi. Prestate attenzione solo al comando Module, che naturalmente richiama il modulo specificato (in questo caso FvwmScroll),11 a Stick,12 a WindowList13 e a WindowShade.14

Ora che i menu sono definiti, è giunta l’ora di collegarli ai tasti del mouse e ai bottoni della barra del titolo delle finestre.

11 Serve a dotare ogni finestra di barre di scorrimento. 12 Per fare in modo che quella finestra resti “appiccicata” (Sticky) in qualunque pagina ci si sposti, o per tornare al suo normale comportamento. 13 Serve a far aprire un menu pop-up in cui compaiono il titolo, le dimensioni e la posizione delle finestre attualmente visibili. E’ possibile configurare l’aspetto di questo menu, ma a me andava bene così com’è e quindi non l’ho modificato. Per maggiori informazioni, consultate le pagine man. 14 Per far sì che la finestra venga “oscurata”, mostrando solo la barra del titolo (oppure ritorni allo stato normale).

Page 11: Guida Pratica a Fvwm2 v1.0

11

Collegare i menu e i comandi al mouse e ai tasti Io voglio fare in modo che sia possibile svolgere alcune funzioni premendo i tasti del mouse

non solo su una finestra ma anche sullo sfondo. In questo caso, per l’esattezza, se premo il tasto destro deve apparire un elenco delle finestre attualmente gestite (casomai non riuscissi per un motivo o per un altro a trovarne o a chiuderne una), se premo il sinistro deve apparire il menu principale, da cui scegliere quale programma lanciare, e se premo tutti e due i tasti insieme (per chi ce l’ha: il tasto centrale del mouse) deve apparire un menu con le operazioni principali che è possibile compiere sulle finestre. Ecco come dovrò procedere: # # Section: Mouse bindings # Mouse 1 R A Menu Hal2003 Mouse 2 R A Menu Window-Ops Mouse 3 R A WindowList

Il comando Mouse serve per specificare le operazioni da compiere quando viene premuto un pulsante del mouse. La sintassi completa del comando è:

Mouse pulsante contesto modificatore funzione Al posto di pulsante va indicato quale tasto del mouse associare a quella data istruzione: 1

è il tasto sinistro, 2 il tasto centrale (se si ha un mouse con solo due tasti, allora indica la pressione simultanea dei due) e 3 il tasto destro. Se il numero è 0, allora un qualunque tasto del mouse produrrà quell’effetto.

Contesto indica il punto in cui deve essere premuto il tasto del mouse per produrre l’effetto voluto: la R indica la “Root Window”, ovvero lo sfondo, ma è possibile specificare anche altre opzioni, per esempio W (“Window”, quindi una finestra), T per la barra del titolo di una finestra, F per il contorno e A per un punto qualunque esclusi i bottoni della barra del titolo. Un numero tra 0 e 9 indica invece un pulsante della barra del titolo, come vedremo dopo.

Modificatore indica il tasto che deve essere premuto assieme al tasto del mouse scelto per poter eseguire quel comando: per esempio, N indica “nessun modificatore”, C sta per “Control”, S per “Shift”, M per “Meta” e A per uno qualunque. Se specifico CS, vorrà quindi dire che sia il tasto Control che il tasto Shift devono essere premuti.

La differenza tra il commando Menu e il commando Popup visto prima è che Menu fa sì che il menu sia “Sticky”, ovvero che resti visualizzato anche se il pulsante del mouse non viene tenuto premuto, mentre Popup fa sì che il menu venga mostrato solo temporaneamente, finché il puntatore del mouse si trova su di esso. E’ per questo che ora abbiamo dato a fvwm2 il comando Menu per far comparire il menu.

Adesso potrete capire anche le istruzioni seguenti, che riguardano la pressione di un tasto del mouse su determinati punti di una finestra (ho mantenuto quelle del file di esempio): # # Moving and resizing, depending on which part of the window # you grab (T=title bar, S=side/top/bottom, F=corner). # Mouse 0 T A move-and-raise-or-raiselower #This caused problems with emacs selection (Bug #17668). #Mouse 0 W M move-and-raise-or-raiselower Mouse 0 W M - Mouse 0 F A resize-or-raiselower Mouse 0 S A resize-or-raiselower # # Move or de-iconify an icon. # Mouse 0 I A move-or-winmenu-or-deiconify

Ora passiamo ai bottoni della barra del titolo delle finestre. Io voglio che il bottone più a destra serva a chiudere la finestra, quello vicino a ridurla a icona e il bottone di sinistra a far comparire il menu delle operazioni che si possono compiere sulla finestra. Ecco come devo procedere:

Page 12: Guida Pratica a Fvwm2 v1.0

12

# # Buttons on the title bar (1,3,5,7,9 are on the left, 0,8,6,4,2 on # the right side of the title bar). Note that the bindings here # make more sense if the ButtonStyle's defined earlier are retained. # Mouse 0 1 A Popup Window-Ops Mouse 0 2 A Close Mouse 0 4 A Iconify

Ho lasciato le indicazioni sull’ordine e la disposizione dei bottoni che comparivano nel file di configurazione generale: sono utilissime come promemoria.

Come avevamo anticipato, è possibile configurare anche delle operazioni eseguibili da tastiera. Lo si fa con il comando Key, che ha la stessa sintassi di Mouse (anche qui ho mantenuto i comandi originali, a parte il nome del mio menu principale, Hal2003): # # Section: Key bindings # Key Tab A M Next [CurrentPage !iconic] focus-and-raise Key Tab A MS Prev [CurrentPage !iconic] focus-and-raise Key Tab A CM Next [CurrentPage] deiconify-and-focus Key Tab A CMS Prev [CurrentPage] deiconify-and-focus Key Left A M Scroll -100 +0 Key Up A M Scroll +0 -100 Key Right A M Scroll +100 +0 Key Down A M Scroll +0 +100 Key F1 A M Popup Window-Ops Key F2 A M Popup Hal2003 Key F3 A M Lower Key F4 A M WindowList Key F5 A M Prev Key F6 A M Next Key F7 A M Move Key F8 A M Resize Key F9 A M Iconify Key F10 A M Maximize 100 100 Key F11 A M Raise Key F12 A M Stick

Vediamo ora alcune funzioni di fvwm2. Non ve le spiegherò in dettaglio, anche perché mi andavano bene com’erano e quindi non ho cambiato nulla nel file di configurazione generale: # # Section: Functions # # The following functions operate on a window or menu. The # names are systematic: foo means "do foo"; foo-or-bar means # "do foo, if mouse is moving, bar if click"; and foo-or-bar-or-baz # adds "baz, if double-clicked". # DestroyFunc move-or-winmenu-or-deiconify AddToFunc move-or-winmenu-or-deiconify + "M" Move + "C" Popup Window-Ops + "D" Iconify DestroyFunc deiconify-and-focus AddToFunc deiconify-and-focus + "I" Iconify -1 + "I" Focus DestroyFunc deiconify-and-raise AddToFunc deiconify-and-raise + "I" Iconify -1 + "I" Raise DestroyFunc focus-and-raise AddToFunc focus-and-raise + "I" Focus + "I" Raise DestroyFunc move-or-raiselower AddToFunc move-or-raiselower + "M" Move + "C" RaiseLower DestroyFunc move-and-raise-or-raiselower

Page 13: Guida Pratica a Fvwm2 v1.0

13

AddToFunc move-and-raise-or-raiselower + "M" Move + "M" Raise + "C" RaiseLower DestroyFunc move-or-raiselower-or-maximize-vertical AddToFunc move-or-raiselower-or-maximize-vertical + "M" Move + "C" RaiseLower + "D" Maximize 0 100 DestroyFunc resize-or-raiselower AddToFunc resize-or-raiselower + "M" Resize + "C" RaiseLower

Non dovrebbero esserci problemi, giusto? Le stesse righe di commento mostrano il funzionamento di queste funzioni. Credo siano utili così, senza modifiche, per la maggior parte degli utenti.

Page 14: Guida Pratica a Fvwm2 v1.0

14

Alcuni moduli di fvwm2 I moduli sono una specie di sotto-programmi che aggiungono utili funzioni e ci semplificano

la vita (o semplicemente abbelliscono il nostro desktop!). Ce ne sono diversi, ma io ne uso pochissimi. Qui vedremo il Pager, il Form, la TaskBar e un modulo che consente di creare una barra dei bottoni per lanciare i nostri programmi.

FvwmPager Sostanzialmente si tratta una specie di “monitor” per avere

sott’occhio le pagine di fvwm2, con tutte le finestre aperte in ognuna di esse. Osservando l’immagine qui a lato (un po’ ingrandita rispetto alle dimensioni reali) potete vedere che:

• come deciso all’inizio, le pagine sono 9 e sono disposte in una griglia di 3x3;

• al momento stiamo guardando la prima, cioè quella in alto a sinistra (ha un colore di fondo diverso dalle altre);

• vi sono delle finestre aperte, anche se si riesce a distinguere chiaramente solo quella di kterm; lì a fianco si vede la finestra attiva in questo momento, distinguibile per il diverso colore di fondo e del titolo;

• in basso a destra compare la finestra del Pager stesso. ####################### # Configura FvwmPager # ####################### Module FvwmPager

Innanzitutto, notate che l’istruzione Module non è associata a un pulsante del mouse o a un’opzione di un menu o altro, quindi il Pager partirà automaticamente all’apertura di fvwm2.

Ora definiamo alcune sue caratteristiche. Se siete riusciti ad arrivare fin qui senza ammattire, dovreste riuscire a capire le istruzioni senza grosse difficoltà. Style "FvwmPager" Sticky, NoTitle, StaysOnTop, NoHandles, BorderWidth 4 *FvwmPagerBack SlateGrey *FvwmPagerFore Black *FvwmPagerFont none *FvwmPagerHilight SlateBlue4 *FvwmPagerGeometry 120x80-0-30 *FvwmPagerSmallFont -*-times-medium-r-*-*-*-80-*-*-*-*-*-* *FvwmPagerDeskTopScale 32

Notate la proprietà StaysOnTop per far sì che il Pager sia sempre in primo piano, e che non viene specificata la disposizione delle pagine: fvwm2 usa quella definita in precedenza tramite DeskTopSize. Qui viene decisa solo la dimensione in pixel del Pager.

DeskTopScale 32 indica che gli oggetti mostrati nel Pager avranno 1/32 delle dimensioni corrette. Viene usata quando non vengono date le dimensioni con Geometry.

FvwmForm Questo modulo fa comparire una finestra del tutto

particolare per chiedere informazioni all’utente. Io uso questo modulo per verificare se l’utente vuole veramente uscire da fvwm2 oppure no, un po’ come avviene nel mondo Windows. ##################### # Modulo per uscire # ##################### DestroyModuleConfig Form-Quit-Verify: * *Form-Quit-Verify: GrabServer *Form-Quit-Verify: WarpPointer *Form-Quit-Verify: Command Beep *Form-Quit-Verify: Line Center *Form-Quit-Verify: Text "Vuoi davvero uscire?" *Form-Quit-Verify: Line expand *Form-Quit-Verify: Button quit "Certo!" ^M

Page 15: Guida Pratica a Fvwm2 v1.0

15

*Form-Quit-Verify: Command Quit *Form-Quit-Verify: Button restart "Resetta" ^R *Form-Quit-Verify: Command Restart *Form-Quit-Verify: Button quit "NO!" ^[ *Form-Quit-Verify: Command Nop

Io uso questo modulo solo per questo scopo, ma è possibile sfruttarlo anche per dell’altro. Per maggiori informazioni e qualche altro esempio, vi rimando alle pagine man. In ogni caso, tenete presente che questo modulo non opera alcun controllo di validità sui dati eventualmente immessi dall’utente.

Fate attenzione a GrabServer e a WarpPointer: il primo comando serve affinché fvwm2 prenda il controllo del puntatore del mouse all’apertura del form, mentre il secondo porta automaticamente il puntatore all’interno della finestra del form; sono due comandi molto utili proprio nel caso di form con lo scopo di verificare l’intenzione di uscire da fvwm2 e da X.

Notate inoltre che qui sto solo decidendo come dovrà essere formato il modulo, ma devo poi decidere come richiamarlo. Io ho scelto di farlo apparire non quando scelgo di uscire scegliendo l’apposita opzione dal menu definito prima (devo già “passare” per un sottomenu, ricordate? Questo semplice fatto mi “obbliga” a sapere cosa faccio), ma quando clicco su un apposito pulsante in una sorta di barra delle applicazioni, in modo da evitare l’eventualità di aver cliccato su quel bottone per puro caso. “Ma quale barra delle applicazioni?”, potreste chiedermi. Quella che creeremo ora con un altro modulo, FvwmButtons.

FvwmButtons Ho utilizzato questo modulo per costruire una sorta di pannello,

posizionato sul lato destro dello schermo, da cui lanciare le applicazioni che uso più di frequente (se me ne servono delle altre, uso il menu). Lo potete ammirare nell’immagine qui a lato.15

In realtà i pulsanti li ho creati più piccoli, qui li ho fatti apposta così grandi e “sproporzionati” rispetto al testo in essi contenuto per mostrarvi meglio il funzionamento di questo modulo. ############################ # Configura barra laterale # ############################ Module FvwmButtons -g 120x500-0+0

Con questa riga si indica a fvwm2 di lanciare il modulo FvwmButtons con le dimensioni specificate. Le dimensioni si riferiscono alla finestra di FvwmButtons, quindi l’altezza dei vari bottoni inseriti dall’utente varia a seconda del loro numero: ecco perché i bottoni che vedete nell’immagine sono così grandi. Si può comunque specificare le dimensioni dei vari pulsanti con ButtonGeometry (vedere come nelle pagine man). *FvwmButtons: Columns 1 *FvwmButtons: Back Grey

Una volta indicato l’orientamento e la forma di FvwmButtons (una singola colonna) e il colore di fondo (grigio), possiamo cominciare a definire i vari pulsanti che dovranno comparire al suo interno: *FvwmButtons: (Title (Side) "XTerm", Left, Icon mini.xterm.xpm, \ Action 'Exec exec xterm')

La riga precedente indica a fvwm2 di creare un pulsante che reca il testo “Xterm”, e tale dicitura (Title) non deve comparire, come di default, sotto all’icona bensì di lato (Side), per l’esattezza a sinistra (Left); l’icona è il file mini.xterm.xpm, e quando il bottone viene premuto deve eseguire il comando indicato come parametro di Action (il comando è scritto secondo le specifiche di fvwm2).

15 Detto tra noi, in seguito ho eliminato questo pannello perché può occupare molto spazio. Lo riporto comunque a titolo di esempio.

Page 16: Guida Pratica a Fvwm2 v1.0

16

Le righe successive seguono lo stesso schema. Notate che è possibile passare dei parametri ai programmi lanciati e anche lanciare un modulo di fvwm2 (nell’ultima riga, per eseguire il modulo FvwmForm spiegato prima). *FvwmButtons: (Title (Side) "OpenOffice", Left, Action 'Exec exec openoffice') *FvwmButtons: (Title (Side) "jVim", Left, Action 'Exec exec kterm -e jvim') *FvwmButtons: (Title (Side) "xjdic", Left, \ Action 'Exec exec kterm -fg green -bg black -geometry 67x12 -e xjdic') *FvwmButtons: (Title (Side) "Mutt (JP)", Left, Icon mutt.mini.xpm, \ Action 'Exec exec kterm -e mutt') *FvwmButtons: (Title (Side) "Lynx (JP)", Left, Action 'Exec exec kterm -e lynx') *FvwmButtons: (Title (Side) "The GIMP", Left, Icon wilber.mini.xpm, \ Action 'Exec exec gimp') *FvwmButtons: (Title (Side) "XMMS", Left, Icon xmms_mini.xpm, \ Action 'Exec exec xmms') *FvwmButtons: (Title (Side) "XBubble", Left, Action 'Exec exec xbubble') *FvwmButtons: (Title (Side) "XPuyoPuyo", Left, Action 'Exec exec xpuyopuyo') *FvwmButtons: (Title (Side) "Esci da FVWM2", Left, Icon mini.exit.xpm, \ Action 'Module FvwmForm Form-Quit-Verify')

FvwmTaskBar Si tratta di una barra delle applicazioni analoga a quella di Windows. Potete vederne

un’immagine qui sotto:

A sinistra compare un pulsante per il menu di avvio, mentre a destra si possono vedere l’ora e un’immagine che indica la presenza o l’assenza di messaggi di posta.

E’ possibile creare una barra con più di una riga, e volendo è possibile ampliarla (fino a 8 righe) o ridurla manualmente durante la sessione di lavoro, ma io preferisco avere una sola riga (opzione di default, quindi non occorre specificarla). ##################### # Configura TaskBar # ##################### Module FvwmTaskBar *FvwmTaskBarGeometry +0-0 *FvwmTaskBarBack SlateGrey *FvwmTaskBarUseSkipList *FvwmTaskBarScreenOnly *FvwmTaskBarShowTips

L’istruzione ScreenOnly fa sì che nella TaskBar vengano visualizzate solo le finestre dello schermo Xinerama in cui ci si trova al momento (cambiando schermo, le finestre visualizzate cambiano di conseguenza; in effetti, qui io avrei potuto anche usare PageOnly), mentre ShowTips attiva le finestre di tooltip quando il puntatore si trova su una finestra presente nella TaskBar. *FvwmTaskBarStartName Hal 2003 *FvwmTaskBarStartMenu Hal2003 *FvwmTaskBarStartIcon mini.penguin.xpm

La prima di queste righe specifica il testo che deve apparire sul pulsante per aprire il menu di avvio (senza virgolette, come vedete), la seconda il nome del menu che deve essere aperto cliccando su tale pulsante e la terza il file con l’icona da visualizzare nel pulsante.

Ecco fatto: per avere una barra delle applicazioni non è necessario altro. Facile, no? Ovviamente ci sono altre cose da configurare, volendo: il comando da eseguire quando si clicca due volte sull’icona della posta (per aprire un altro programma invece di mail, o per specificare un altro percorso per la posta, per esempio), il formato dell’ora, e altre cosette, ma a me va bene anche così. Per ulteriori informazioni, vi rimando alle pagine man. Ricordate che, oltre alle opzioni appena viste, ce ne erano altre all’inizio del file di configurazione, come il fatto che non abbia la barra del titolo.

Page 17: Guida Pratica a Fvwm2 v1.0

17

Considerazioni finali Come avete visto, fvwm2 è un window manager con un gran numero di funzioni utili e

configurabili senza troppe difficoltà, fatta eccezione per alcuni moduli. Non ho descritto tutte le opzioni disponibili, sia perché io stesso non le conosco tutte (ne uso

solo alcune e non ho grandi pretese), sia perché la versione in mio possesso è ormai un po’ datata (nell’ultima disponibile sono state aggiunte molte caratteristiche interessanti), sia perché le opzioni di configurazione sono così tante che non basterebbe un enciclopedia per coprirle tutte in dettaglio, sia infine perché mi sembra giusto che ognuno abbia degli elementi di base ma anche voglia di smanettare un po’ da solo per scoprire cosa fare e come farlo.

Ho cercato comunque di essere il più chiaro possibile, e se sono riuscito a farvi capire come potete sfruttare queste funzioni per personalizzare il vostro desktop e migliorare il vostro lavoro, allora avrò centrato il bersaglio.

Naturalmente, ogni messaggio, critica o apprezzamento è sempre bene accetto. Buon lavoro!