2010-07-28 7 views
12

में विभिन्न कार्यक्षेत्रों में खुले अनुप्रयोगों को देखते हुए मैं एक आलसी बेस्टर्ड हूं, मैंने एक बैश स्क्रिप्ट लिखने की कोशिश की जो विभिन्न डेस्कटॉपों में कुछ दैनिक ऐप्स खोलता है। इस स्क्रिप्ट को जीनोम में काम करना चाहिए। मैं अब तक कि लिखा है:जीनोम

#!/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 

लेकिन, यह काम नहीं करता। मेरे ऐप्स खुलते हैं, लेकिन उन्हें निर्दिष्ट डेस्कटॉप पर असाइन नहीं किया जाएगा :(

संपादित करें: मैंने नींद का मूल्य बदलकर 15 कर दिया है ... केवल फ़ायरफ़ॉक्स & नेटबीन्स सही तरीके से असाइन किए गए हैं, शेष कार्यक्षेत्र में खुलते हैं जहाँ मैं स्क्रिप्ट को निष्पादित से ...

+0

आप किस विंडो मैनेजर का उपयोग करते हैं, जीनोम? –

+0

हां, मैं इसे विवरण में जोड़ दूंगा :) – Rolf

+0

क्या आप xinerama का उपयोग कर रहे हैं? – Anders

उत्तर

3

अकीरा टिप्पणी के लिए धन्यवाद, मैं अंत में यह काम करने में सफल रहा (स्क्रिप्ट एक आकर्षण की तरह स्टार्टअप पर चलाता है) यहाँ नए कोड है:

#!/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

क्या चित्रमय दृश्यपटल उपयोग करते हैं? उदाहरण के लिए जब आप ubuntu Gnome और Compiz के साथ उपयोग आप

सिस्टम> वरीयताएँ> जमावट में विंडो प्लेसमेंट सेट कर सकते हैं प्रबंधक> विंडो प्रबंधन> प्लेस विंडो

+0

हाय, मैं कंपिज़ का उपयोग नहीं करता ... – Rolf

2

चेकआउट DevilsPie, यह खिड़कियों के निर्माण को देखता है और तदनुसार कार्य करता है।

शैतान की पाई को विंडोज़ का पता लगाने के लिए कॉन्फ़िगर किया जा सकता है, और विंडो के नियमों के सेट से मेल खाता है। यदि विंडो नियमों से मेल खाती है, तो वह उस विंडो पर कार्रवाइयों की श्रृंखला कर सकती है। उदाहरण के लिए, मैं एक्स-चैट द्वारा बनाई गई सभी विंडो को सभी वर्कस्पेस पर प्रदर्शित कर सकता हूं, और मुख्य Gkrellm1 विंडो पेजर या कार्य सूची में प्रकट नहीं होती है।

या आप एक विंडो प्रबंधक का उपयोग कर सकते हैं जो एक ही घर में ऐसा करने में सक्षम है, उदाहरण के लिए। fluxbox

+0

हाय, अगर वहां है wmctrl के साथ कोई संतोषजनक समाधान नहीं है, मैं इसे जांचने वाला हूं, धन्यवाद :) – Rolf

+1

कारण है कि wmctrl आपके उदाहरण में क्यों काम नहीं करता है यह है: फ़ायरफ़ॉक्स विंडो अभी तक नहीं है जबकि आप पहले ही wmctrl कमांड को ट्रिगर करते हैं। नींद पर्याप्त नहीं है। – akira

+0

मैंने नींद के मूल्य को 15 में बदल दिया ... केवल फ़ायरफ़ॉक्स और नेटबीन सही तरीके से असाइन किए गए हैं, शेष कार्यक्षेत्र में खुलते हैं जहां मैं स्क्रिप्ट निष्पादित करता हूं ... – Rolf

1

dconf-संपादक में:

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

इसके अलावा, ऑटो-मूव-विंडोज एक्सटेंशन सक्षम होना चाहिए। – gkcn

संबंधित मुद्दे