4 069
contributi
Riga 103: | Riga 103: | ||
# gtk-chtheme | # gtk-chtheme | ||
</pre> | </pre> | ||
==Il Menu di Fluxbox== | |||
Il file di configurazione del menu di fluxbox di default è <code>~/.fluxbox/menu</code>. | |||
<br/> | |||
Il file ha una struttura molto elementare. Di seguito è riportato uno stralcio del file di configurazione del menu di default su debian (/etc/X11/fluxbox/fluxbox-menu): | |||
<pre> | |||
[ begin] (Fluxbox) | |||
# Automatically generated file. Do not edit (see /usr/share/doc/menu/html/index.html) | |||
[submenu] (Aiuto) {} | |||
[exec] (Debian Reference) {/usr/bin/debian-reference} | |||
[exec] (Info) { x-terminal-emulator -T "Info" -e info} | |||
[exec] (Xman) {xman} | |||
[end] | |||
[submenu] (Applicazioni) {} | |||
[submenu] (Editor) {} | |||
[exec] (Nano) { x-terminal-emulator -T "Nano" -e /bin/nano} | |||
[end] | |||
[submenu] (Emulatori di terminale) {} | |||
[exec] (XTerm) {xterm} | |||
[exec] (XTerm (Unicode\)) {uxterm} | |||
[end] | |||
[submenu] (Grafica) {} | |||
[exec] (X Window Snapshot) {xwd | xwud} | |||
[end] | |||
[submenu] (Navigazione web) {} | |||
[exec] (w3m) { x-terminal-emulator -T "w3m" -e /usr/bin/w3m /usr/share/doc/w3m/MANUAL.html} | |||
[end] | |||
[end] | |||
</pre> | |||
Le principali caratteristiche di questo file di testo sono: | |||
# Ogni riga ha una sintassi molto intuitiva e semplice; | |||
# L'indentatura del codice permette di "immaginarsi" il risultato finale. | |||
# Ogni riga ha una sintassi di questo tipo: | |||
<pre> | |||
[tag] (label o nome del file) {comando o nomefile} | |||
</pre> | |||
L'indentatura del file è una caratteristica molto importante che semplfica l'operazione di generazione del menu e della sua successiva modifica, perciò è bene mantenere questa struttura gerarchica ogni volta che si mette mano al menu. | |||
===Sintassi generica delle righe del file === | |||
Ciascuna riga del file di configurazione del menu di fluxbox ha una struttura di questo tipo: | |||
<pre> | |||
[tag] (label o nome del file) {comando o nomefile} | |||
</pre> | |||
Perciò a ciascuna coppia di parentesi corrisponde un significato ben preciso e questo aiuta molto a far risparmiare tempo in fase di modifica del file. | |||
<br/> | |||
Il menu inizia sempre con una riga di codice simile alla seguente: | |||
<pre> | |||
[begin] (Titolo_Menu) | |||
</pre> | |||
la tag <code>[begin]</code> deve essere presente nel file, altrimenti fluxbox cerca il file di configurazione di default del sistema, mentre (Titolo_Menu) può essere omesso. Titolo_Menu è il testo che verrà visualizzato in cima al menu di fluxbox. | |||
<br/> | |||
Per la chiusura del menu viene utilizzata la tag <code>[end]</code>. Questa tag può essere utilizzata sia per chiudere un menu che un sottimenu. In ogni menu deve essere presente una tag <code>[end]</code> per ogni tag <code>[submenu]</code> più una che comunque è presente e che corrisponde alla tag <code>[begin]</code>. Quindi un menu ha la seguente struttura: | |||
<pre> | |||
[begin] (Titolo Menu) | |||
... | |||
... | |||
... | |||
[end] | |||
</pre> | |||
Per creare un sottomenu nel menu principale si usa il tag <code>[submenu]</code>. Ogni Sottomenu viene chiuso dal tag <code>[end]</code>. Il tag <code>[submenu]</code> deve essere seguito dagli attributi (label) e . Il secondo attributo è opzionale e se omesso viene assunto uguale a (label). Riassumendo un sottomenu avrà il seguente aspetto. | |||
<pre> | |||
[submenu] (label) | |||
... | |||
... | |||
... | |||
[end] | |||
</pre> | |||
dove tra <code>[submenu]</code> e <code>[end]</code> vengono incluse tutte le voci del menu. | |||
<br/> | |||
Dal momento che flubxbox legge i menu in maniera ricorsiva non c'è limite al numero di sottomenu che possono essere annidati, praticamente vi consiglio di non esagerare per non complicare troppo la ricerca di una applicazione. | |||
==Item del menu (Eseguibili)== | |||
Per popolare ciascun menu di voci che corrispondono all'esecuzione di un programma si utilizza il seguente statement: | |||
[exec] (label) {command} | |||
A questa riga viene associata nel menu una voce che viene chiamata "label" e che esegue il comando "command". | |||
===Item del menu (Files e directory)=== | |||
Per inserire il collegamento ad un file o ad una directory all'interno del menu di fluxbox si usa la seguente riga: | |||
<pre> | |||
[include] (nome_file_o_dir) | |||
</pre> | |||
===Separatore=== | |||
A volte, per aumentare la chiarezza del menu può essere utile inserire un separatore. Questo può essere aggiunto inserendo una riga contenente lo statement <code>[separator]</code>: | |||
<pre> | |||
[separator] | |||
</pre> | |||
==Statements aggiuntivi=== | |||
Fluxbox mette a disposizione una serie di statements addizionali per personalizzare ulteriormente il menu. I principali sono: | |||
* Inserimento di una voce che permette la chiusura e l'uscita da fluxbox | |||
<pre> | |||
[exit] (label) | |||
</pre> | |||
* Inserimento di una voce "estetica nel menu". In altre parole: inserimento di una voce che se selezionata non comporta l'esecuzione di nessun comando. La sintassi è: | |||
<pre> | |||
[nop] (label) | |||
</pre> | |||
se label viene omessa di default viene inserita una voce vuota. | |||
* Reload del menu e di tutti i files di configurazione e di stile di fluxbox | |||
<pre | |||
[reconfig] (label) | |||
</pre> | |||
Questa voce è utile per creare nuovi temi e stili e non dover rilanciare fluxbox tutte le volte che è necessario testare il tema. | |||
* Riavvio di fluxbox | |||
<pre> | |||
[restart] (label) {command} | |||
</pre> | |||
Verrà creata una voce nel menu con il nome "label" e quando verrà selezionata fluxbox verrà arrestato e all'uscita da fluxbox verrà eseguito il comando "command". Comunemente il comando fornito è quello necessario ad avviare un altro windows manager. Il parametro "command" è opzionale. | |||
* Voce per la configurazione di fluxbox | |||
<pre> | |||
[config] (label) | |||
</pre> | |||
Viene inserita una voce nel menu chiamata "label" che permette di accedere a numerose opzioni di configurazione riguardanti il comportamento delle finestre. | |||
* Directory dei Wallpapers | |||
E' possibile inserire una voce all'interno del menu permetta di cambiare rapidamente lo sfondo di fluxbox attraverso la seguente riga: | |||
<pre> | |||
[wallpapers] (directory) {command} | |||
</pre> | |||
Cliccando su una immagine questa viene immediatamente settata come sfondo. Ovviamente <code>directory</code> è la directory contenente le immagini. |