La configurazione del window manager fvwm

Alcune indicazioni sul window manager standard di linux


di Carlo Daffara
cdaffara@conecta.interbusiness.it

Introduzione - L'X11
Per gli utenti arrivati dal mondo windows o macintosh il sistema a finestre X11 disponibile con il linux rappresenta spesso una sgradita sorpresa. Spesso la configurazione di default del sistema non e' di esemplare bellezza, e molte delle cose che gli utenti danno per scontate non sono facilmente rintracciabili (ad esempio il drag'n'drop). Questo e' dovuto al fatto che in realta' l'X11 non e' veramente un sistema a finestre, ma un protocollo per la trasmissione di eventi collegati alla grafica (e all'I/O remoto) e non si occupa realmente di cose come le dialog box o come una finestra viene gestita. Quest'ultimo compito viene affidato a un programma noto come window manager, che svolge le due funzioni distinte di manipolare la geometria delle finestre (forma, dimensioni, posizione) e di "decorare" le finestre stesse (bordi, barra del titolo, icone ecc.)

Esistono diversi window manager per linux, anche se i piu' diffusi in assoluto sono i due sistemi distribuiti con la maggior parte dei CD linux, ossia il fvwm e l'olvwm. Presentano tra di loro grandi differenze di estetica e funzionalita', e soprattutto di occupazione di risorse: il fvwm e' stato creato proprio per essere una alternativa "piccola" a window managers (d'ora in poi abbreviato wm) piu' corposi. In questo senso l'olvwm e' un vero campione, visto che e' quasi il doppio come occupazione in memoria del fvwm. Il vantaggio e' che offre agli utenti abituati alle macchine della Sun un ambiente familiare, e dispone di alcuni strumenti di configurazione facili da usare per cambiare i colori dello schermo e le altre amenita'.

L'fvwm ha dalla sua una straordinaria versatilita', che pero' richiede la conoscenza dei files di configurazione propri di questo wm. Cominciamo con il dire che i files principali si trovano nella directory /usr/X11/lib/X11/fvwm e si chiamano system.fvwmrc e system.fvwmfmgr. Se nella directory di avvio e' presente il file .fvwmrc, verra' usato questo anziche' il system.fvwmrc. Il primo contiene la maggior parte dei parametri di configurazione, il secondo contiene i collegamenti tra i tipi di files e le icone da usare sullo schermo.

Cominciamo con alcuni dei parametri meno usati: MWMBorders e MWMButtons danno ai bordi della finestra e ai bottoni che fanno parte della barra del titolo un aspetto identico a quello del Motif (una interfaccia utente molto usata sotto unix). In realta' cambia solo il numero di pixel di cui fvwm "rialza" il bottone per dargli un'apparenza tridimensionale; con MWMBorders e MWMButtons attivi il numero di pixel di rialzo e' minore.

Un altro parametro molto importante e' "Style". Alcuni esempi di utilizzo sono:
Style "Netscape" BorderWidth 0, NoHandles - associa alla finestra di titolo "Netscape" un bordo di dimensione 0 (ossia nessun bordo) e senza gli angoli delle finestre (quelli usati per ridimensionare la finestra stessa).
Style "Netscape" BorderWidth 10, HandleWidth 10 crea un bel bordo spesso, utile se il monitor e' ad alta risoluzione, quando non si riesce a "cascare" con il puntatore del mouse giusto sul bordo...

Un altro particolare interessante e' il fatto che la barra del titolo puo' contenere fino a 10 pulsanti, con i pulsanti di numero dispari allineati a sinistra e gli altri allineati a destra. Un esempio e':

[1][3][5][7][9] --- Titolo --- [0][8][6][4][2]


Il collegamento tra i pulsanti e le azioni e' dato dalle righe:

# Button Context Modif Function
Mouse 1 1 N Function "Top-Left"
Mouse 2 1 N PopUp "Window Ops"
Mouse 3 1 N Maximize


Si possono assegnare ai pulsanti delle azioni (Maximize, Resize, Iconify ecc.) oppure dei menu PopUp (gli stessi che vengono definiti per il menu principale che si trova premendo il primo pulsante del mouse sullo sfondo azzurro).

Una novita' del fvwm e' il fatto che i pulsanti si possono ridisegnare, con la riga:

ButtonStyle : 2 4 50x35@1 65x65@0 35x65@0 50x35@1


si crea ad esempio un pulsante con un triangolino verso il basso, associato al pulsante 2, di dimensione 4 pixel formato tracciando una linea da x=50, y=35 con il colore "ombra" fino a 65x65 (il @0), poi fino a x=35,y=65 e infine una linea con il colore di "highlight" fino a x=50,y=35. (So bene che non si capisce niente - la cosa migliore e' copiare i vari buttonstyle che si trovano in giro e usarli senza chiedersi nulla).

Queste sono solo alcune delle possibilita' di questo wm. Per capire qualcosa di piu', il sistema migliore e' leggersi la pagina man di fvwm, oppure consultare i siti internet legati al fvwm, come: The fvwm homepage
Dove trovate diversi altri riferimenti. Va segnalato una interessante evoluzione del fvwm, chiamata Bowman, che ripropone completamente il look delle macchine Next, basandosi su alcune patch del codice sorgente originale.