TweetFollow Us on Twitter

Tiger. Automator

Volume Number: 21 (2005)
Issue Number: 5
Column Tag: Programming

Getting Started

Tiger. Automator

by Dave Mark

In last month's column, we learned a bit about the bash shell, then played a bit with MySQL. I was originally planning on following that up in this month's column with an intro to combining MySQL and PHP. But in between then and now, I ended up moving my baseline machines over to Tiger and, well, I ended up spending just a boatload of time playing with Tiger. So much so, that I decided to postpone my PHP MySQL column for a month so I could write about my favorite new toy, Automator.

Getting Started with Automator

Automator is an application that ships with every copy of Mac OS X 10.4, a.k.a. Tiger. Contrary to popular belief, Automator is not a replacement for AppleScript. Automator is not a scripting environment. Rather, Automator is a powerful sequencer that allows you to sequence a series of commands, called actions, to create a custom workflow.

Still confused? No problem. Let's build a couple of workflows and you'll soon see the power of Automator.

Start by launching Automator. You'll find it just where you'd expect it, in your Applications folder. Figure 1 shows the Automator icon.


Figure 1. The Automator icon.

When you launch Automator, a new, untitled workflow window will appear (see Figure 2). The workflow window is divided into 5 main areas. The upper part of the window is called the toolbar. In the workflow window shown in Figure 2, the toolbar consists of the search field (on the left), and the dimmed Run and Stop buttons (on the right).

Below the search field is the library. The library is a list of applications that support Automator, as well as example and saved workflows. An application is said to support Automator by shipping with its own set of Automator actions. For example, in Figure 2's library, iTunes is selected, and the action list (just to the right of the library list) shows all the actions that shipped with iTunes. Each time you re-launch it, Automator steps through your list of installed applications and rebuilds its library and action lists.

    Want to build your own actions? Check out Ben Waldie's excellent Mac OS X Technology Guide to Automator. The first half covers the details of using Automator. The second half tells you everything you need to know to roll your own actions, in either AppleScript or Objective-C. $14.95 for the eBook, $29.95 for the print book. Here's the link:

    http://spiderworks.com/books/automator.php

    If you've got an existing app and are even thinking about adding Automator support now or in the future, the first thing you should do is make your app scriptable. Making your app scriptable allows/encourages others to write scripts and create actions that incorporate your application into their own workflows. Once people use your app in an essential workflow, they are much less likely to switch to a competing product. Brilliant!

In addition to the toolbar, library, and action areas, the workflow window also features a workflow area and a description area. As you'll see, the workflow is where all the work gets done. We'll build a sample workflow next. In Figure 2, the workflow area says Drag or add actions here to build your workflow. The description area contains a description of the currently selected action. In Figure 2, the description area describes the action Start iTunes Playing.


Figure 2. An untitled Automator workflow window.

Building a Workflow

Nothing will connect the synapses in your brain more than actually running Automator through its paces. Let's build a workflow. Our first workflow will prompt you to select a folder, compress the folder into a .zip archive, then create a new mail message and attach the archive to the message.

In your workflow window, click on Finder in the Library list. A list of all the currently available Finder actions will appear in the Action list. Click and drag the action named Ask for Finder Items from the Action list into the workflow area (see Figure 3).


Figure 3. Adding the Ask for Finder Items action to the workflow.

As you can see in Figure 3, the Ask for Finder Items action is represented by a subpane in the workflow area. Each action comes with its own user interface and an appropriate description in the description area (lower left area of the window). Each action is numbered. As you can see in the upper-left corner of this action, the action is number 1 in our workflow sequence.

Since we want our action to prompt for a folder, select Folders from the Type: popup menu. I selected Desktop from the Start at: popup so the Finder would start prompting me at the desktop. I changed my prompt to say Choose a Folder: and I left the Allow Multiple Selection checkbox unchecked.

To test this workflow, click on the Run button on the right side of the toolbar (top of window). A panel will appear, prompting you to choose a folder (see Figure 4). Maneuver your way to a folder you like, then click the Choose button. Note that you are only allowed to select a folder, not a file, and that multiple selections are not allowed. Just as you specified. When you click the Choose button, the workflow stops.


Figure 4. This panel appears when you first run your workflow.

Not very exciting, but it does what it was supposed to. It prompted me for a folder. Since Ask for Finder Items is our only action, once we clicked Choose or Cancel, the workflow exits. Sure would be nice to be able to get a bit of feedback, make sure things are running properly. One way to do this is to open the log window. Select Show Log from the View menu. Figure 5 shows my log window after I ran my workflow. Note that the log window is extensible (drag the little dot at the bottom of the window) and that it is wiped at the beginning of each run session.


Figure 5. Automator's log window.

The log window is useful in tracking your progress, but it doesn't really show the result. In this example, it would be nice to get some feedback that Automator got the right folder. Automator provides an action, called View Results, that gives a bit of detail on the values returned by the previous action.

Click on the Automator entry in the library list, then drag the View Results action to the bottom of your workflow. Click the Run button. When prompted, select a folder and click the Choose button. Notice that the View Results action displays (see Figure 6) an AppleScript-looking result that reflects the folder you chose. You can select this text and copy it to the clipboard, if you ever find the need.


Figure 6. Adding the View Results action.

Take a closer look at the area, about 2/3 of the way across the action (from left to right), where the two actions actually connect. Figure 7 focuses in on this area. This area shows the type of data being passed along by the top action and expected by the bottom action. Notice that they match. Both actions are dealing with the same data type. As long as the types match, the data will get passed as expected and everything will end up just peachy-keen. If you pick an action that expects a different data type than you are passing, Automator will flag this by displaying the types in red and barking furiously (well, OK, not that last part). There will be times when you don't care about type mismatches (for example, if you are just ignoring the input) but that glaring red warning sign is really nice to have.


Figure 7. The interface between two actions.

Let's finish off our workflow. In the library list, click on Finder. In the action list, drag the action Create Archive into the middle of your workflow, below Ask for Finder Items but above View Results. Note that Automator automatically renumbers your actions so Create Archive becomes number two.

Figure 8 shows my version of the Create Archive action. Notice that this action features an Options disclosure triangle, which I've opened. Not all actions have Options. Worth looking for it, though. The Show Action When Run checkbox lets you customize the action's user interface, having the action prompt you for some or all of the settings instead of using the settings you specify.


Figure 8. The Create Archive action.

If you run the action again, you'll be prompted to choose a folder and that folder's contents will be saved as a .zip archive.

Let's add one last action. In the library, select Mail. In the Mail action list, select New Mail Message. Drag it below Create Archive and above View Results. Figure 9 shows my version of this action. Notice the options available to you. Run the workflow. You'll be prompted for a folder, the folder contents will be archived, a new email message will be created with the specified settings and the archive will be attached to the message. Cool beans! Now you're getting a real sense of the power of Automator. I totally love this app. Nicely done, Apple.


Figure 9. The New Mail Message action.

Take a Bow, BBEdit

One thing you'll notice as you look through the library list, is that nestled in among all the Apple applications that feature their own actions is our old buddy BBEdit. By the time you read this, there are sure to be other apps that ship with their own actions, but BBEdit was the first third party application to ship with Automator in mind. Figure 10 shows a list of the BBEdit actions.

Note that you'll need to have BBEdit 8.2 or later installed in order for the BBEdit actions to show up in Automator. Don't have BBEdit? Download the demo from http://bbedit.com. It doesn't suck!


Figure 10. The BBEdit actions.

One Final Example

I know this column is running a bit long, but I just can't help myself. Gotta do one more example. I think this one is very cool.

Start by launching iCal. In the Calendar menu, select Subscribe..., then enter this URL:

webcal://ical.mac.com/ical/DVDs.ics

Now click the Subscribe button. Your calendar should be populated with a new, weekly item called DVD Releases. Wouldn't it be cool if you could access that info in BBEdit? Maybe use BBEdit's actions to format the list in some cool way, then send the list as an email to your DVD-swapping buddies? Well, I'm not going to do all that work for you, but I will get you started.

In Automator, close any open workflows, then create a new, untitled workflow by selecting New from the File menu.

In the library list, click on iCal. Drag the action Find iCal Items to the workflow area. From the Find: popup menu, select Events. Notice that the action name changed to Find Events in iCal. Now make the Whose: sequence of popups read Calendar, then Is, then DVD Releases.

Now drag another iCal item, Event Summary, into the workflow, below the first action. In the For: popup menu, select This Week.

Finally, click on BBEdit in the library list, then drag the action New BBEdit Document to the end of your workflow. Figure 11 shows my final workflow.


Figure 11. The BBEdit workflow.

Go ahead and run the workflow. Note that the Event Summary action can take a while to cook through all the new DVDs. Figure 12 shows the BBEdit window that appeared when I ran my workflow. Note that I have my BBEdit prefs set to soft-wrap at 80 columns.


Figure 12. The new releases in a BBEdit window.

Until Next Month...

There is just so much you can do with Automator. Your assignment, should you choose to accept it, is to clean up the DVD listings. You'll want to take a look at the BBEdit actions Concatenate, Search and Replace (use grep), Delete Lines Containing, and Sort Lines. Of course, there are any number of ways to skin this cat.

Want to learn more about Automator? I already mentioned Ben Waldie's book (http://spiderworks.com/books/automator.php). Here's a pair of web sites dedicated to Automator:

http://automator.us

http://www.automatorworld.com

These sites are both well worth the visit. Lots of great examples, downloads, and other great resources. Enjoy, and see you next month!


Dave Mark is a long-time Mac developer and author and has written a number of books on Macintosh development. Dave has been writing for MacTech since its birth! Be sure to check out the new Learn C on the Macintosh, Mac OS X Edition at http://www.spiderworks.com.

 
AAPL
$97.03
Apple Inc.
-0.16
MSFT
$44.40
Microsoft Corpora
-0.47
GOOG
$593.35
Google Inc.
-2.63

MacTech Search:
Community Search:

Software Updates via MacUpdate

Audio Hijack Pro 2.11.0 - Record and enh...
Audio Hijack Pro drastically changes the way you use audio on your computer, giving you the freedom to listen to audio when you want and how you want. Record and enhance any audio with Audio Hijack... Read more
Intermission 1.1.1 - Pause and rewind li...
Intermission allows you to pause and rewind live audio from any application on your Mac. Intermission will buffer up to 3 hours of audio, allowing users to skip through any assortment of audio... Read more
Airfoil 4.8.7 - Send audio from any app...
Airfoil allows you to send any audio to AirPort Express units, Apple TVs, and even other Macs and PCs, all in sync! It's your audio - everywhere. With Airfoil you can take audio from any... Read more
Microsoft Remote Desktop 8.0.8 - Connect...
With Microsoft Remote Desktop, you can connect to a remote PC and your work resources from almost anywhere. Experience the power of Windows with RemoteFX in a Remote Desktop client designed to help... Read more
xACT 2.30 - Audio compression toolkit. (...
xACT stands for X Aaudio Compression Toolkit, an application that encodes and decodes FLAC, SHN, Monkey’s Audio, TTA, Wavpack, and Apple Lossless files. It also can encode these formats to MP3, AAC... Read more
Firefox 31.0 - Fast, safe Web browser. (...
Firefox for Mac offers a fast, safe Web browsing experience. Browse quickly, securely, and effortlessly. With its industry-leading features, Firefox is the choice of Web development professionals... Read more
Little Snitch 3.3.3 - Alerts you to outg...
Little Snitch gives you control over your private outgoing data. Track background activityAs soon as your computer connects to the Internet, applications often have permission to send any... Read more
Thunderbird 31.0 - Email client from Moz...
As of July 2012, Thunderbird has transitioned to a new governance model, with new features being developed by the broader free software and open source community, and security fixes and improvements... Read more
Together 3.2 - Store and organize all of...
Together helps you organize your Mac, giving you the ability to store, edit and preview your files in a single clean, uncluttered interface. Smart storage. With simple drag-and-drop functionality,... Read more
Cyberduck 4.5 - FTP and SFTP browser. (F...
Cyberduck is a robust FTP/FTP-TLS/SFTP browser for the Mac whose lack of visual clutter and cleverly intuitive features make it easy to use. Support for external editors and system technologies such... Read more

Latest Forum Discussions

See All

LEX Goes Free For One Day In Honor of Ne...
LEX Goes Free For One Day In Honor of New Update Posted by Jennifer Allen on July 24th, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Thomas Was Alone Goes Universal, Slashes...
Thomas Was Alone Goes Universal, Slashes Price to $3.99 Posted by Ellis Spice on July 24th, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Meerkatz Challenge Review
Meerkatz Challenge Review By Jennifer Allen on July 24th, 2014 Our Rating: :: FONDLY PUZZLINGUniversal App - Designed for iPhone and iPad Cute and challenging, Meerkatz Challenge is a fun puzzle game, particularly for fans of... | Read more »
Book Your Appointment with F.E.A.R. this...
Book Your Appointment with F.E.A.R. | Read more »
It Came From Canada: Epic Skater
For all the hate that it gets for being a pastime for slackers, skateboarding really does require a lot of skill. All those flips and spins take real athleticism, and there’s all the jargon to memorize. Fortunately for us less extreme individuals,... | Read more »
Cultures Review
Cultures Review By Jennifer Allen on July 24th, 2014 Our Rating: :: SLOW-PACED EMPIRE BUILDINGiPad Only App - Designed for the iPad Cute it might seem, but Cultures is a bit too slow paced when it comes to those pesky timers to... | Read more »
More Paintings Have Been Added to Paint...
More Paintings Have Been Added to Paint it Back! Posted by Jessica Fisher on July 24th, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
The Order of Souls Review
The Order of Souls Review By Campbell Bird on July 24th, 2014 Our Rating: :: STORY GRINDUniversal App - Designed for iPhone and iPad The Order of Souls is a free-to-play, turn-based RPG with a genre-mixing art style, interesting... | Read more »
Revolution 60 Review
Revolution 60 Review By Jordan Minor on July 24th, 2014 Our Rating: :: LASS EFFECTUniversal App - Designed for iPhone and iPad Revolution 60 is a bold, cinematic action game with ambition to spare.   | Read more »
Matter (Photography)
Matter 1.0.1 Device: iOS Universal Category: Photography Price: $1.99, Version: 1.0.1 (iTunes) Description: Add stunning 3D effects to your photos with real-time shadows and reflections. Export your creations as photos or video loops... | Read more »

Price Scanner via MacPrices.net

Global Tablet Market Grows 11% in Q2/14 Notwi...
Worldwide tablet sales grew 11.0 percent year over year in the second quarter of 2014, with shipments reaching 49.3 million units according to preliminary data from the International Data Corporation... Read more
Save on 5th generation refurbished iPod touch...
The Apple Store has Apple Certified Refurbished 5th generation iPod touches available starting at $149. Apple’s one-year warranty is included with each model, and shipping is free. Many, but not all... Read more
What Should Apple’s Next MacBook Priority Be;...
Stabley Times’ Phil Moore says that after expanding its iMac lineup with a new low end model, Apple’s next Mac hardware decision will be how it wants to approach expanding its MacBook lineup as well... Read more
ArtRage For iPhone Painting App Free During C...
ArtRage for iPhone is currently being offered for free (regularly $1.99) during Comic-Con San Diego #SDCC, July 24-27, in celebration of the upcoming ArtRage 4.5 and other 64-bit versions of the... Read more
With The Apple/IBM Alliance, Is The iPad Now...
Almost since the iPad was rolled out in 2010, and especially after Apple made a 128 GB storage configuration available in 2012, there’s been debate over whether the iPad is a serious tool for... Read more
MacBook Airs on sale starting at $799, free s...
B&H Photo has the new 2014 MacBook Airs on sale for up to $100 off MSRP for a limited time. Shipping is free, and B&H charges NY sales tax only. They also include free copies of Parallels... Read more
Apple 27″ Thunderbolt Display (refurbished) a...
The Apple Store has Apple Certified Refurbished 27″ Thunderbolt Displays available for $799 including free shipping. That’s $200 off the cost of new models. Read more
WaterField Designs Unveils Cycling Ride Pouch...
High end computer case and bag maker WaterField Designs of San Francisco now enters the cycling market with the introduction of the Cycling Ride Pouch – an upscale toolkit with a scratch-free iPhone... Read more
Kingston Digital Ships Large Capacity Near 1T...
Kingston Digital, Inc., the Flash memory affiliate of Kingston Technology Company, Inc.,has announced its latest addition to the SSDNow V300 series, the V310. The Kingston SSDNow V310 solid-state... Read more
Apple’s Fiscal Third Quarter Results; Record...
Apple has announced financial results for its fiscal 2014 third quarter ended June 28, 2014, racking up quarterly revenue of $37.4 billion and quarterly net profit of $7.7 billion, or $1.28 per... Read more

Jobs Board

Sr. Project Manager for *Apple* Campus 2 -...
…the design and construction of one building or building components of the New Apple Campus located in Cupertino, CA. They will provide project management oversight for Read more
WW Sales Program Manager, *Apple* Online St...
**Job Summary** Imagine what you could do here. At Apple , great ideas have a way of becoming great products, services, and customer experiences very quickly. Bring Read more
*Apple* Solutions Consultant (ASC) - Apple (...
**Job Summary** The ASC is an Apple employee who serves as an Apple brand ambassador and influencer in a Reseller's store. The ASC's role is to grow Apple Read more
Project Manager / Business Analyst, WW *Appl...
…a senior project manager / business analyst to work within our Worldwide Apple Fulfillment Operations and the Business Process Re-engineering team. This role will work Read more
Sr. Manager, *Apple* Deployment Programs fo...
**Job Summary** Apple is seeking candidates for a new position on the Education Content and Technology team. iPad and Mac is in the hands of millions of teachers and Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.