In questa pagina
- Cos'è LUA?
- Script di esempio.
- Comandi di script.
Devilspie2 è un programma che rileva le finestre mentre vengono create ed esegue azioni con script su di esse. Gli script sono scritti in LUA, consentendo una grande personalizzazione. Questo tutorial ti mostrerà l'installazione di Devilspie 2 su Ubuntu 14.04 e ti darà un'introduzione allo scripting di Devilspie.
Cos'è LUA?
Lua è un linguaggio di scripting potente, veloce, leggero e integrabile. Lua combina una semplice sintassi procedurale con potenti costrutti di descrizione dei dati basati su array associativi e semantica estensibile. Lua è tipizzato dinamicamente, viene eseguito interpretando il bytecode per una macchina virtuale basata su registri e dispone di una gestione automatica della memoria con garbage collection incrementale, che lo rende ideale per la configurazione, lo scripting e la prototipazione rapida.
Per ulteriori informazioni visita:http://www.lua.org/
Installazione.
Digita quanto segue:
sudo apt-get install devilspie2
(assicurati che sia devilspie2, perché il devilspie è un po' incasinato e non è più in fase di sviluppo.)
Sfortunatamente le regole dell'originale Devils Pie non sono più supportate in Devilspie 2.
Configurazione e scripting.
Se non dai a devilspie2 nessuna cartella con --folder, leggerà gli script LUA da ~/.config/devilspie2/ cartella e questa cartella verrà creata se non esiste già. Questa cartella è modificabile con l'opzione --folder. Se devilspie2 non trova alcun file LUA nella cartella, interromperà l'esecuzione.
Sopra ci sono alcune opzioni di utilizzo...
Script di esempio.
the debug_print command does only print anything to stdout -- if devilspie2 is run using the --debug option debug_print("Window Name: ".. get_window_name()); debug_print("Application name: "..get_application_name()) I want my Xfce4-terminal to the right on the second screen of my two-monitor setup, if (get_window_name()=="Terminal") then -- x,y, xsize, ysize set_window_geometry(1600,300,900,700); end Make Iceweasel always start maximized. if (get_application_name()=="Iceweasel") then maximize(); end
Per ulteriori informazioni sul linguaggio di scripting, visitare:
See FAQ at www.lua.org/FAQ.html Documentation at www.lua.org/docs.html Tutorials at http://lua-users.org/wiki/TutorialDirectory
Comandi script.
get_window_name()
restituisce una stringa contenente il nome della finestra corrente.
get_application_name()
restituisce il nome dell'applicazione della finestra corrente.
set_window_position(xpos, ypos)
Imposta la posizione di una finestra.
set_window_size(xsize, ysize)
Imposta la dimensione di una finestra.
set_window_geometry(xpos, ypos, xsize ysize)
Imposta la geometria di una finestra.
make_always_on_top()
Imposta le finestre sempre in primo piano.
set_on_top()
Imposta una finestra sopra le altre (questo tuttavia non bloccherà la finestra in questa posizione).
debug_print()
Debug helper che stampa una stringa su stdout. Viene stampato solo se devilspie2 viene eseguito con l'opzione --debug.
shade()
"Ombreggia" una finestra, mostrando solo la barra del titolo.
unshade()
Sfuma una finestra, l'opposto di "ombreggiatura"
massimizza()
massimizza una finestra
unmaximize()
annulla l'ingrandimento di una finestra
maximize_vertically()
massimizza la finestra corrente verticalmente.
maximize_horisontally()
massimizza la finestra corrente in senso orizzontale.
minimizza()
riduce a icona una finestra
riduci a icona()
riduce a icona una finestra, ovvero riportala sullo schermo dalla posizione/dimensione ridotta a icona.
decor_window()
Mostra tutte le decorazioni delle finestre.
undecorate_window()
Rimuove tutte le decorazioni delle finestre.
set_window_workspace(number)
Sposta una finestra in un'altra area di lavoro. La variabile numero inizia a contare da 1.
change_workspace(number)
Cambia lo spazio di lavoro corrente in un altro. La variabile numero inizia a contare da 1.
pin_window()
chiede al window manager di inserire la finestra in tutti gli spazi di lavoro.
unpin_window()
Chiede al window manager di inserire la finestra solo nell'area di lavoro attualmente attiva.
stick_window()
Chiede al window manager di mantenere la posizione della finestra fissa sullo schermo, anche quando l'area di lavoro o la finestra scorre.
unstick_window()
Chiede al window manager di non fissare la posizione della finestra sullo schermo quando l'area di lavoro o la finestra scorre.
Questa sarà la fine del tutorial per l'utilizzo di devilspie2.
Link
- Devilspie 2