आप वास्तव में क्या हासिल करना चाहते हैं, इसके आधार पर , आपके टर्मिनल शैलियों का उपयोग करके AppleScript में कुछ विचार दिए गए हैं। ये तुलना में अधिक मजबूत हैं tput, क्योंकि यह रंगीन संकेतों द्वारा रीसेट हो जाता है। आदि (कम से कम मेरे लिए)।
यह पैथॉन को चलाने वाले सभी टैब (अभी परीक्षण के लिए कोई एसएसएच सर्वर उपलब्ध नहीं है), होमब्रे को, अन्य महासागर को:
tell application "Terminal"
repeat with w from 1 to count windows
repeat with t from 1 to count tabs of window w
if processes of tab t of window w contains "Python" then
set current settings of tab t of window w to (first settings set whose name is "Homebrew")
else
set current settings of tab t of window w to (first settings set whose name is "Ocean")
end if
end repeat
end repeat
end tell
स्क्रिप्ट के रूप में सहेजें और जितनी बार osascript Name.scptआप अपने गोले को फिर से रंगना चाहते हैं (निश्चित रूप से आप इसे शेल स्क्रिप्ट या कुछ के रूप में लपेट सकते हैं)।
यदि आप सभी लंबी चलने वाली प्रक्रियाओं को अलग-अलग तरीके से प्रदर्शित करना चाहते हैं, तो निम्न स्थिति का उपयोग करें:
if busy of tab t of window w is true then
या, आप एकल टैब की शैली सेट कर सकते हैं, मैन्युअल रूप से चयनित:
on run argv
tell application "Terminal" to set current settings of tab (item 1 of argv as number) of front window to first settings set whose name is (item 2 of argv)
end run
इसे इस तरह चलाएं:
osascript StyleTerm.scpt 3 Homebrew
-> सबसे सामने वाले टर्मिनल विंडो के तीसरे टैब में होमब्रे स्टाइल मिलता है!
यदि आप पृष्ठभूमि विंडो को संशोधित करना चाहते हैं, तो "टैब" के बाद "फ्रंट विंडो" को एक कोष्ठक की तरह अभिव्यक्ति के साथ बदलें। यदि आप हमेशा चयनित "वर्तमान टैब" को संशोधित करना चाहते हैं, तो selected tabइसके बजाय का उपयोग करें tab (item 1 of argv as number)।
.bash_profileयदि आपके लिए पहला समाधान बहुत श्रम मैनुअल है, तो इसे अपने साथ जोड़ें :
PROMPT_COMMAND='osascript "/path/to/Name.scpt"'
अब यह हर प्रॉम्प्ट से पहले ही निष्पादित हो जाता है (केवल समस्या: कुछ शुरू करने के बाद नहीं, यानी ssh। लेकिन यह विषय वैसे भी फैंसी बैश ट्रिक के बारे में नहीं है। यह सिर्फ एक सूचक है।)
Terminal -> Preferences -> Settingsरहा है, जैसे कि मैं एक कमांड के साथ ऐसा करना चाहता हूं, वैसे ही इसे बदल दिया जाएगा । मैं एक स्क्रिप्ट है कि इस तरह दिखेगा बनाना चाहते हैं:changeBackgroundTheme; ssh; changeBackgroundTheme। यह मुझे यह याद दिलाने में मदद करेगा कि वर्तमान में कौन सी खिड़कियां हैंssh।