Beitrag von Detlef Schulz, 11.04.2008, 08:28
Das AppleScript-Dateiformat “Programm-Bundle” und seine Optionen
Ein AppleScript, das im Format “Programm-Bundle” gespeichert wird, erhält das Dateikürzel “app” - also dasselbe Dateikürzel wie ein normales Macintosh-Programm oder ein Skript im Format “Programm”. Mit einem Doppelklick wird ein Programm-Bundle direkt ausgeführt. Um es zur Bearbeitung zu öffnen, müssen Sie es daher explizit mit dem Skripteditor öffnen.
Das Icon eines Programm-Bundles ist identisch mit einem AppleScript im Format “Programm”.
Bei einem Programm-Bundle handelt es sich nicht um eine einzelne Datei, sondern um einen Ordner, der wie eine einzelne Datei behandelt wird. Wenn Sie ein solchermaßen gespeichertes Skript mit der rechten Maustaste im Finder anklicken und “Paketinhalt zeigen” auswählen, sieht die Struktur im Inneren wie in folgender Abbildung aus.
Abb. 1: Der Inhalt eines einfachen Skripts, welches als Programm-Bundle gesichert wurde.
Die Grundstruktur ist identisch mit der eines Skript-Bundles - beachten Sie daher auch die Aussagen in diesem Artikel.
main.scpt
Das eigentliche Skript befindet sich im Ordner “Contents/Resources/Scripts” und heißt “main.scpt”. Dieses Skript wird geöffnet, wenn man ein Programm-Bundle explizit im Skripteditor öffnet. Ändern Sie den Namen nicht, sonst lässt sich das Skript nicht mehr öffnen oder ausführen.
applet
Wenn man auf das Programm-Bundle doppelklickt, wird darin nicht das Skript “main.scpt”, sondern die Startdatei “applet” im Ordner “Contents/MacOS” gestartet. Bei dieser handelt es sich um das eigentliche Programm, das dann auf die Ressourcen im Bundle zugreift. “applet” gibt dem Code eine Hülle, so dass sich das Skript nach dem Start wie jedes andere Programm benimmt. Damit erhält es auch eine grundlegende (deutsch lokalisierte) Menüleiste. Beachten Sie hierzu auch den Artikel zum Format “Programm”.
applet.icns
Diese Datei enthält das Icon des Skripts. Tauschen Sie doch einfach mal diese Datei gegen ein selbst erstelltes Icon mit gleichem Namen aus, und auf Anhieb lässt sich das Skript nicht mehr als solches erkennen. Jeder wird glauben, solange er nicht in das Bundle hineinsieht, dass Sie das Programm mit Objective-C und Cocoa entwickelt haben. Zum Erstellen von Icons brauchen Sie nur ein beliebiges Bildbearbeitungsprogramm und das kleine Hilfsprogramm “Icon Composer”. Sie finden es im Ordner “/Developer/Applications/Utilities”, wenn Sie die Xcode-Umgebung von Apple installiert haben.
Der restliche Inhalt des Bundles entspricht dem Inhalt eines Bundles in einem normalen Macintosh-Programm. Dementsprechend finden sich alle Details zu deren Sinn und Organisation in der Entwicklerdokumentation von Apple. Wer hier tiefer einsteigen will, dem sei die Lektüre des “Bundle Programming Guide” von Apple ans Herz gelegt - zu finden unter:
http://developer.apple.com/documentation/CoreFoundation/ResourceManagement-date.html
Für einen Skripter ist hauptsächlich eine Eigenschaft des Programm-Bundles interessant, nämlich die, den Ordner “Resources” zur Aufbewahrung aller Dateien, die das Skript benötigt, zu verwenden - seien es Bilder, Texte, andere AppleScripts oder Code in anderen Sprachen. Fügen Sie diese Dateien einfach manuell hinzu. Mit path to resource “nameDerDatei” können Sie im Skript auf die Datei zugreifen.
Bei dem Format “Programm-Bundle” stehen beim Sichern drei Optionen zur Verfügung:
- “Nur ausführen” sorgt dafür, dass sich das Skript nicht mehr bearbeiten lässt.
- “Startdialog" blendet vor der Ausführung des Skripts den Startdialog ein und
- “Nicht automatisch beenden” sorgt dafür, dass das Skript geöffnet bleibt und auf weitere Befehle wartet.
Achtung!
Beim Sichern in anderen Formaten (Skript, Programm, Skript-Bundle oder Text) gehen alle manuellen Änderungen im Bundle oder zum Bundle hinzugefügte Dateien verloren. Bewahren Sie also immer eine Kopie des originalen Programm-Bundles auf.
Type- und Creator-Code für ein Programm-Bundle sind “APPL” und “aplt” - sie sind also identisch mit dem Format “Programm”.
Themen: E-Mail Abo | Apple
|
AppleScript
|
Mac OS
Tags: AppleScript | Leopard | Mac OS X | Skripteditor | Tiger
apple
RSS 2.0