Zum Inhalt springen

AppleScript

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 22. Juni 2004 um 09:22 Uhr durch Filzstift (Diskussion | Beiträge) (neu; aus en-wikipedia übersetzt). Sie kann sich erheblich von der aktuellen Version unterscheiden.
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

AppleScript ist eine Skriptsprache von Apple und wird mit Mac OS ausgeliefert. AppleScript dient dazu, Mac OS-Programme zu automatiseren und zu erweitern.

Das AppleScript basierte auf das HyperCard-Projekt. HyperCard hatte sich das Ziel gesetzt, eine auf der englischen Sprache basierenden Skriptsprache zu entwickeln. Apple sah Vorteile darin und entwickelte AppleScript auf Basis dieser Idee. Dadurch sind AppleScirpt-Programme auch für Personen, die nicht programmieren können, relativ einfach zu interpretieren.

Sprachsyntax

Apple hat sich traditionell das Ziel gesetzt, einfach zu bedienende Computer und Software zu verbreiten. In dieser Philosophie hat Apple AppleScript so entwickelt, dass es an die natürliche englische Sprache angepasst ist.

Der Aufruf einer objektorientierten Methode geschieht unter AppleScript wie folgt:

pixel 7 of row 3 of TIFF image "my bitmap"

Auf Deutsch würde es so heissen:

Pixel 7 der Zeile 3 des TIFF-Bildes "mein Bild"

In "gewöhnlichen" Sprachen wie C++ dagegen wie folgt:

getTIFF("my bitmap")->getRow(3)->getPixel(7)

Es ist hier ersichtlich, dass Apple sich bemüht, AppleScript auf der Basis der englischen Sprache zu setzen und nicht dem Trend der traditionellen Programmiersprachen zu folgen.

Applikationsübergreifende Kommunikation

AppleScript wird primär dazu benützt, andere Programme von einem Programm aus zu "fernbedienen". Mac OS bietet AppleEvents an, ein applikationsübergreifendes Kommunikationsprotokoll, mit der es möglich ist, Messages von einer Applikation zu einer anderen Applikation zu senden, so dass dieser sich wie gewünscht verhält.

So kann man zum Beispiel von iTunes aus mittels Skript Word beenden. Mit "Tell" wird eine solche Message an Word geschickt:

tell application  "Microsoft Word" to quit

Auf Deutsch:

Sage Anwendung "Microsoft Word" zum Beenden

AppleScript zur Automatisierung

AppleScript ist natürlich nicht nur für applikationsübergreifende Aufgaben entworfen. Es kann auch eingesetzt werden, zum Beispiel um häufig wiederkehrende Aufgaben zu automatisieren oder Berechnungen durchzuführen. Ein Beispiel:

set pix to 72
set answer to text returned of (display dialog "Enter in the number of inches" default answer "1")
display dialog answer & "in = " & (answer * pix) & "px"

Auf Deutsch würde es so heissen:

setze pixel auf 72
setze antwort auf zurückgegebener text von (zeige Dialog "Gebe die Länge in Inches ein" Standardantwort "1")
zeige Dialog antwort & "in = " & (antwort * pixel) & "pixel"

Es zeigt ein Dialogfeld und frägt nach der Länge in Inches. Es wird dann berechnet, wie viele Pixel auf dieser Länge geben wird. Ein zweites Dialogfeld zeigt dann das Resultat.


AppleScript Dialekte

Apple liess für eine kurze Zeit das AppleScript sogar so erweitern, so dass man die Skripte nicht zwingend auf Englisch schreiben musste. Man sollte die Skripts in der eigenen Muttersprache schreiben können. So wurde die Skriptterminologie auf Französisch, Japanisch und Italienisch übersetzt und Mac OS konnte diese von einem Dialekt auf einen anderen Dialekt übersetzen. Dies klappte zwar, doch die Entwickler von Macintosh-Software (ausserhalb Apple) liessen sich von der Mehrsprachigkeit von AppleScript nicht begeistern - zu aufwändig - und der Support war umständlich. Aus diesem Grunde wurde dieses Idee in Mac OS 8.5 und höher nicht mehr weiter verfolgt.