2010-02-21 23 views
7

में एक ऐप खोलना मुझे आश्चर्य है कि क्या एक स्क्रिप्ट बनाने के लिए सेबस्क्रिप्ट में यह संभव है कि हम एप्लिकेशन नाम और संख्या एन इनपुट के रूप में दें, इसलिए यह ऐप स्पेस के स्पेस नंबर एनएप्पलस्क्रिप्ट; अंतरिक्ष संख्या एन

में खोला गया है

मैं इसे मेटा-सेबस्क्रिप्ट बनाने के लिए चाहूंगा, इसलिए जब कंप्यूटर बूट हो जाता है और लॉगिन के बाद, प्रत्येक स्थान पर मुझे अलग-अलग ऐप्स मिलते हैं, और महत्वपूर्ण, मैं इसे स्क्रिप्ट फ़ाइल में बदल सकता हूं, न कि मैक ओएस एक्स स्पेस की प्राथमिकताओं के माध्यम से

धन्यवाद

+2

वर्तमान स्वीकृत उत्तर 10.8 में काम नहीं कर रहा है। कोई जानता है कि उसे कैसे करना है? – finiteloop

+0

और ओएसएक्स 10.9 मैवरिक्स के बारे में क्या? :) – neu242

उत्तर

7

ओएस में 10.5 या 10.6, Spaces कार्य पहुँचा जा सकता है एक्स औरके लिए स्क्रिप्ट इंटरफ़ेस के माध्यम से बदल:

tell application "Finder" 
    get id of application file "TextEdit" of folder "Applications" of startup disk 
end tell 
+0

यह बहुत अच्छा है! बस वासना सवाल, मैं टेक्स्टडिट को थंडरबर्ड में कैसे बदल सकता हूं? – flow

+0

उपरोक्त संपादित उत्तर देखें। –

+2

ध्यान दें कि ओएस एक्स 10.7 में "रिक्त स्थान प्राथमिकताएं" ऑब्जेक्ट फिर से चला गया है – Robin

0

यह अंतरिक्ष 2 के लिए अंतरिक्ष में वापस स्विच और उसके बाद करने के लिए काम करता है:

tell application "System Events" 
    set x to application bindings of spaces preferences of expose preferences 
    set x to {|com.apple.textedit|:4} & x -- Have TextEdit appear in space 4 
    set application bindings of spaces preferences of expose preferences to x 
end tell 

आप पहले से ही यह पता नहीं है, तो आप खोजक से एक आवेदन पत्र के बंडल आईडी प्राप्त कर सकते हैं 1:

tell application "System Events" 
    key code 19 using {control down} -- control+2 is switch to Display Space 2 
end tell 
delay 1.0 

tell application "System Events" 
    key code 18 using {control down} -- control+1 is switch to Display Space 1 
end tell 
delay 1.0 
संबंधित मुद्दे