AppleScripts: Window Management

Programme wie Cinch, SizeUp oder Divvy kümmern sich ja bekanntlich um das Anordnen von verschiedensten Fenstern unter Mac OS X. Diese Funktionalität wollte ich nun mit Hilfe von AppleScripts erreichen, und es ist mir in einer mir ausreichenden Form gelungen.

Hier die Beschreibungen und Downloadlinks der Skripte:

1. Finder Skripte:

  • Center Finder: Öffnet ein Finder Fenster und zentriert es.
  • Split Finder: Öffnet 2 Finder Fenster mit halber Bildschirmhöhe am oberen Rand.
  • Split Finder vertical: Öffnet 2 Finder Fenster mit ganzer Bildschirmhöhe.

Alle 3 Skripte verwenden die vorhandenen Fenster, wenn keine oder zu wenige vorhanden sind, werden neue geöffnet.

Download Finder Scripts

YouTube Video zu den Finder Scripts

2. Arrange Windows Script:
Ordnet die Fenster der aktiven Programme wie folgt an:

  • 1 aktive App: Zentriert das Fenster
  • 2 aktive Apps: Vertikal halbierter Bildschirm (links, rechts jeweils ein Fenster mit voller Höhe)
  • 3 aktive Apps: Vertikal halbierter Bildschirm, die linke Seite ist zusätzlich horizontal geteilt, so entstehen auf der linken Hälfte 2 kleine und auf der rechten ein großer Bereich, der die bevorzugten Apps beinhalten soll. 
  • 4 aktive Apps: Vertikal und horizontal geteilter Bildschirm, es entstehen 4 gleich große Bereiche für die Fenster.
Versteckte, minimierte oder geschlossene Fenster werden dabei nicht berücksichtigt. Wenn keine App aktiv ist oder mehr als 5, geschieht nichts. Auch wird nur das Hauptfenster bzw. einzig offenes Fenster eines Programms benutzt.
3. Center App Script:
Wenn man mit dem Arrange Windows Script seine Fensterpositionen und Größen geändert hat, kann man sie mit diesem Skript wieder zentrieren.
Zusatz: Wie startet man diese Skripte möglichst schnell?
Lösung: Man kann eigene Shortcuts für diese Skripte vergeben, indem man sie entweder als Dienste speichert (ohne Input, mit Aktion „AppleScript ausführen“) oder die Programme FastScripts oder Apptivate benutzt. Ich bevorzuge FastScripts.
Alle Skripte können (und müssen natürlich auch) an die jeweiligen benutzerspezifischen Wünsche und Konfigurationen angepasst werden.