Jump To:
Leopard Reference Library
AppleScript, JavaScript, Perl, PHP, Ruby, Python, various shell script dialects, and other popular scripting languages are available in Mac OS X. Developers can make their applications scriptable, enabling automation of repetitive tasks through AppleScript scripts. To make automation even easier, the Automator application offers a simple drag-and-drop interface for users to create sophisticated workflows involving Mac OS X system services and Apple applications. Developers and script writers can also create their own Automator actions, allowing applications, shell scripts, and AppleScript scripts to be called from within Automator workflows.

Learning paths for scripters, system administrators, and application developers.   Essential information about using and supporting scripts and automation.   C and Objective-C API references, organized by framework.
Document Descriptions
On Off
Display

Sort by
Title
Sorted by
Topic
Sort by
Resource Type
Sort by
Date
ScriptingDefinitions (HTML) (DMG) (ZIP)
Provides a starting sdef (scripting definition) and a completed one for the Sketch example code.
Carbon Sample Code 2008-05-30
SimpleCarbonAppleScript (HTML) (DMG) (ZIP)
A simple example illustrating how to add readable and writable AppleScript properties to Carbon Application.
Carbon Sample Code 2007-03-01
XML-RPC and SOAP Programming Guide (HTML) (PDF)
Explains how to make remote procedure calls from applications or from AppleScript scripts.
Carbon Guides 2005-03-03
AppleScript Language Guide (HTML) (PDF)
Defines the AppleScript scripting language. Includes many brief sample scripts.
Cocoa Guides 2008-03-11
AppleScript Studio Terminology Reference (HTML) (PDF)
Describes the scripting terminology for AppleScript Studio, through version 1.4.
Cocoa Reference 2007-10-31
AttachAScript (HTML) (DMG) (ZIP)
Illustrates how you can extend any Cocoa application by adding some AppleScripts to it.
Cocoa Sample Code 2006-07-27
Automator Framework Reference (HTML) (PDF)
Describes the Objective-C API for creating and working with actions used by the Automator application.
Cocoa Reference 2006-10-26
Automator Reference Update (HTML) (PDF)
Summarizes the symbols added to the Automtor framework.
Cocoa Release Notes 2007-07-25
AutoSample (HTML) (DMG) (ZIP)
How to run and display Automator workflows in your application.
Cocoa Sample Code 2007-05-23
Calling an AppleScript and providing parameters from an Application (HTML) (日本語 HTML)
QA1111: Explains calling and providing parameter values to an AppleScript event handler from an application written in C.
Cocoa Technical Q&As 2002-03-13
Calling AppleScript from an Application (HTML)
QA1026: Describes how to call an AppleScript from an application written in C.
Cocoa Technical Q&As 2001-04-10
Checkout Lets You 'Get a Mac, Start a Store': Madebysofa Does It with Python and Cocoa (HTML)
Success story on how Mac-only Checkout was built using Python and Cocoa.
Cocoa Articles 2007-07-10
Cocoa and AppleScript: From Top to Bottom (HTML)
Learn how to activate AppleScript in your application so that users can create scripts.
Cocoa Articles 2004-08-23
Cocoa Scripting Guide (HTML) (PDF)
Explains how to create scriptable Cocoa applications that use the scripting definition (sdef) format.
Cocoa Guides 2008-03-11
DeskPictAppDockMenu (HTML) (DMG) (ZIP)
How to add a dynamic Dock menu to your Cocoa application
Cocoa Sample Code 2003-01-14
The Enhanced Print Apple Event (HTML)
TN2082: Describes an enhancement to the print Apple event that gives developers more control over scripted printing.
Cocoa Technical Notes 2003-12-09
Foundation Release Notes (HTML)
Describes new features, notes, and known issues for the Foundation framework in Mac OS X v10.5.
Cocoa Release Notes 2007-10-31
HelloStudio (HTML) (DMG) (ZIP)
This is a Hello, world application built using AppleScript Studio.
Cocoa Sample Code 2006-07-28
NSAppleEventDescriptor Class Reference (HTML) (PDF)
Describes the class used to access the basic data structures in an Apple event.
Cocoa 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.
Cocoa Reference 2006-05-23
NSAppleScript Additions Reference (HTML) (PDF)
Describes additions to the NSAppleScript class to provide syntax-highlighted script source.
Cocoa Reference 2006-05-23
NSAppleScript Class Reference (HTML) (PDF)
Describes the class that provides the ability to load, compile, and execute scripts.
Cocoa Reference 2007-07-10
NSCloneCommand Class Reference (HTML) (PDF)
Describes the class used to clone a scriptable object or objects.
Cocoa 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.
Cocoa Reference 2006-06-28
NSComparisonMethods Protocol Reference (HTML) (PDF)
Describes the interface for default comparison methods in the NSSpecifierTest class.
Cocoa 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.
Cocoa Reference 2006-05-23
NSCreateCommand Class Reference (HTML) (PDF)
Describes the class used to create a specified scriptable object.
Cocoa Reference 2006-05-23
NSDeleteCommand Class Reference (HTML) (PDF)
Describes the class used to delete a specified scriptable object or objects.
Cocoa Reference 2006-05-23
NSExistsCommand Class Reference (HTML) (PDF)
Describes the class used to determine whether a specified scriptable object exists.
Cocoa 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.
Cocoa Reference 2006-05-23
NSIndexSpecifier Class Reference (HTML) (PDF)
Describes the position of an object in a collection.
Cocoa 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.
Cocoa Reference 2006-05-23
NSMiddleSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify the middle object in a collection.
Cocoa Reference 2006-05-23
NSMoveCommand Class Reference (HTML) (PDF)
Describes the class used to move the specified scriptable object or objects.
Cocoa Reference 2006-05-23
NSNameSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an object in a collection (or container) by name.
Cocoa 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.
Cocoa 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.
Cocoa Reference 2006-05-23
NSQuitCommand Class Reference (HTML) (PDF)
Describes the class used to quit the specified application.
Cocoa Reference 2006-05-23
NSRandomSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an arbitrary object in a collection.
Cocoa 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.
Cocoa 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.
Cocoa Reference 2006-06-28
NSScriptClassDescription Class Reference (HTML) (PDF)
Describes the class used to encapsulate the scriptability information for a scriptable class.
Cocoa 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.
Cocoa 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.
Cocoa Reference 2007-07-20
NSScriptCommandDescription Class Reference (HTML) (PDF)
Describes the class used to provide a description of a script command.
Cocoa 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.
Cocoa Reference 2006-05-23
NSScriptingComparisonMethods Protocol Reference (HTML) (PDF)
Describes the informal protocol used to define a set of methods for comparing script objects.
Cocoa 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.
Cocoa Reference 2007-10-31
NSScriptObjectSpecifier Class Reference (HTML) (PDF)
Describes the abstract class used to instantiate objects that represent references to scriptable objects.
Cocoa 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.
Cocoa 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.
Cocoa Reference 2007-04-10
NSScriptWhoseTest Class Reference (HTML) (PDF)
Describes the abstract class used to represent expressions for testing scriptable object inclusion.
Cocoa Reference 2006-05-23
NSSetCommand Class Reference (HTML) (PDF)
Describes the class used to set values in a scriptable object.
Cocoa 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.
Cocoa Reference 2006-06-28
NSUniqueIDSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an object in a container by unique ID.
Cocoa 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.
Cocoa 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.
Cocoa Reference 2006-05-23
Processes (HTML) (DMG) (ZIP)
This process management application uses most of AppleScript Studio's significant features.
Cocoa Sample Code 2006-07-28
Ruby and Python Programming Topics for Mac OS X (HTML) (PDF)
Describes Ruby and Python on Mac OS X, and especially the bridges between them and Objective-C and OSA (AppleScript).
Cocoa Guides 2007-10-31
SBSystemPrefs (HTML) (DMG) (ZIP)
Shows how to use Scripting Bridge to display a preference pane in System Preferences.
Cocoa Sample Code 2008-10-13
Scripting Bridge Programming Guide for Cocoa (HTML) (PDF)
Describes the Scripting Bridge technology, which bridges OSA-compliant applications to Objective-C, and explains how to use it in Cocoa programs.
Cocoa Guides 2008-03-11
Scripting Bridge Release Note (HTML)
A release note that describes the classes and techniques used to control scriptable applications from Objective-C code.
Cocoa Release Notes 2007-10-31
Scripting Interface Guidelines (HTML)
TN2106: Directions for providing a clean and consistent scripting interface for your application.
Cocoa Technical Notes 2004-03-01
ScriptingBridgeFinder (HTML) (DMG) (ZIP)
Using the Finder with Scripting Bridge
Cocoa Sample Code 2007-12-13
ScriptingDefinitions (HTML) (DMG) (ZIP)
Provides a starting sdef (scripting definition) and a completed one for the Sketch example code.
Cocoa Sample Code 2008-05-30
ScriptView (HTML) (DMG) (ZIP)
Shows how to build a script editor application with a built-in script database using AppleScript Studio.
Cocoa Sample Code 2005-06-01
SimpleScripting (HTML) (DMG) (ZIP)
Illustrates the minimal steps required to make an application scriptable.
Cocoa Sample Code 2008-05-30
SimpleScriptingObjects (HTML) (DMG) (ZIP)
How to add scriptable objects to an AppleScriptable application.
Cocoa Sample Code 2008-06-02
SimpleScriptingProperties (HTML) (DMG) (ZIP)
How to add some properties to the terminology provided by an AppleScriptable application.
Cocoa Sample Code 2008-06-02
SimpleScriptingVerbs (HTML) (DMG) (ZIP)
How to add verbs to the terminology provided by an AppleScriptable application.
Cocoa Sample Code 2008-06-02
Sketch-112 (HTML) (DMG) (ZIP)
Sketch is a Scriptable Graphics application. This sample adds certain Scriptable functionality to Sketch, as an example for use in WWDC 2005 Session 112.
Cocoa Sample Code 2005-06-06
TextEditPlus (HTML) (DMG) (ZIP)
This application is a version of TextEdit enhanced with additional document properties using AppleScript Studio.
Cocoa Sample Code 2006-07-28
Using AppleScript Scripts in Cocoa Applications (HTML)
TN2084: Explains how to work with AppleScript scripts in your Cocoa application.
Cocoa Technical Notes 2006-09-19
Using PyObjC for Developing Cocoa Applications with Python (HTML)
Learn how to build a sample Cocoa app using the Cocoa-Python bridge PyOjbC.
Cocoa Articles 2005-08-15
XML-RPC and SOAP Programming Guide (HTML) (PDF)
Explains how to make remote procedure calls from applications or from AppleScript scripts.
Cocoa Guides 2005-03-03
Apple JavaScript Coding Guidelines (HTML) (PDF)
Provides an overview of the JavaScript language, its object-oriented features, and coding best practices.
General Guides 2008-11-19
AppleScript Overview (HTML) (PDF)
Introduces the technology for writing scripts to control applications. Useful for scripters and application developers.
General Guides 2007-10-31
AppleScript Studio Programming Guide (HTML) (PDF)
Explains how to create script-driven applications with complex user interfaces based on Cocoa UI classes. Includes tutorials.
General Guides 2006-04-04
Automator Framework Reference (HTML) (PDF)
Describes the Objective-C API for creating and working with actions used by the Automator application.
General Reference 2006-10-26
Automator Programming Guide (HTML) (PDF)
Describes the concepts and tasks for developing actions, which are bundles loaded by the Automator application.
General Guides 2007-12-11
Cocoa Scripting Guide (HTML) (PDF)
Explains how to create scriptable Cocoa applications that use the scripting definition (sdef) format.
General Guides 2008-03-11
Customizing Rails Applications on Mac OS X Leopard (HTML)
Learn how to enhance your Rails application with views and web forms, AJAX, and iPhone support.
General Articles 2008-06-09
Deploying Rails Applications on Mac OS X Leopard (HTML)
Learn how to deploy your Ruby on Rails application on Mac OS X Leopard Server.
General Articles 2008-06-09
Developing Rails Applications on Mac OS X Leopard (HTML)
Learn how to develop your Ruby on Rails application using Xcode 3 and the tools in Leopard.
General Articles 2008-06-09
Shell Scripting Primer (HTML) (PDF)
A guided tour of (Bourne) shell scripting, including control structures, numerical computation, regular expressions, subroutines, and error handling.
General Guides 2009-04-08
Using Python with Quartz 2D on Mac OS X (HTML)
New article on using the Python bindings in Mac OS X to access the Quartz 2D graphics API.
General Articles 2007-07-10
WebKit DOM Programming Topics (HTML) (PDF)
Describes how to use JavaScript in web content and WebKit-based applications.
General Guides 2008-10-15
Apple JavaScript Coding Guidelines (HTML) (PDF)
Provides an overview of the JavaScript language, its object-oriented features, and coding best practices.
Internet & Web Guides 2008-11-19
HTML Scripting Guide for QuickTime (HTML) (PDF)
Defines the HTML tags and parameters used to communicate with the QuickTime browser plug-in, ActiveX control, and QuickTime Player.
Internet & Web Guides 2008-10-15
JavaScript Scripting Guide for QuickTime (HTML) (PDF)
Defines the objects, methods, and interfaces exposed to JavaScript by the QuickTime browser plug-in and ActiveX control.
Internet & Web Guides 2008-02-08
SBSendEmail (HTML) (DMG) (ZIP)
Using the Scripting Bridge to tell Mail.app to send an email message with an optional attachment.
Internet & Web Sample Code 2008-02-28
SMIL Scripting Guide for QuickTime (HTML) (PDF)
Defines support for using SMIL to communicate with the QuickTime browser plug-in, ActiveX control, and QuickTime Player.
Internet & Web Guides 2005-06-04
Using Ruby on Rails for Web Development on Mac OS X (HTML)
Learn why Mac OS X is the preferred platform for Ruby on Rails.
Internet & Web Articles 2007-06-06
WebKit DOM Programming Topics (HTML) (PDF)
Describes how to use JavaScript in web content and WebKit-based applications.
Internet & Web Guides 2008-10-15
Why is my Ruby on Rails application with FastCGI generating "'load error /etc/irbrc" errors? (HTML)
QA1494: Describes how to resolve an error encountered hosting Ruby on Rails applications on Mac OS X 10.5.
Internet & Web Technical Q&As 2007-11-28
XML-RPC and SOAP Programming Guide (HTML) (PDF)
Explains how to make remote procedure calls from applications or from AppleScript scripts.
Internet & Web Guides 2005-03-03
Apple JavaScript Coding Guidelines (HTML) (PDF)
Provides an overview of the JavaScript language, its object-oriented features, and coding best practices.
JavaScript Guides 2008-11-19
Dashboard Programming Topics (HTML) (PDF)
Explains Dashboard and WebKit technologies used in widgets.
JavaScript Guides 2009-02-04
Dashboard Reference (HTML) (PDF)
Describes the API for implementing Dashboard widgets.
JavaScript Reference 2009-02-04
Dashcode User Guide (HTML) (PDF)
Explains how to use Dashcode to create Dashboard widgets.
JavaScript Guides 2009-03-04