2010-07-28 10 views
12

Dato che sono un pigro bastardo, ho provato a scrivere uno script Bash che apre subito alcune app giornaliere in diversi desktop. Questo script dovrebbe funzionare in Gnome. Ho scritto che finora:Apri applicazioni in diversi spazi di lavoro in Gnome

#!/bin/bash 
firefox & 
thunderbird & 
/usr/bin/netbeans --locale en & 
amsn & 
gnome-terminal & 
sleep 2 
wmctrl -r firefox -t 0 && wmctrl -r netbeans -t 1 && wmctrl -r gnome-terminal -t 2 && wmctrl -r amsn -t 6 && wmctrl -r thunderbird -t 7 

Ma, non funziona. Le mie app si aprono, ma non saranno assegnate ai desktop che ho specificato :(.

MODIFICA: ho modificato il valore di sleep in 15 ... solo firefox & netbeans sono assegnati correttamente, il resto si apre nello spazio di lavoro dove eseguo lo script da ...

+0

Quale gestore di finestre usi, Gnome? –

+0

sì, lo aggiungo nella descrizione :) – Rolf

+0

stai usando xinerama? – Anders

risposta

3

Grazie a Akira commento, ho finalmente riuscito a farlo funzionare (lo script viene eseguito all'avvio come un fascino) Ecco il nuovo codice:

#!/bin/bash 
wmctrl -n 8 

firefox & 
thunderbird & 
/usr/bin/netbeans --locale en & 
amsn & 
gnome-terminal & 
sleep 15 

wmctrl -r firefox -t 0 
wmctrl -r netbeans -t 1 
wmctrl -r terminal -t 2 
wmctrl -r amsn -t 6 
wmctrl -r thunderbird -t 7 

#focus on terminal 
wmctrl -a terminal 
0

quello frontend grafico si usa? ad esempio quando si utilizza Ubuntu con GNOME e compiz è possibile impostare la posizione di finestre in

sistema> Preferenze> Impostazioni CompizConfig Manager> Gestione finestre> Posiziona finestre

+0

Ciao, non uso Compiz ... – Rolf

2

checkout DevilsPie, guarda la creazione di Windows e agisce di conseguenza.

Devil's Pie può essere configurato per rilevare le finestre mentre vengono create e abbinare la finestra a un insieme di regole. Se la finestra corrisponde alle regole, può eseguire una serie di azioni su quella finestra. Ad esempio, posso far apparire tutte le finestre create da X-Chat su tutte le aree di lavoro e la finestra principale di Gkrellm1 non appare nel cercapersone o nell'elenco delle attività.

Oppure è possibile utilizzare un gestore di finestre che è in grado di fare lo stesso in-house, ad es. fluxbox.

+0

ciao, se c'è nessuna soluzione soddisfacente con wmctrl, lo verificherò, grazie :) – Rolf

+1

il motivo per cui wmctrl non funziona nel tuo esempio è questo: la finestra di firefox non è ancora lì mentre già attivi il comando wmctrl. il sonno non è abbastanza – akira

+0

Ho cambiato il valore di sleep in 15 ... solo firefox e netbeans sono assegnati correttamente, il resto si apre nello spazio di lavoro in cui eseguo lo script da ... – Rolf

1

In dconf-editore:

org->gnome->shell->extensions->auto-move-windows 
here is what it should look like: 
['firefox.desktop:1','pidgin.desktop:2'] 
+0

Inoltre, l'estensione auto-move-windows deve essere abilitata. – gkcn

Problemi correlati