AppleScript Articles

This is a collection of articles on AppleScript, ordered by recent hits.
Dies ist eine Sammlung von Artikeln zu AppleScript, sortiert nach aktuellen Treffern.

AppleScript Dates, the very Basics

Zur deutschen Version

This text is about AppleScript under OS X 10.6 Snow Leopard. Some of the features described are not available under older versions of Mac OS. Since I wrote several pages about AppleScript date calculations, I get many hits by people who searched about some AppleScript date problems. Several of them are about basic things like: How to find the date of tomorrow, how to find the number of the month. Here are the basics for such questions.

Download AppleScript PDF via Ghostscript

English

Attached are two (compressed) AppleScripts, “PDF_Convert.zip” and “install_Ghostscript.zip”.

PDF Convert is the folder action script. If it is attached to a folder, files dropped into it will be converted to PDF, provided they are PostScript, EPSF or PDF.

“install Ghostscript” is a utility for people not liking to use the terminal application. (Note: Before using it, see my later note on this page about a nice installer for a later version of Ghostscript.)

Read the pages below (navigation at the right) to see details

Verknüpfte Bilder in RagTime-Dokumenten einsammeln

Bei meinem letzten Posting zu »In RagTime verknüpfte Bilder im Finder zeigen« habe ich ein weiteres kleines Script auf meiner Festplatte wiedergefunden.

Das Script durchläuft alle verknüpften Bilder des vorderen RagTime-Dokuments. Es fragt nach einem Zielordner und lässt dann den Finder die Original-Bilddateien in diesen Ordner kopieren.

Das ist ganz praktisch, wenn Dokumente mit verknüpften Bildern an andere Leute weitergegeben werden sollen.

Das RagTime-Dokument im Anhang enthält das Script und keine Kurzanleitung zur Installation.

AppleScript Datum, die Grundlagen

To English Version

Dieser Text betrifft AppleScript unter Mac OS X 10.6 Snow Leopard. Einige hier beschriebene Eigenschaften gab es unter älteren Versionen von OS X nicht. Seit ich diverse Seiten über AppleScript Datumsrechnen geschrieben hab, bekomme ich viele Treffer von Leuten, die zu AppleScript-Datumsproblemen gesucht haben. Viele davon betreffen Grundlagen wie: Wie finde ich das Datum von morgen, wie finde ich die Nummer des Monats. Hier sind die Grundlagen für solche Fragen.

Einige Notizen zu AppleScript Datumsobjekten

Bei der Analyse von Google-Suchen, die zu den AppleScript Kalenderfunktionen auf diesen Seiten hab ich welche gefunden, die nach einfachen Dingen wie "Wochentag" suchten. Um ein paar Hinweise zu geben, hab ich diese Seite geschrieben.

AppleScripts im Script Editor und RagTime: Terminologiekonflikte

Bei einem Vorschlag, wie man ein bestimmtes Problem in RagTime mit AppleScript lösen kann, ist mir im RagTime-Forum ein Fehler unterlaufen (dort inzwischen korrigiert). Das kommt vor, aber in diesem Fall ist der Fehler interessant und ein wenig Diskussion dazu lohnt sich für RagTime-Scripter. Es geht um die Frage, wo AppleScript beim Kompilieren eigentlich die Begriffe sucht.

More AppleScript Date Calculations

Here are some more functions to deal with AppleScript dates. All functions are pretty short and self contained.

Zur deutschen Version

AppleScript, SQL Statements, “do shell script” and International Formats

When creating queries for a database or issuing some “do shell script”, text formats of several data types in AppleScript are an issue. This is still haunting me. All these problems are caused by software designers. The type of designers who know, what is good for you. Converting a value to a string depending on system format settings may be good for a “display dialog“ command, but it is more than nasty for somebody who needs to enter date into an SQL database using AppleScript (or doing a lot of other “do shell script” actions).

I am talking mainly about creating commands here. Hence the topic is “AppleScript data to string” and not vice versa in most of this page. (Naturally, I am thinking about a reverse strategy to get data from a database in the proper format. But this requires some more thinking, particularly regarding the date types.)

AppleScript Datumsobjekte und -berechnungen

Zwei Informatiker, Nachum Dershowitz und Edward M. Reingold, haben viele Papiere und Bücher über Kalenderalgorithmen geschrieben. Sie haben einmal angemerkt, dass dies zu einer Obsession wurde, nachdem sie einige implementiert hatten.

Finding the Executable File in an Application Bundle (AppleScript)

I run into this task when I tried to configure the Apple mechanism for launching an application at given times (“launchd”) using AppleScript.

Zwischen Ghostscript-Installationen wechseln

Der Ghostscript für Mac OS X Installer, den ich gefunden hab (siehe hier), war ein guter Grund, nach einem AppleScript zu suchen, dass den Wechsel zwischen verschiedenen Installationen erlaubt.

In RagTime verknüpfte Bilder im Finder zeigen

Vor einiger Zeit hatte ich ein Script geschrieben, dass mir verknüpfe Bilddateien in einem RagTime-Dokument im Finder anzeigt.

Das Script ist ziemlich trivial:

tell application "RagTime 6.5"
	set is_linked to false
	tell window 1
		try
			set picture_file to source file of selection
			set is_linked to true
		end try
	end tell
end tell
if is_linked then
	tell application "Finder"
		select picture_file
		activate
	end tell
end if

Dateiendungen setzen

Immer mal wieder kommt folgende Anfrage vorbei: »Ich hab viele alte RagTime-Dateien, die nicht das richtige Icon im Finder zeigen und bei Doppelklick nicht geöffnet werden.«

Meist ist bei diesen alten Dateien die fehlende Endung ».rtd« schuld.

Note on AppleScript Type Casting “as integer”

Type casting behaviour of AppleScript has strange aspects. This is particularly important when using floating point numbers as integers. The range, where this is possible, is described in Ranges of AppleScript Numbers for Integer Calculations.

Dateien zu Workshop »RagTime - AppleScript - MySQL« (mac at camp 2010)

Beim mac at camp in Naumburg/Saale vom 18. – 22. August 2010 gibt es von mir am Freitag um 19:00 von mir einen kurzen Workshop zum Thema: Wie scriptet man RagTime auf dem Mac, wie kann man dabei auch noch auf einen MySQL-Server zugreifen, um automatische Seitenlayouts mit Daten und Bildernn aus der Datenbank erzeugen.

Der Workshop führt in die Grundtechniken ein und sollte in die Lage versetzen, erfolgreich weiter zu experimentieren.

Die Demo-Dateien und das Script zum Workshop liegen im Anhang.