FAQ/it

Perchè awesome?
Il nome awesome deriva dalla parola inglese awesome (fantastico) spesso usata da Barney Stinson, co-protagonista della serie "E alla fine arriva mamma".

Quali sono le dipendenze di awesome?
Vedi nel README.

Come cambiare il layout di gestione delle finestre di default?
Nel file di configurazione di default è impostato un layout per tutti i tag, che di solito è il layout floating. Puoi cambiarlo modificando il ciclo per la creazione dei tag nel tuo rc.lua:

-- Each screen has its own tag table. tags[s] = awful.tag({ 1, 2, 3, 4, 5, 6, 7, 8, 9 }, s, layouts[1])

Nota che tutti i tag useranno il primo ([1]) layout della tua tabella dei layouts, che è definita subito prima che i tag siano creati. Per usare un altro layout di gestione delle finestre basta cambiare il numero del layout (indice della tabella layouts).

Come cambiare il nome e il layout per ogni tag?
Puoi modificare la tua sezione 'Tags', esistono diverse possibili implementazioni, eccone una semplice:

--

Come impostare tags e layouts diversi per ogni schermo?
Un altro esempio pratico per la tua sezione 'Tags':

--

Come eseguire automaticamente le applicazioni all'avvio?
Il metodo tradizionale consiste nell'usare il file ~/.xinitrc, puoi trovare informazioni riguardo questa e altre soluzioni nella pagina Autostart.

Come usare monitor multipli?
Awesome ha un reale supporto al multihead (in modalità XRandR, Xinerama o Zaphod) con desktop(tag) diversi per ogni schermo, ed è distribuito con un semplice file di configurazione che è già configurato per dispaly multipli (per quanto riguarda le wibox, le taskbar e i widget ma ha anche delle scorciatoie da tastiera (keybindings) che ti permettono di spostare i client tra i diversi schermi e scambiare il focus tra essi). Leggi la guida completa "Using Multiple Screens" per ulteriori istruzioni.

Come impostare il blocco dello schermo?
Puoi usare uno strumento esterno come xlock o xscreensaver, slock, kscreenlocker...

Esempio di key binding per globalkeys: awful.key({ modkey }, "F12", function awful.util.spawn("xlock") end)

Come eseguire un comando in una shell?
Se vuoi eseguire un comando in una shell o hai necessità di eseguire un comando che usa redirezioni, pipe e via dicendo, non usare la funzione awful.util.spawn ma awful.util.spawn_with_shell. Ecco un semplice esempio:

awful.key({ modkey }, "F10", function awful.util.spawn_with_shell("cal -m | xmessage -timeout 10 -file -") end)

Come sistemare e migliorare l'usabilità delle applicazioni Java?
Le applicazioni Java che usano il back-end XToolkit/XAWT potrebbero visualizzare solo una schermata grigia. Il back-end XToolkit/XAWT infrange la regola di conformità ICCM, nelle ultime versioni della JDK 1.5 e nelle prime della JDK 1.6, perché presuppone un reparenting window manager. Puoi trovare soluzioni nella pagina del wiki Problems with Java.

Come rimuovere lo spazio tra le finestre?
In awesome 3.4 e 3.5 puoi aggiungere size_hints_honor = false alla sezione properties della tua tabella delle regole awful.rules.rules, per applicare questa regola a tutti i clients. Come alternativa (o per le versioni precedenti) puoi farlo aggiungendo c.size_hints_honor = false nella funzione del segnale manage (nel manage hook, per le versioni precedenti).

Se vuoi sapere cosa sono i size hints, ciò è stato dibattuto molte volte sulla mailing list, qui puoi leggere la spiegazione: http://www.mail-archive.com/awesome@naquadah.org/msg01767.html

Le titlebar sono belle, ma come posso disabilitarle per una determinata applicazione?
Nella sezione rules in awesomerc, aggiungete:

titlebar { position = off }

Come posso nascondere / visualizzare la statusbars in awesome 3.0?
Codice Lua: mystatusbar.position = "off" o mystatusbar.screen = nil

Per usare Modkey-b per nascondere/visualizzare la statusbar attiva sullo schermo (come da di default awesome 2.3), aggiungete al vostro awesome/rc.lua:

keybinding({ modkey }, "b", function        if mystatusbar[mouse.screen].screen == nil then           mystatusbar[mouse.screen].screen = mouse.screen      else          mystatusbar[mouse.screen].screen = nil      end  end):add

C'è un un program-launcher o un menu in awesome?
In awesome 2.3 si può inserire un menu facilmente. E' molto semplice da usare, create un file da qualche parte con delle linee formattate come in questo esempio:

~/.awesome/menu contiene: xterm firefox pidgin

Quindi aggiungete questo codice in.awesomerc: key { modkey = {"Mod4"} key = "p" command = "spawn" arg = "exec `cat ~/.awesome/menu | awesome-menu`" }

Vedete awesome-menu per ulteriori dettagli su questo.

Oppure, potete usare software alternativi come: e.g. key { modkey = {"Mod4"} key = "p" command = "spawn" arg = "exec `dmenu_path | dmenu -b`" }
 * dmenu - un program launcher


 * dzen - x-menu / statusbar e altro...

e.g.: 9menu -file ~/.9menurc
 * 9menu - un semplice x-menu


 * apwal - per le icone nella finestra principale


 * Gmrun - Run-menu (GTK+)

Non c'è la tray! Come posso ricevere le notifiche di pidgin?
Awesome capisce il tag 'URGENT' inviato da Pidgin, ed è possibile gestirlo sulla tag nel modo appropriato. Per fare questo, avviate Pidgin, andate in Strumenti -> Plugins, e siate sicuri che 'Notica messaggi' sia abilitato. Selezionate 'Notifica Messaggi', e cliccate sul pulsante 'Configura' in basso allo schermo. Siate sicuri che la voce 'Imposta lo stato 'URGENT' nel Window Manager' sia selezionato.

Il prossimo passo, è essere sicuri che questi valori sono nella sezione 'colors' in ~/.awesomerc (Per awesome-2.2)

colors { urgent_fg = "#ffffff" urgent_bg = "#D53737" }

In awesome-2.3:

styles { urgent {           fg = "#FFFFFF" bg = "#D53737" } }

Avviate awesome -k per verificare che la configurazione è valida, e riavviate.

In awesome-3 edit ~/.config/awesome/themes/

bg_urgent    = #ff0000 fg_urgent    = #ffffff

Ora, quando riceverete un messaggio in Pidgin, il display della tag nella barra si colorerà di rosso.

Posso modificare la configurazione di awesome mentre è avviato?
Si, potete. Dovrete riavviare Awesome o i cambiamenti effettuati sul file di configurazione non avranno effetto. La scorciatoria da tastiera di default per riavviare Awesome 3.0 è Mod4 + Ctrl + r

Posso cambiare il tema del cursone in awesome?
Potete impostare il tema preferito con il comando xsetroot

xsetroot -cursor_name TEMA

Questo potete anche aggiungerlo in ~/.xinitrc

Come posso avviare un'altra sessione di X
In KDE posso avviare una seconda sessione di X e passare da una sessione all'altra con F7 e F8. Come posso farlo usando awesome?

Potete passare in un nuovo terminale virtuale (VT) usando Ctrl+Alt+F8 per esempio, quindi entrate normalmente, e avviate X per un nuovo schermo virtuale, con il comando startx

UNANSWERED: Starting programs should be more comfortable
I can start programs by pressing mod + F1, but I do not see, if they are loading, or if I mistyped the program name.

It would also be great, if there would be some way to see the output of the program, whether there are errors, or to be able to start a program with sudo and enter the root password.

Come posso sospendere / riavviare / riprendere il mio computer?
Inviato da Gregor Best nella fomailing list:

"For logging out, simply kill your XServer by pressing Ctrl+Alt+Backspace. There's a keybinding for cleanly exiting, but I removed that a long time ago, so I don't remember it."

Potete normalmente usare la linea di comando, shutdown -h now per spegnere, shutdown -r now per riavviare, etc...

UNANSWERED: Where is the clipboard? How do I copy and paste?
One possibility provided by X is to mark text with the mouse and to paste it somewhere else with the middle mouse button or with -.

??Another would be to install any kind of clipboard???

Ho avviato awesome, ma non ho idea di cosa fare. Come posso usarlo?
man awesome è un'ottima guida, include le scorciatoie da tastiera di default.

In awesome 1.x usavo la pipe per mandare qualcosa a stdin (come in dwm), ma questo non funziona in awesome 2.0, perchè?
Perchè noi abbiamo implementato un sistema migliore. Se vuole può usare awesome-client che legge da stdin: #screen uicb arg

Potete anche cambiare il testo della statusbar sullo schermo 0, semplicemente con:

echo "0 setstatustext \"Hello, awesome world\!\"" | awesome-client

Mentre se volete vedere un tag sullo schermo 1:

echo "1 tag_view 3" | awesome-client

Note: Questo funziona solo per la versione 2.0. Per la sintassi corrente guardate awesome-client(1).

Ho trovato un bug, cosa posso fare?
Per prima cosa, prova la versione in sviluppo per vedere se il bug esiste ancora. Se il bug ha un comportamento inaspettatto, spiegateci perfavore quando si verifica. Se il bug è un "segmentation fault", includete anche tutto il backtrace (usate gdb).

E possibilmente copiatelo qui: http://awesome.naquadah.org/bugs/

In ogni caso, provate a spiegarci come riprodurlo.

Accettate patch e abbellimenti?
Certo. Potete inviarmele direttamente a me oppure in mailing list. Date anche un'occhiata alla pagina dei sviluppatori.

Come tenere traccia dei branch di awesome
Per clonare la versione (git) in sviluppo:

git-clone git://git.naquadah.org/awesome.git/ cd awesome/

Per prendere il branch come 'awesome-3':

git-fetch origin awesome-3:awesome-3 git-checkout awesome-3

con git-branch potete sapere quali branch state usando. In alcune distribuzioni potete usare per il completamento del nome di un branch (e altro) quando usate git.

Per essere sempre aggiornati al branch 'awesome-3'm eseguite questi comandi dalla directory di awesome:

git-fetch origin git-reset --hard origin/awesome-3

Note: il branch 'awesome-3' è già passato a XCB, e necessita di xcb-util. Per rendere la vita facile agli Arcieri, ho creato temporaneamente un PKGBUILD per xcb-util qui

Per creare una patch:

git-clone git://git.naquadah.org/awesome.git/ edit file git-commit filename git-format-patch origin

Questo produce un file con un nome simile: 0001-the-title-you-gave-it.patch

Come posso prendere il nome radice per creare una regola?
Potete usare il comando xprop - Eseguite questi comandi (questo è per Pidgin):

me@myhost:~$ xprop | grep WM_NAME WM_NAME(STRING) = "Lista Contatti" _NET_WM_NAME(UTF8_STRING) = 0x42, 0x75, 0x64, 0x64, 0x79, 0x20, 0x4c, 0x69, 0x73, 0x74

WM_NAME è il nome della regola che stiamo creando.

rules {     rule { name = "Lista Contatti" tags = "one" float = true } }