Openbox (Italiano)

From ArchWiki
Revision as of 13:22, 14 July 2010 by Simandr (Talk | contribs) (Obmenu)

Jump to: navigation, search

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.


Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어


External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary text Template:Article summary end

Openbox è un window manager leggero ed estremamente configurabile con un estensivo supporto di standard. Le sue funzionalità sono ben documentate sul sito ufficiale. Questo articolo riguarderà Openbox su Arch Linux.


Installazione

Openbox è disponibile nei repository:

# pacman -S openbox

Una volta installato, pacman vi indicherà di copiare le configurazioni menu.xml e rc.xml predefinite in ~/.config/openbox/, ad esempio:

Nota: fare questo come utente, non come root.
$ mkdir -p ~/.config/openbox/
$ cp /etc/xdg/openbox/rc.xml ~/.config/openbox/rc.xml
$ cp /etc/xdg/openbox/menu.xml ~/.config/openbox/menu.xml

Il file Template:Filename è il file di configurazione principale di Openbox. Viene usato per gestire le scorciatoie di tastiera, i temi, i desktop virtuali e altre funzioni.

Il file Template:Filename controlla il menu delle applicazioni di Openbox che appare quando si fa clic con il tasto destro sul desktop. I componenti predefiniti nel menu sono alquanto scarsi (se non del tutto inutili), ma è molto facile modificarne la struttura per convenire ai propri bisogni. Visitate la sezione menu in basso per maggiori informazioni, o visitate il sito web di Openbox.

Usare Openbox come unico gestore

Per avviare soltanto Openbox, basta aggiungere questo comando in fondo al file ~/.xinitrc:

exec openbox-session

Se in precedenza avete utilizzato un altro gestore di finestre, come Xfce, e Openbox non parte dopo aver effettuato il logout, provate a spostare la cartella di avvio automatico:

mv ~/.config/autostart ~/.config/autostart-bak

Utilizzando D-Bus/HAL o simili, utilizzare questa istanza:

exec ck-launch-session openbox-session

Se si utilizza anche polkit e D-Bus (Es. per usufruire dell'automount su nautilus in Gnome 2.28 / 2.30) usare:

exec ck-launch-session dbus-launch openbox-session
Nota: Per poter girare correttamente, Openbox richiede il pacchetto pyxdg

Gestore finestre per ambienti desktop

GNOME

GNOME 2.26

Seguire questa guida per GNOME 2.26. In caso di errori provare quanto segue:

Se dopo l'installazione di openbox falliscono i tentativi di log in nella sessione 'Gnome/openbox', si può tentare quanto sotto specificato per effettuare l'avvio di openbox come window manager ogni volta che si effettua l'accesso nella sessione 'Gnome' dal proprio login manager (xdm, gdm, kdm, entrance, slim, etc.)

  1. Effettuare l'accesso solamente nella sessione di Gnome (che userà metacity quale unico window manager) per preparare quanto segue.
  2. Installare openbox se non è ancora stato fatto.
  3. Esplorare il menu verso System → Preferences → Startup Applications (probabilmente chiamato 'Session' per versioni meno recenti di Gnome)
  4. Selezionare "Applicazioni d'avvio", poi "Aggiungi" ed immettere il testo contenuto nel box sotto, omettendo quello preceduto da #.
  5. Premere "Aggiungi" per completare l'aggiunta della nuova voce ed assicurarsi che sia spuntata nella lista delle applicazioni d'avvio.
  6. Terminare la sessione di Gnome, rieffettuare l'accesso, e si dovrebbe finalmente essere nella nuova sessione di openbox.
  7. Buon divertimento!
Nome:    Openbox Windox Manager           # Can be changed
Comando: openbox --replace                # Text should not be removed from this line, but possibly added to it
Commento: Replaces metacity with openbox  # Can be changed

Sarà creata una nuova voce di avvio che verrà eseguita da gnome ogni volta che verrà richiamata una particolare sessione di gnome.

GNOME 2.24

Per prima cosa creare Template:Filename contenente i seguenti:

[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=OpenBox
Exec=openbox
NoDisplay=true
# name of loadable control center module
X-GNOME-WMSettingsModule=openbox
# name we put on the WM spec check window
X-GNOME-WMName=OpenBox

Poi in gconf, impostare /desktop/gnome/session/required_components/windowmanager a openbox:

$ gconftool-2 -s -t string /desktop/gnome/session/required_components/windowmanager openbox

Per finire, selezionare la sessione GNOME da sessioni del menu GDM.

GNOME 2.22 e precedenti

  1. Se si usa GDM, selezionare l'opzione di accesso "GNOME/Openbox"
  2. Usando invece startx, aggiungere Template:Codeline a Template:Filename
  3. Dalla shell:
$ xinit /usr/bin/openbox-gnome-session

KDE

  1. Se si usa il KDM, selezionare l'opzione di accesso "KDE/Openbox"
  2. Se si usa startx, aggiungere Template:Codeline al file Template:Filename
  3. Per avviare da shell:
$ xinit /usr/bin/openbox-kde-session

Xfce4

Effettuare l'accesso in una normale sessione Xfce4. Dal terminale dare:

$ killall xfwm4 ; openbox & exit

Con questo si ucciderà xfwm4, si avvierà Openbox, e si chiuderà il terminale.

Terminare la sessione, assicurandosi di controllare la casella "Salvare la sessione per prossimi accessi". Al prossimo accesso, Xfce4 avvierà Openbox come WM. Per essere abilitati a terminare la sessione xfce4, aprire il proprio Template:Filename (se il file non esiste, copiarlo da Template:Filename).

Trovare le seguenti righe:

 <item label="Exit Openbox">
   <action name="Exit">
     <prompt>yes</prompt>
   </action>
 </item>

e modificarle così:

 <item label="Exit Openbox">
   <action name="Execute">
     <prompt>yes</prompt>
    <command>xfce4-session-logout</command>
   </action>
 </item>

Altrimenti usando la voce "Exit" dal menu si termina l'esecuzione di Openbox, rimanendo senza window manager.

Se c'è qualche problema a cambiare tra desktops virtuali con la rotella del mouse (salta qualche desktop), aprire il file Template:Filename e vincolare i movimenti del mouse con azioni "DesktopPrevious" e "DesktopNext" dal contesto "Desktop" al contesto "Root" (si potrebbe dover definire il concetto di contesto root).

Volendo usare il root-menu di Openbox invece di quello di Xfce's, è possibile terminare Xfdesktop dando il seguente comando in un terminale:

$ xfdesktop --quit

In ogni caso, Xfdesktop gestisce gli sfondi e le icone del desktop, obbligando l'utente ad usare per queste funzioni altri strumenti, come ad esempio ROX.

(Quando si termina Xfdesktop, il problema di cui sopra dei desktop virtuali non è più un problema.)

Preferenze

Al momento ci sono due opzioni per configurare le preferenze di base di Openbox; modificare manualmente il file Template:Filename oppure utilizzare lo strumento ObConf.

Definire le preferenze manualmente

Per configurare Openbox manualmente, basta semplicemente modificare Template:Filename con il vostro editor di testi preferito. Il file di configurazione contiene commenti in abbondanza, e la documentazione per una configurazione completa è disponibile sul sito ufficiale.

Definire le preferenze con ObConf

ObConf è uno strumento di configurazione per Openbox basato su un'interfaccia grafica, che può essere usato per definire la maggior parte delle preferenze, inclusi temi, desktop virtuali, proprietà delle finestre e margini del desktop.


Per installare ObConf:

# pacman -S obconf
Nota: Al momento ObConf non può essere usato per gestire le scorciatoie di tastiera e alcune funzioni avanzate. Per queste modifiche, l'utente deve ricorrere alla modifica manuale del file Template:Filename. Un'alternativa è l'applicazione ObKey (disponibile su AUR).

Configurazione delle applicazioni

Il gestore applicazioni di openbox permette di definire regole per le proprie applicazioni. Ad esempio si può:

  • Caricare il web browser preferito in un determinato desktop
  • Avviare il terminal senza i bordi della finestra
  • Posizionare all'avvio il client torrent in una certa posizione del monitor

Queste regole sono definite in Template:Filename. Come è facilmente deducibile, le istruzioni sono ben dettagliate all'interno dello stesso file. Documentazione dettagliata può anche essere reperita qui

Gestione del menu

Il menu di base di Openbox è abbastanza basico e se non si hanno nessuno dei programmi nella lista installati, è totalmente inutile. Ci sono un numero di modi per personalizzare il proprio menu.

Configurazione manuale

Similmente al file Template:Filename, è possibile modificare Template:Filename con il proprio editor di testo. Anche se molti comandi sono facilmente intuibili, potete consultare la documentazione ufficiale.

MenuMaker

MenuMaker è un potente strumento per creare menu XML per diversi Windows Manager, incluso Openbox. MenuMaker cercherà programmi eseguibili nel computer e creerà un menu XML basato sui risultati. Può essere configurato per escludere applicazioni Legacy di X, applicazioni di GNOME, KDE o Xfce, se l'utente lo desidera.

MenuMaker è disponibile nel repository community:

  1. pacman -S menumaker

Una volta installato, si può generare un menu completo con il seguente comando:

$ mmaker -v OpenBox3

Come opzione predefinita, MenuMaker non sovrascriverà un menu.xml già esistente. Per fare in modo che lo faccia invece, eseguire il comando con l'argomento -f (force):

$ mmaker -vf OpenBox3

Per vedere tutta la lista di opzioni, eseguire il comando Template:Codeline.

Questo vi darà un menu abbastanza approfondito. Ora è possibile modificare il menu.xml a mano, o rigenerare la lista ogni volta che si installa nuovo software.

Obmenu

Obmenu è un editor di menu per Openbox con un'interfaccia grafica. E' probabilmente la migliore opzione per coloro che non amano sporcarsi le mani con codice XML.

E' disponibile nei repository ufficiali:

# pacman -S obmenu

Una volta installato, basta eseguire il comando obmenu e aggiungere o rimuovere le applicazioni desiderate.

obm-xdg

obm-xdg è uno strumento per riga di comando che viene installato assieme a Obmenu. Può generare un sottomenu categorizzato di applicazioni GTK/GNOME installate.

Per usare obm-xdg, aggiungere la riga seguente al file Template:Filename:

<menu execute="obm-xdg" id="xdg-menu" label="xdg"/>

Dopodichè eseguire il comando Template:Codeline per aggiornare il menu di Opebox. Un sottomenu chiamato xdg dovrebbe essere ora apparso nel vostro menu.

Nota: Se non avete installato GNOME, allora dovete installare il pacchetto gnome-menus per utilizzare obm-xdg.

Script menu xdg basato su python

Questo script è reperibile nel pacchetto openbox di Fedora. Ci sarà solo da mettere lo script in qualche posto e aggiungere una voce al menu.

Qui una aggiunta personale: http://pastebin.com/f2f827625 Qui il principale: http://cvs.fedoraproject.org/viewvc/devel/openbox/xdg-menu?view=markup

Scaricare quello che si preferisce (sarà preferibile quello principale). È possibile metterlo ovunque, in questo esempio ~/Documents/build/xdg-menu (modificare la voce del menu a seconda del percorso del proprio sistema nomedelfile/percorso).

Aprire poi menu.xml con un editor di testo e aggiungere la seguente voce dove si preferisce nel nuovo menu (naturalmente è possibile modificare l'etichetta):

<menu id="apps-menu" label="xdgmenu" execute="python /home/shiki/Documents/build/xdg-menu"/>

Salvare il file ed eseguire: Template:Codeline.

Pipe menus

Openbox (ed altri WM come WindowMaker e PekWM) permettono di scrivere degli scripts che generano dinamicamente dei menu. Alcuni esempi sono monitor di sistema, controlli per i media player, e previsioni del tempo. Molti altri esempi possono essere trovati su openbox site.

Esecuzione automatica

Openbox 3.4+ supporta l'esecuzione automatica di programmi all'avvio, provvisto dal comando "openbox-session"

Ci sono due modi per abilitare l'esecuzione automatica:

  1. Se si usa startx per accedere alla sessione X, cambiare la riga che esegue openbox in modo che esegua openbox-session invece.
  2. Se si usa GDM/KDM, selezionare la sessione Openbox e questa utilizzerà l'esecuzione automatica.

I programmi in esecuzione automatica sono gestiti dal file ~/.config/openbox/autostart.sh. Tutte le istruzioni e i modi migliori per farlo sono disponibili sul sito web di Openbox.

Temi e aspetto

A parte i temi di Openbox, la sezione seguente è mirata agli utenti che hanno configurato Openbox per essere utilizzato senza GNOME o KDE.

Temi di Openbox

I temi di Openbox controllano l'aspetto dei bordi delle finestre, inclusi la barra del titolo e i tasti della barra. Essi determinano anche l'aspetto del menu dell'applicazione e on-screen display (OSD)

Altri temi sono disponibili nei repository ufficiali:

# pacman -S openbox-themes

Questo pacchetto non è assolutamente definitivo. Esistono anche altre risorse in rete per reperire temi per Openbox, come:

I temi scaricati vanno estratti nella cartella ~/.themes e possono essere installati o selezionati con lo strumento ObConf.

Creare nuovi temi è alquanto semplice e ben documentato.

Temi GTK

GTK2/GTK+

I temi GTK2 possono essere facilmente gestiti con lxappearance, gtk-chtheme, o switch2:

 # pacman -S lxappearance

e/o

# pacman -S gtk-chtheme

e/o

# pacman -S gtk-theme-switch2

Ora basta eseguire il comando Template:Codeline, Template:Codeline or {{Codeline|switch2} e scegliere il tema desiderato.

GTK1

Per i vecchi temi GTK1, installare il pacchetto gtk-theme-swithch:

# pacman -S gtk-theme-switch

Dopodiché eseguire il comando Template:Codeline e selezionare il tema desiderato.

Caratteri GTK

Se si vuole cambiare il tipo e la dimensione dei propri caratteri, aggiungere quanto segue al file Template:Filename:

style "user-font"
{
font_name = "[nome-carattere] [dimensione]"
}
widget_class "*" style "user-font"
gtk-font-name = "[nome-carattere] [dimensione]"

Dove [nome-carattere] e [dimensione] sono il carattere desiderato e le dimensioni del testo in pt. Ad esempio:

style "user-font"
{
font_name = "DejaVu Sans 8"
}
widget_class "*" style "user-font"
gtk-font-name = "DejaVu Sans 8"

I campi font_name e gtk-font-name sono entrambi richiesti per compatibilità con vecchie applicazioni.

Icone GTK

Estrarre il tema di icone desiderato nella cartella /usr/share/icons<> (per accesso in tutto il sistema) o <~/.icons (per accesso solo per l'utente).

Aggiungere quanto segue al file ~/.gtkrc.mine:

gtk-icon-theme-name = "[nome-tema-icone]"

dove [nome-tema-icone] è il nome della cartella del tema di icone. Ad esempio:

gtk-icon-theme-name = "Tango"

Assicurarsi che Template:Filename sia configurato per eseguire file Template:Filename:

# ~/.gtkrc-2.0
# -- THEME AUTO-WRITTEN DO NOT EDIT
include "/usr/share/themes/Rezlooks-Gilouche/gtk-2.0/gtkrc"
include "/home/username/.gtkrc.mine"
# -- THEME AUTO-WRITTEN DO NOT EDIT

Potete utilizzare lxappearance per scegliere i temi delle icone GTK. In tal caso si prega di fare riferimento alla sezione precedente.

Temi del cursore del mouse

Estrarre il tema dell'Xcursor desiderato o nella cartella /usr/share/icons (per accesso in tutto il sistema) o ~/.icons (per accesso solo per l'utente).Ci sono anche un numero limitato di temi disponibili nel repository community che può essere installato utilizzando pacman.

Aggiungere quanto segue al file ~/.Xdefaults:

Xcursor*theme:   [nome-tema-cursore]

dove [nome-tema-cursore] è il nome della cartella del tema del cursore. Ad esempio:

Xcursor*theme:	Vanilla-DMZ-AA

Per modificarne le dimensioni:

Xcursor.size: [size]

Icone sul desktop

Openbox non provvede un modo di mostrare le icone sul desktop. ROX, iDesk, o anche Nautilus (e il gnome-settings-daemon) possono provvedere questa funzione. ROX ha il vantaggio aggiuntivo di essere un gestore di file leggero.

Sfondo del desktop

Openbox in sé non include un modo per cambiare lo sfondo del desktop. Questo può essere raggiunto facilmente con programmi come Feh o Nitrogen. Altre opzioni includono ImageMagick, hsetroot e xsetbg.

Programmi consigliati

Esiste una lista di software leggero sul wiki di Arch, molti dei quali si intonano perfettamente con openbox

Login Manager

SLiM provvede una soluzione di login leggera ed elegante per le configurazioni di Openbox soltanto (senza GNOME o KDE). Fare riferimento alla wiki di Arch su SLiM per istruzioni dettagliate.

Qingy è un gestore di login grafico ultraleggero ed altamente configurabile. Supporta login sia da console che da sessioni grafiche. Usa DirectFB, perciò non avvia la sessione grafica finchè l'utente non lo decide. Ulteriori informazioni Qingy sul wiki di Arch.

Desktop Composite

xcompmgr è un composite manager leggero in grado di creare ombre, finestre in dissolvenza e trasparenza sia in Openbox che in altri window manager.(È bene segnalare che xcompmgr non è più mantenuto, sicchè eventuali problemi o bug non saranno risolti) (È noto un conflitto con tint2 0.9, l'icona del vassoio di sistema ha la tendenza a dare qualche problema)

Cairo Composite Manager È Un versatile ed ampliabile composite manager che utilizza cairo per il rendering, è una buona alternativa.


Pannelli, vassoi di sistema e paginatori

Ci sono un bel numero di pannelli da installare per provvedere una taskbar e un pager per Openbox. I più comuni sono:

Pannelli

Vassoi di sistema

Paginatori

Dopo averne scelto uno, aggiungerlo al file di esecuzione automatica. Se si desidera impostare il layout del desktop senza l'utilizzo di un paginatore è possibile utilizzare obsetlayout che è una versione pacchettizzata di strumento setLayout dal wiki Openbox.

File Manager

Ci sono diverse possibilità, ma i gestori di file più leggeri e popolari sono:

  • Thunar (Supporta funzionalità di auto-mount features e altri plugin)
  • ROX (ROX provvede anche icone sul desktop)
# pacman -S rox
  • PCMan (molto leggero e in grado di provvedere icone sul desktop)
# pacman -S pcmanfm

Per opzioni ancora più leggere, considerare Gentoo o emelFM, entrambi dei quali usano la struttura a due pannelli come il Midnight Commander (entrambi richiedono GTK 1.2.x).

Altri: Xfe muCommander

Ovviamente si può utilizzare anche Nautilus. Sebbene sia più lento delle soluzioni elencate, ha il vantaggio addizionale del supporto VFS (ad esempio SSH remoto, connessioni FTP e Samba).

Lanciatori di applicazioni

dmenu

La configurazione di dmenu è descritta nella sezione dmenu del wiki. Di seguito aggiungere la seguente voce <keyboard> section Template:Filename per abilitare una scorciatoia d'avvio al dmenu:

   <keybind key="W-space">
     <action name="Execute">
       <execute>dmenu_run</execute>
     </action>
   </keybind>

Gmrun

gmrun fornisce un'ottima finestra d'avvio, simile alla funzione Alt+F2 di GNOME e KDE:

# pacman -S gmrun

Aggiungere quanto segue alla sezione <keyboard> nel file Template:Filename per abilitare la funzionalità Alt+F2:

<keybind key="A-F2">
<action name="execute"><execute>gmrun</execute></action>
</keybind>

Bashrun

bashrun fornisce un differente, e alquanto basilare approccio, usando una speciale sessione bash in una piccola finestra xterm. È disponibile nei community repository e può essere lanciata in stile Alt+F2 come menzionato sopra. Per rendere l'avvio di bash in uno stile ancora più tradizionalista, aggiungere la seguente voce nella sezione <applicazioni> Template:Filename:

   <application name="bashrun">
     <desktop>all</desktop>
     <decor>no</decor>  # switch to yes if you prefer a bordered window
     <focus>yes</focus>
     <skip_pager>yes</skip_pager>
     <layer>above</layer>
   </application>

Launchy

Launchy è già un qualcosa di meno minimalista; è possibile cambiare le interfaccie grafiche e offre altre funzionalità come la calcolatrice, le condizioni meteo, etc. Originariamente destinato a Windows, è simile a Gnome Do.

# pacman -S launchy

Lo si può lanciare con la combinazione di tasti Ctrl+Space.

LXPanel

LXPanel può essere eseguito con

lxpanelctl run

gnome-panel

Gnome-panel può essere eseguito con

gnome-panel-control --run-dialog

Clipboard managers

Si potrebbe voler installare un clipboard manager per operazioni come il copia/incolla. xfce4-clipman-plugin, parcellite, oppure glipper-old possono essere installate con pacman. Aggiungere la propria scelta su autostart.sh. Dal terminale, Ctrl+Insert per il comando copia and Shift+Insert per incolla generalmente funzionano bene. È anche possibile copiare dal terminale Ctrl+Shift+C, e incollare con il bottone centrale del mouse.

Suggerimenti

Copia e incolla

Da terminale, Ctrl+Insert per la funzione copia e Shift+Insert per incolla funziona bene in genere. Si può anche copiare de terminale con Ctrl+Shift+C, ed incollare con il tasto centrale del mouse.

Transparenza

Utilizzando il programma transset-df, che è in linea di massima simile a transset, (installabile con: pacman -S transset-df) è possibile abilitare la transparenza delle finestre in modo veloce. Ad esempio modificando quanto segue in Template:Filename si otterrà che il tasto centrale del mouse attiverà e disattiverà la transparenza con il movimento della rotella del mouse o con il click del bottone centrale, rispettivamente, quando il cursore è sulla barra del titolo (osservare la sezione <mouse>):

    <context name="Titlebar">
     <mousebind button="Left" action="Press">
       <action name="Focus"/>
       <action name="Raise"/>
     </mousebind>
     <mousebind button="Left" action="Drag">
       <action name="Move"/>
     </mousebind>
     <mousebind button="Left" action="DoubleClick">
       <action name="ToggleMaximizeFull"/>
     </mousebind>
     <mousebind button="Middle" action="Press">
     	<action name="Lower"/> 
       <action name="FocusToBottom"/>
       <action name="Unfocus"/>
     </mousebind>
     <mousebind button="Up" action="Click">
       <action name= "Execute" >
       <execute>transset-df -p .2 --inc  </execute>
       </action>
     </mousebind>
     <mousebind button="Down" action="Click">
       <action name= "Execute" >
       <execute>transset-df -p .2 --dec </execute>
       </action>
     </mousebind>
     <mousebind button="Right" action="Press">
       <action name="Focus"/>
       <action name="Raise"/>
       <action name="ShowMenu">
         <menu>client-menu</menu>
       </action>
     </mousebind>
   </context>

Per il momento sembra funzionare bene se non sono stati abilitati altri tipi di funzione.

Valori Xprop per le applicazioni

Utilizzando impostazioni personalizzate a seconda del tipo di applicazione, potrebbe essere comodo il bash alias:

alias xp='xprop | grep "WM_WINDOW_ROLE\|WM_CLASS" && echo "WM_CLASS(STRING) = \"NAME\", \"CLASS\""'

Per usarlo eseguire Template:Codeline e fare click sul programma in esecuzione di cui si vogliono definire le configurazioni per-app. Il risultato visualizzerà solo le informazioni richieste da Openbox, rinominando i valori WM_WINDOW_ROLE e WM_CLASS (nome e tipo):

[thayer@dublin:~] $ xp
WM_WINDOW_ROLE(STRING) = "roster"
WM_CLASS(STRING) = "gajim.py", "Gajim.py"
WM_CLASS(STRING) = "NAME", "CLASS"

Xprop per Firefox

Per diversi motivi, Firefox e i suoi equivalenti open source ignorano le regole delle applicazioni (es. <desktop>) a meno che non si usi Template:Codeline, e senza badare a cosa viene riportato da xprop come attuale valore WM_CLASS.

Associare il menu a un comando

Ad alcuni utenti piace associare il menu pricipale di Openbox, o qualsiasi altro, ad un comando. Potrebbe essere utile, ad esempio, per creare un menu a bottone in un pannello. Sebben ciò non sia supportato da Openbox, un semplice script, xdotool, basta a simulare che la pressione di un tasto esegua un comando. Xdotool è disponibile su AUR. Per usarlo, aggiungere semplicemente alla sezione <keyboard> del proprio Template:Filename:

    <keybind key="A-C-q">
      <action name="ShowMenu">
        <menu>root-menu</menu>
      </action>
    </keybind>

Riavviare/reconfigure Openbox. Si potrà ora magicamente richiamare il menu nella posizione del cursore eseguendo il seguente comando:

# xdotool key ctrl+alt+q

È ovviamente possibile cambiare le scorciatoie secondo i propri gusti o esigenze.

Urxvt sullo sfondo

Con Openbox, eseguire un terminale come sfondo del desktop è facile. Non avete bisogno di devilspie in questo caso.

Innanzitutto sarà necessario abilitare la trasparenza, aprendo il proprio file Template:Filename (in caso non esistesse, andrà creato nella propria /home).

URxvt*transparent:true
URxvt*scrollBar:false
URxvt*geometry:124x24  #Dimensioni del terminale. In caso voi lo vogliate full-screen, non usate questa opzione ma guardate sotto
URxvt*borderLess:true
URxvt*foreground:Black #Colore dei font. Da impostare su White in caso di utilizzo di desktop scuri.

Infine, bisognerà modificare il proprio file Template:Filename:

<application name="URxvt">
  <decor>no</decor>
  <focus>yes</focus>
  <position>
    <x>center</x>
    <y>20</y>
  </position>
  <layer>below</layer>
  <desktop>all</desktop>
  <maximized>true</maximized> #In caso si voglia il terminale full-screen.
</application>

La magic viene dalla linea Template:Codeline, che piazzerà il terminale sotto tutte le altre. In questo caso, URxvt sarà visualizzato su tutti i desktop, ovviamente è possibile cambiare questo comportamento.

Notare che, invece di usare <application name="URxvt"> nella prima riga, è possibile usare un altro nome (URxvt-bg ad esempio), e utilizzare l'opzione -name al lancio di uxrvt.

In questo modo, solo i terminali che lancerete con l'opzione saranno impostati con le regole scelte nel file rc.xml. Ad esempio:

urxvt -name URxvt-bg

Controllo del volume da tastiera

Se si usa ALSA per l'audio, è possibile usare il programma amixer per regolare il volume dell'audio. Inoltre è possibile usare le associazioni dei tasti di Openbox in modo che si comportino come tasti multimediali. (Alternativamente, si potrebberero cercare i nomi dei tasti multimediali che si hanno e mapparli.) Per esempio, nella sezione <keyboard> di rc.xml:

   <keybind key="W-Up">
     <action name="Execute">
       <command>amixer set Master 5%+</command>
     </action>
   </keybind>

Questo vincola i tasti Windows + Freccia Su ad alzare il proprio volume Master ALSA del 5%. La corrispondente associazione per abbassare il volume:

   <keybind key="W-Down">
     <action name="Execute">
       <command>amixer set Master 5%-</command>
     </action>
   </keybind>

In un altro esempio, è possibile anche usare l'associazione dei tasti per XF86Audio:

   <keybind key="XF86AudioRaiseVolume">
     <action name="Execute">
       <command>amixer set Master 5%+ unmute</command>
     </action>
   </keybind>
   <keybind key="XF86AudioLowerVolume">
     <action name="Execute">
       <command>amixer set Master 5%- unmute</command>
     </action>
   </keybind>
   <keybind key="XF86AudioMute">
     <action name="Execute">
       <command>amixer set Master toggle</command>
     </action>
   </keybind>

Quest'ultimo esempio dovrebbe funzionare per la maggior parte delle tastiere multimediali. Dovrebbe consentire di alzare, abbassare e disattivare il controllo Master della propria scheda audio usando i rispettivi tasti multimediali. Notare inoltre che in questo esempio:

  • Il tasto "Muto" dovrebbe riattivare il controllo Master se è già disattivato.
  • I tasti "Alzare" e "Abbassare" dovrebbero riattivare il controllo Master se esso è disattivato.

Impostazioni per-applicazione

Openbox offre la disponibilità di definire impostazioni per applicazione, a partire dalla versione 3.3. Queste impostazioni possono essere definite nel file ~/.config/openbox/rc.xml creando un nuovo elemento XML in <openbox_config> chiamato <applications>. che conterrà le impostazioni. All'interno di <applications> si necessiterà <application name="">, il quale determinerà il nome dell'applicazione che questa impostazione andrà ad effetture. I modi di determinare l'applicazione sono name, class e role, ad esempio: <application class="Firefox-bin"> Class e name possono essere trovate eseguendo il seguente comando: xprop | grep WM_CLASS Facendo clic sull'applicazione che si vuole configurare, si otterrà qualcosa di simile:

WM_CLASS(STRING) = "Gecko", "Thunderbird-bin"

La prima è quella da inserire all'interno di name="" e la seconda quella per class="". Si possono usare entrambe le opzioni, ma è consigliabile scegliere quella più difficile da essere confusa con altre. Dopodichè è necessario definire le impostazioni desiderate. Le impostazioni disponibili sono:

decor - se la finestra ha bordi o meno, barra del titolo, e così via. I valori sono yes o no, on o off;
shade - se la finestra è minimizzata alla barra del titolo o no (non funziona se le decorazioni sono disattivate). 
        I valori sono yes o no, on o off;
position - posizione della finestra quando inizializzata. Necessita le sottosezioni:
 <x>pos</x>     - posizione in pixel, dal lato in alto a sinistra;
 <y>pos</y>     - valori come "center" sono validi, anche, si può anche definire un solo valore, se si vuole;
focus - se la finestra riceve focus quando inizializzata. I valori sono yes o no, on o off;
desktop - desktop (workspace) sul quale l'applicazione compare. Il valore è il numero del desktop a partire da 0 
          (se viene aperta su un altro desktop, non riceve focus);
monitor - xinerama head sul quale l'applicazione viene inizializzata (utile quando si hanno due monitor e si vuole che l'applicazione 
          venga aperta in un altro monitor, ad esempio nvidia twinview usa xinerama). I valori sono 0, 1, numero-dello-schermo e così via; 
layer - livello sul quale l'applicazione viene inizializzata. I valori sono Bottom, Normal e Top;
iconic - se l'applicazione viene inizializzata come ridotta a icona. I valori sono yes o no, on o off;
skip_pager - l'applicazione non appare nel pager. I valori sono yes o no, on o off;
skip_taskbar - l'applicazione non appare nella taskbars. I valori sono yes o no, on o off;
fullscreen - se l'applicazione viene inizializzata a schermo intero. I valori sono yes o no, on o off;
maximized - tipo di massimizzazione della finestra. I valori sono Horizontal, Vertical, yes o no, on o off;

Un esempio di configurazione dove Firefox viene aperto a 30 pixel dall'alto, centrato e con massimizzazione orizzontale:

<applications>
  <application class="Firefox-bin">
    <position>
      <x>center</x>
      <y>30</y>
    </position>
    <maximized>Horizontal</maximized>
  </application>
</applications>

Risorse aggiuntive