Jump To:
Leopard Reference Library: Scripting & Automation
AppleScript is Apple's native scripting technology. It enables users to directly control applications and parts of the Mac OS by creating English-like scripts. Developers can make applications scriptable--that is, capable of being called from and used within AppleScript scripts. Also, applications can execute scripts and send Apple events to take advantage of features of other scriptable applications. The Automator application provides a graphical interface for combining individual AppleScript-based actions to create an automated workflow.

A guided introduction and learning path for developers new to AppleScript.  
Document Descriptions
On Off
Display

Sorted by
Title
Sort by
Resource Type
Sort by
Date
Apple Event Manager Reference (HTML) (PDF)
Describes the C API for interapplication communication using Apple events.
Reference 2007-07-13
Apple Events Programming Guide (HTML) (PDF)
Provides conceptual information and programming examples for working with Apple events.
Guides 2007-10-31
AppleScript Language Guide (HTML) (PDF)
Defines the AppleScript scripting language. Includes many brief sample scripts.
Guides 2008-03-11
AppleScript Overview (HTML) (PDF)
Introduces the technology for writing scripts to control applications. Useful for scripters and application developers.
Guides 2007-10-31
AppleScript Release Notes (HTML)
Describes late breaking news and highlights of new or changed features in the latest release of AppleScript.
Release Notes 2007-12-11
AppleScript Release Notes (Mac OS X 10.4 and earlier) (HTML)
Describes late breaking news and highlights of new or changed features in previous releases of AppleScript.
Release Notes 2007-10-31
AppleScript Studio 1.4 Release Notes (HTML)
Moving Tiger AppleScript Studio Release Notes to separate document.
Release Notes 2007-12-22
AppleScript Studio Programming Guide (HTML) (PDF)
Explains how to create script-driven applications with complex user interfaces based on Cocoa UI classes. Includes tutorials.
Guides 2006-04-04
AppleScript Studio Release Notes (HTML)
Describes late-breaking news and highlights of new or changed features in the latest release of AppleScript Studio.
Release Notes 2007-10-31
AppleScript Studio Terminology Reference (HTML) (PDF)
Describes the scripting terminology for AppleScript Studio, through version 1.4.
Reference 2007-10-31
AppleScript Terminology and Apple Event Codes Reference (HTML)
Lists terms used in AppleScript, AppleScript Studio, and Standard Additions with their matching codes.
Release Notes 2006-06-28
Automator AppleScript Actions Tutorial (HTML) (PDF)
Guides you through the procedure for creating a simple Automator action implemented in AppleScript.
Guides 2007-07-18
Calling AppleScript from an Application (HTML)
QA1026: Describes how to call an AppleScript from an application written in C.
Technical Q&As 2001-04-10
Cocoa and AppleScript: From Top to Bottom (HTML)
Learn how to activate AppleScript in your application so that users can create scripts.
Articles 2004-08-23
Cocoa Scripting Guide (HTML) (PDF)
Explains how to create scriptable Cocoa applications that use the scripting definition (sdef) format.
Guides 2008-03-11
do shell script in AppleScript (HTML) (日本語 HTML)
TN2065: Frequently Asked Questions about the AppleScript "do shell script" command.
Technical Notes 2006-03-23
Duplicate Finder Items (HTML) (DMG) (ZIP)
Shows how to build an Automator action targeting Finder using AppleScript.
Sample Code 2005-06-06
How do I access files contained in my AppleScript Studio application's main bundle? (HTML)
QA1493: Explains how to access files stored within an AppleScript Studio application.
Technical Q&As 2007-02-05
Loading Scripting Additions in Mac OS X (HTML)
QA1070: Explains how to load scripting additions so you can call them using Apple events.
Technical Q&As 2005-05-06
MoreAppleEvents (HTML) (DMG) (ZIP)
Provides routines that assist with the creation and sending of Apple events and object descriptors.
Sample Code 2003-01-14
NSAppleEventDescriptor Class Reference (HTML) (PDF)
Describes the class used to access the basic data structures in an Apple event.
Reference 2007-04-10
NSAppleEventManager Class Reference (HTML) (PDF)
Describes the class used to work with Apple event handler routines and to suspend and resume event handling.
Reference 2006-05-23
NSAppleScript Additions Reference (HTML) (PDF)
Describes additions to the NSAppleScript class to provide syntax-highlighted script source.
Reference 2006-05-23
NSAppleScript Class Reference (HTML) (PDF)
Describes the class that provides the ability to load, compile, and execute scripts.
Reference 2007-07-10
NSCloneCommand Class Reference (HTML) (PDF)
Describes the class used to clone a scriptable object or objects.
Reference 2006-05-23
NSCloseCommand Class Reference (HTML) (PDF)
Describes the class used to close a scriptable object or objects--typically a document or window.
Reference 2006-06-28
NSComparisonMethods Protocol Reference (HTML) (PDF)
Describes the interface for default comparison methods in the NSSpecifierTest class.
Reference 2006-05-23
NSCountCommand Class Reference (HTML) (PDF)
Describes the class used to count the number of objects of a specified class in the specified object container.
Reference 2006-05-23
NSCreateCommand Class Reference (HTML) (PDF)
Describes the class used to create a specified scriptable object.
Reference 2006-05-23
NSDeleteCommand Class Reference (HTML) (PDF)
Describes the class used to delete a specified scriptable object or objects.
Reference 2006-05-23
NSExistsCommand Class Reference (HTML) (PDF)
Describes the class used to determine whether a specified scriptable object exists.
Reference 2006-05-23
NSGetCommand Class Reference (HTML) (PDF)
Describes the class used to get the specified value or object from the specified scriptable object.
Reference 2006-05-23
NSIndexSpecifier Class Reference (HTML) (PDF)
Describes the position of an object in a collection.
Reference 2007-04-01
NSLogicalTest Class Reference (HTML) (PDF)
Describes the class used to perform logical operations in determining the scriptable objects a command acts on.
Reference 2006-05-23
NSMiddleSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify the middle object in a collection.
Reference 2006-05-23
NSMoveCommand Class Reference (HTML) (PDF)
Describes the class used to move the specified scriptable object or objects.
Reference 2006-05-23
NSNameSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an object in a collection (or container) by name.
Reference 2006-05-23
NSPositionalSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an insertion point in a container relative to another object in the container.
Reference 2007-06-29
NSPropertySpecifier Class Reference (HTML) (PDF)
Describes the class used to specify a simple attribute value, a one-to-one relationship, or all elements of a to-many relationship.
Reference 2006-05-23
NSQuitCommand Class Reference (HTML) (PDF)
Describes the class used to quit the specified application.
Reference 2006-05-23
NSRandomSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an arbitrary object in a collection.
Reference 2006-05-23
NSRangeSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify a range of objects in a container through two delimiting objects.
Reference 2006-05-23
NSRelativeSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an object in a collection by its position relative to another object.
Reference 2006-06-28
NSScriptClassDescription Class Reference (HTML) (PDF)
Describes the class used to encapsulate the scriptability information for a scriptable class.
Reference 2007-07-17
NSScriptCoercionHandler Class Reference (HTML) (PDF)
Describes the class that provides a mechanism for converting one kind of scripting data to another.
Reference 2006-05-23
NSScriptCommand Class Reference (HTML) (PDF)
Describes the class used to represent a scripting statement and the information needed to perform the operation it specifies.
Reference 2007-07-20
NSScriptCommandDescription Class Reference (HTML) (PDF)
Describes the class used to provide a description of a script command.
Reference 2007-04-10
NSScriptExecutionContext Class Reference (HTML) (PDF)
Describes the class that provides a shared instance of the context in which the current script command is executed.
Reference 2006-05-23
NSScriptingComparisonMethods Protocol Reference (HTML) (PDF)
Describes the informal protocol used to define a set of methods for comparing script objects.
Reference 2006-05-23
NSScriptKeyValueCoding Protocol Reference (HTML) (PDF)
Describes the informal protocol used to provide additional key-value coding capabilities in a scriptable application.
Reference 2007-10-31
NSScriptObjectSpecifier Class Reference (HTML) (PDF)
Describes the abstract class used to instantiate objects that represent references to scriptable objects.
Reference 2007-06-29
NSScriptObjectSpecifiers Protocol Reference (HTML) (PDF)
Describes the informal protocol used by scriptable objects to provide a fully specified object specifier to themselves.
Reference 2006-05-23
NSScriptSuiteRegistry Class Reference (HTML) (PDF)
Describes the class used as the top-level repository of scriptability information for an application at runtime.
Reference 2007-04-10
NSScriptWhoseTest Class Reference (HTML) (PDF)
Describes the abstract class used to represent expressions for testing scriptable object inclusion.
Reference 2006-05-23
NSSetCommand Class Reference (HTML) (PDF)
Describes the class used to set values in a scriptable object.
Reference 2006-05-23
NSSpecifierTest Class Reference (HTML) (PDF)
Describes the class used to apply a test to compare a specified object to another object.
Reference 2006-06-28
NSUniqueIDSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an object in a container by unique ID.
Reference 2006-05-23
NSWhoseSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify every object in a container that matches a defined condition.
Reference 2006-06-28
NSWindowScripting Protocol Reference (HTML) (PDF)
Describes the category on NSWindow for scripting basic properties and commands of windows in scriptable applications.
Reference 2006-05-23
ODOC (HTML) (DMG) (ZIP)
Illustrates how to send an open document ('odoc') Apple event to another application process.
Sample Code 2003-01-14
Open Scripting Architecture Reference (HTML) (PDF)
Describes the API for compiling and executing scripts in applications and writing scripting components.
Reference 2007-05-07
SBSetFinderComment (HTML) (DMG) (ZIP)
Set/Get Finder Comments using Scripting Bridge
Sample Code 2007-12-04
SBSystemPrefs (HTML) (DMG) (ZIP)
Shows how to use Scripting Bridge to display a preference pane in System Preferences.
Sample Code 2008-10-13
ScriptingBridgeFinder (HTML) (DMG) (ZIP)
Using the Finder with Scripting Bridge
Sample Code 2007-12-13
ScriptingBridgeiCal (HTML) (DMG) (ZIP)
Adding/updating events in iCal using Scripting Bridge.
Sample Code 2007-12-13
ScriptView (HTML) (DMG) (ZIP)
Shows how to build a script editor application with a built-in script database using AppleScript Studio.
Sample Code 2005-06-01
XML-RPC and SOAP Programming Guide (HTML) (PDF)
Explains how to make remote procedure calls from applications or from AppleScript scripts.
Guides 2005-03-03