Mac workflow: arrange multiple windows

A probléma

  • több, egymás mellé pakolt ablakban szeretnénk dolgozni különböző szoftverekkel
  • az aktuális feladattól függően más-más alkalmazásablakokra van szükségünk más-más layouttal
  • az egyszer már jól beállított munkakörnyezetet a lehető legkevesebb pöcsöléssel szeretnénk újra beállítani

A megoldás

A layourok elmentéséhez Moom-ot fogunk használni. A Many Tricks alkalmazása rengeteg egyéb mellett képes arra, hogy az épp látható ablakok méretét és pozícióját úgynevezett Snapshotként elmentse és ezt az állapotot aztán visszaállítsa. Ezeket a snapshotokat aztán aktiválhatjuk a Moom menüjéből, vagy akár egy keyboard shortcut segítségével, de mi most inkább az Alfred nevű launchert fogjuk megkérni arra, hogy segítsen ebben.

Gyártunk Alfredben egy workflowt, ami egy script filterrel összeszedi nekünk a lementett snapshotokat, aztán pedig megkéri a user által kiválasztott snapshot beállítására a Moom-ot.

A nagyon szimpla workflownk így néz ki:

mooms-workflow-dataflow

A script filterünkbe egy Alfred által kívánt formátumú XML-t kell legyártanunk, majd azt átadnunk a launchernek, amiből ő megjeleníti a snapshot listát:

mooms-workflow-in-action

Így néz ki a script filterünk snapshot gyűjtést végző része:

tell application "Moom"
	set snaps to list of snapshots
	
	set xml to ""
	set xml to xml & ""
	
	repeat with snap in snaps
		set xml to xml & ""
		set xml to xml & "" & snap & ""
		set xml to xml & "/Applications/Moom.app"
		set xml to xml & ""
	end repeat
	
	set xml to xml & ""
	
end tell

return xml

Ezt a selectort már csak egy Applescript futtató elemmel kell összedrótozni, amiben megkérjük a Moom-ot a kiválasztott snapshot beállítására:

on alfred_script(q)
	tell application "Moom"
		arrange windows according to snapshot named q
	end tell
end alfred_script

Voila – az eredmény az Alfredből aktiválható snapshot lista. Lusták szedhetik innen.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.