Poszukuję sposobów na ograniczenie czasu potrzebnego na otwarcie wszystkich potrzebnych aplikacji, położenie okien, otwieranie adresów URL/plików/zmienianie katalogów/itp. przed rozpoczęciem właściwego kodowania.Zapisywanie i przywracanie aplikacji i układu
W idealnym świecie pojawią się 2 przyciski oznaczone "ZAPISZ STAN" i "PRZYWRÓĆ STAN" za "projekt". Rodzaj funkcji, który można znaleźć w niektórych grach.
Jestem na komputerze Mac i spędziłem kilka godzin waląc głową w "Automatora" (który z jakiegoś powodu ma problemy z otwarciem firefoxa ze stacji dokującej), a następnie jabłka (co daje mi uczucie, że jestem w na długą przejażdżkę).
wyszukiwania w internecie doprowadziło mnie do tego skryptu:
http://snipt.net/Fotinakis/applescript-to-save-and-restore-window-positions/
#!/usr/bin/osascript
-- Usage:
-- $ osacompile -o windowPositions.compiled.scpt windowPositions.scpt
-- $ osascript windowPositions.compiled.scpt --save
-- $ osascript windowPositions.compiled.scpt --restore
-- Change this to be the list of windows you want to save/restore
property affectedProcesses : {"Chrome", "Adium", "Eclipse", "Terminal"}
property windowRecord : {}
on run argv
if (count of argv) is equal to 0 then
log "Please specify one of --save or --restore."
return
end if
tell application "System Events"
if (item 1 of argv is equal to "--save") then
set windowRecord to {}
repeat with i from 1 to count affectedProcesses
set end of windowRecord to {0, {}, {}}
end repeat
repeat with p from 1 to count affectedProcesses
set processName to (item p of affectedProcesses)
if exists process processName then
log "Process '" & processName & "' exists"
tell process processName
set numWindows to count windows
set item 1 of item p of windowRecord to numWindows
repeat with i from 1 to numWindows
set end of item 2 of item p of windowRecord to position of window i
set end of item 3 of item p of windowRecord to size of window i
end repeat
end tell
end if
end repeat
else
repeat with p from 1 to count affectedProcesses
set processName to (item p of affectedProcesses)
if exists process processName then
log "Process '" & processName & "' exists"
tell process processName
set numWindows to item 1 of item p of windowRecord
repeat with i from 1 to numWindows
set position of window i to (item i of item 2 of item p of windowRecord)
set size of window i to (item i of item 3 of item p of windowRecord)
end repeat
end tell
end if
end repeat
end if
end tell
end run
Czyni połowę pracy (zmiana rozmiaru i położenia bieżące okna), ale rozpada się na multi-monitor multi-pulpitów konfiguracji . Brak informacji kontaktowych oryginalnego autora, aby poprosić o pomoc lub opinię.
Czy ktoś może rzucić nieco światła na zapisywanie i przywracanie aplikacji i układu? Wydaje się, że to typowe zadanie, które powinno mieć pewne narzędzia pomocnicze. Najlepsze, co mam, to "tryb uśpienia", ale wydaje mi się, że muszę wykonywać pełny restart co drugi dzień i mam różne aplikacje i układ dla różnych projektów.
Może warto pytać Super Użytkownika. Możliwe, że są już aplikacje, które robią tego typu rzeczy i ktoś z SU może wiedzieć. – Herms
Hmmm może. Ja również wkleję to pytanie. Twoje zdrowie. – zaf