Używanie applescript do tworzenia przestrzeni i uruchamiania aplikacji

2

Ostatecznym celem tego, co chcę zrobić, jest:

Kiedy pracuję, używam zewnętrznego monitora z moim MBP. Mam spójny zestaw przestrzeni i aplikacji, które konfiguruję codziennie. To, co chciałbym zrobić, to stworzyć jabłkowy lub kombinację jabłek i ampułek uruchomiona aplikacja automatora stworzy potrzebną liczbę przestrzeni na każdym monitorze i otworzy odpowiednie aplikacje w każdej przestrzeni.

Nie wiem, czy najlepiej wykonać to całkowicie w Applecript, czy też, jak powiedziałem, używając kombinacji applescript do stworzenia przestrzeni i automatora, aby otworzyć większość używanych przeze mnie aplikacji i okien przeglądarki.

Stape01
źródło
nie jest to odpowiedź, ale jest mnóstwo procedur Applescript / Spaces macscripter.net/viewtopic.php?id=23453
Tetsujin
@Tetsujin, IIRC Te skrypty nie działają od wersji OS X 10.8. FWIW Spaces i Mission Control nie są naprawdę przyjazne dla skryptów, to naprawdę trafienie w zależności od tego, co próbuje się zrobić.
user3439894

Odpowiedzi:

3

Aby dodać jedną przestrzeń pulpitu do każdego monitora / wyświetlacza:

do shell script "/Applications/Mission\\ Control.app/Contents/MacOS/Mission\\ Control"
delay 0.5
tell application "System Events" to click (every button whose value of attribute "AXDescription" is "add desktop") of group 1 of process "Dock"
delay 0.5
do shell script "/Applications/Mission\\ Control.app/Contents/MacOS/Mission\\ Control 1"

Można zmodyfikować kod, aby dodać więcej pulpitów.

Aby przełączyć się na konkretną aplikację na komputer / pełny ekran w ustawieniach podwójnego wyświetlania, np. Desktop 3:

do shell script "/Applications/Mission\\ Control.app/Contents/MacOS/Mission\\ Control"
delay 0.5
try
    tell application "System Events" to click (first button whose value of attribute "AXDescription" is "exit to Desktop 3") of list 1 of group 1 of process "Dock"
on error
    tell application "System Events" to click (first button whose value of attribute "AXDescription" is "exit to Desktop 3") of list 2 of group 1 of process "Dock"

end try

Istnieją dyskusje na temat zmiany aplikacji na tryb pełnoekranowy za pomocą skryptu.

fartheraway
źródło