Starting out with AppleScript

Version 22
Last Modified: Apr 10, 2014 8:53 AM

Getting started

 

Software

Although there are 3rd party editors available, you don't need any external software to write, compile or run AppleScript scripts. OS X comes bundled with the AppleScript Editor, which you can find on your startup disk at /Applications/Utilities/AppleScript Editor.app.

 

Learning Guides

Two widely recommended books for those just starting out with Applescript are

 

Apple Training Series: AppleScript 1-2-3

Sal Soghoian (Author), Bill Cheeseman (Author)

 

Learn AppleScript: The Comprehensive Guide to Scripting and Automation on Mac OS X

Hamish Sanderson (Author), Hanaan Rosenthal (Author)

 

These are available from large online book retailers and distributors in electronic and print format at quite reasonable prices (at time of writing they're around $20-$25 each). Each is a substantial volume that will serve both as tutorial and reference work.

 

There are many other books available, but I can personally recommend both the above as highly valuable. 'AppleScript 1-2-3' is probably the better of the two if you are new to AppleScript and to computer programming in general. It is one of the few computer books I've come across that genuinely lives up to the promise of 'no previous experience required'. 'Learn AppleScript' covers some more advanced topics and treats some of the same topics in more depth. The two books are best seen as complementaries rather than alternatives.

 

Apple provides some free resources, the most useful of which is:

 

The AppleScript Language Guide

http://developer.apple.com/library/mac/#documentation/applescript/conceptual/app lescriptlangguide/introduction/ASLR_intro.html

 

There is an inconspicuous 'PDF' icon at the top right of that page which will allow you to download the entire guide in PDF form, which may be more convenient than reading the online HTML version.

 

The AppleScript Overview

https://developer.apple.com/library/mac/#documentation/AppleScript/Conceptual/Ap pleScriptX/AppleScriptX.html

 

may also be of interest, though it is largely aimed at developers wishing to make their apps scriptable with AppleScript, rather than for those using AppleScript for scripting. However, if you would like or need a better conceptual understanding of AppleScript and how it fits in with the entire OS X ecology, this will be of interest.

 

Getting Started with AppleScript

You may often find references in Apple documentation to something called "Getting Started with AppleScript" but without a link.

This, and pretty much all other public domain documentation for AppleScript, has been collated on an third-party (i.e, not hosted, supported or endorsed by Apple, Inc.) site here:

 

http://applescriptlibrary.wordpress.com

 

 

Getting help

 

OS X Technologies is the ASC forum for most AppleScript questions,

https://discussions.apple.com/community/mac_os/mac_os_x_technologies

 

but they also do appear on the Developer's forum too.

https://discussions.apple.com/community/developer_forums?view=discussions

 

Perhaps the largest active community of expert and novice AppleScripters alike can be found on the Apple AppleScript mailing list:

AppleScript-Users Mail List

 

 

A useful external resource both for problem solving and general reference is

http://macscripter.net.

 

The following site also lists a number of useful links and AppleScript resources:

http://www.macosxautomation.com/applescript/index.html


Using 'do shell script'

One of AS's biggest strengths is its ability to incorporate shell scripts through the 'do shell script' command. However, this is often a source of frequent questions from new scripters. See this article for reference on the ins-and-outs of using shell scripts with AS:

 

http://developer.apple.com/library/mac/#technotes/tn2065/_index.html

 

 

 

Distributing your work

 

How do I protect my source code?

 

If you distribute your app without creating a 'run only' version, others will be able to see and modify your source code. To create a 'run only' version use File > Export... and change the File Format: to 'Application'. Check the 'run only' option at the bottom of the dialogue. Note that in earlier versions of the AppleScript Editor and as stated in some of the learning guides above, the 'run only' option was found in File > Save As...' . That is no longer the case.

 

 

How do I set the version number for my public releases?

 

See https://discussions.apple.com/message/15456673#15456673

 

 

How do I create an 'Application Support' folder for my app?

 

See https://discussions.apple.com/message/21505599#21505599