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
$102.50
Apple Inc.
+0.25
MSFT
$45.43
Microsoft Corpora
+0.55
GOOG
$571.60
Google Inc.
+2.40

MacTech Search:
Community Search:

Software Updates via MacUpdate

Path Finder 6.5.5 - Powerful, award-winn...
Path Finder is a file browser that combines the familiar Finder interface with the powerful utilities and innovative features. Just a small selection of the Path Finder 6 feature set: Dual pane... Read more
QuarkXPress 10.2.1 - Desktop publishing...
With QuarkXPress, you can communicate in all the ways you need to -- and always look professional -- in print and digital media, all in a single tool. Features include: Easy to Use -- QuarkXPress is... Read more
Skype 6.19.0.450 - Voice-over-internet p...
Skype allows you to talk to friends, family and co-workers across the Internet without the inconvenience of long distance telephone charges. Using peer-to-peer data transmission technology, Skype... Read more
VueScan 9.4.41 - Scanner software with a...
VueScan is a scanning program that works with most high-quality flatbed and film scanners to produce scans that have excellent color fidelity and color balance. VueScan is easy to use, and has... Read more
Cloud 3.0.0 - File sharing from your men...
Cloud is simple file sharing for the Mac. Drag a file from your Mac to the CloudApp icon in the menubar and we take care of the rest. A link to the file will automatically be copied to your clipboard... Read more
LibreOffice 4.3.1.2 - Free Open Source o...
LibreOffice is an office suite (word processor, spreadsheet, presentations, drawing tool) compatible with other major office suites. The Document Foundation is coordinating development and... Read more
SlingPlayer Plugin 3.3.20.505 - Browser...
SlingPlayer is the screen interface software that works hand-in-hand with the hardware inside the Slingbox to make your TV viewing experience just like that at home. It features an array of... Read more
Get Lyrical 3.8 - Auto-magically adds ly...
Get Lyrical auto-magically add lyrics to songs in iTunes. You can choose either a selection of tracks, or the current track. Or turn on "Active Tagging" to get lyrics for songs as you play them.... Read more
Viber 4.2.2 - Send messages and make cal...
Viber lets you send free messages and make free calls to other Viber users, on any device and network, in any country! Viber syncs your contacts, messages and call history with your mobile device,... Read more
Cocktail 7.6 - General maintenance and o...
Cocktail is a general purpose utility for OS X that lets you clean, repair and optimize your Mac. It is a powerful digital toolset that helps hundreds of thousands of Mac users around the world get... Read more

Latest Forum Discussions

See All

Rhonna Designs Magic (Photography)
Rhonna Designs Magic 1.0 Device: iOS Universal Category: Photography Price: $1.99, Version: 1.0 (iTunes) Description: Want to sprinkle *magic* on your photos? With RD Magic, you can add colors, filters, light leaks, bokeh, edges,... | Read more »
This Week at 148Apps: August 25-29, 2014
Shiny Happy App Reviews   | Read more »
Qube Kingdom – Tips, Tricks, Strategies,...
Qube Kingdom is a tower defense game from DeNA. You rally your troops – magicians, archers, knights, barbarians, and others – and fight against an evil menace looking to dominate your kingdom of tiny squares. Planning a war isn’t easy, so here are a... | Read more »
Qube Kingdom Review
Qube Kingdom Review By Nadia Oxford on August 29th, 2014 Our Rating: :: KIND OF A SQUARE KINGDOMUniversal App - Designed for iPhone and iPad Qube Kingdom has cute visuals, but it’s a pretty basic tower defense game at heart.   | Read more »
Fire in the Hole Review
Fire in the Hole Review By Rob Thomas on August 29th, 2014 Our Rating: :: WALK THE PLANKUniversal App - Designed for iPhone and iPad Seafoam’s Fire in the Hole looks like a bright, 8-bit throwback, but there’s not enough booty to... | Read more »
Alien Creeps TD is Now Available Worldwi...
Alien Creeps TD is Now Available Worldwide Posted by Ellis Spice on August 29th, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Dodo Master Review
Dodo Master Review By Jordan Minor on August 29th, 2014 Our Rating: :: NEST EGGiPad Only App - Designed for the iPad Dodo Master is tough but fair, and that’s what makes it a joy to play.   | Read more »
Motorsport Manager Review
Motorsport Manager Review By Lee Hamlet on August 29th, 2014 Our Rating: :: MARVELOUS MANAGEMENTUniversal App - Designed for iPhone and iPad Despite its depth and sense of tactical freedom, Motorsport Manager is one of the most... | Read more »
Motorsport Manager – Beginner Tips, Tric...
The world of Motorsport management can be an unforgiving and merciless one, so to help with some of the stress that comes with running a successful race team, here are a few hints and tips to leave your opponents in the dust. | Read more »
CalPal Update Brings the App to 2.0, Add...
CalPal Update Brings the App to 2.0, Adds Lots of New Stuff Posted by Ellis Spice on August 29th, 2014 [ permalink ] | Read more »

Price Scanner via MacPrices.net

Apple now offering refurbished 21-inch 1.4GHz...
The Apple Store is now offering Apple Certified Refurbished 21″ 1.4GHz iMacs for $929 including free shipping plus Apple’s standard one-year warranty. Their price is $170 off the cost of new models,... Read more
Save $50 on the 2.5GHz Mac mini, on sale for...
B&H Photo has the 2.5GHz Mac mini on sale for $549.99 including free shipping. That’s $50 off MSRP, and B&H will also include a free copy of Parallels Desktop software. NY sales tax only. Read more
Save up to $300 on an iMac with Apple refurbi...
The Apple Store has Apple Certified Refurbished iMacs available for up to $300 off the cost of new models. Apple’s one-year warranty is standard, and shipping is free. These are the best prices on... Read more
The Rise of Phablets
Carlisle & Gallagher Consulting Group, a businesses and technology consulting firm focused solely on the financial services industry, has released an infographic depicting the convergence of... Read more
Bad Driver Database App Allows Good Drivers t...
Bad Driver Database 1.4 by Facile Group is a new iOS and Android app that lets users instantly input and see how many times a careless, reckless or just plain stupid driver has been added to the... Read more
Eddy – Cloud Music Player for iPhone/iPad Fre...
Ukraine based CapableBits announces the release of Eddy, its tiny, but smart and powerful cloud music player for iPhone and iPad that allows users to stream or download music directly from cloud... Read more
A&D Medical Launches Its WellnessConnecte...
For consumers and the healthcare providers and loved ones who care for them, A&D Medical, a leader in connected health and biometric measurement devices and services, has launched its... Read more
Anand Lal Shimpi Retires From AnandTech
Anand Lal Shimpi, whose AnandTech Website is famous for its meticulously detailed and thoroughgoing reviews and analysis, is packing it in. Lal Shimpi, who founded the tech site at age 14 in 1997,... Read more
2.5GHz Mac mini, Apple refurbished, in stock...
The Apple Store has Apple Certified Refurbished 2.5GHz Mac minis available for $509, $90 off MSRP. Apple’s one-year warranty is included, and shipping is free. Read more
13-inch 2.5GHz MacBook Pro on sale for $999,...
B&H Photo has the 13″ 2.5GHz MacBook Pro on sale for $999.99 including free shipping plus NY sales tax only. Their price is $100 off MSRP. Read more

Jobs Board

*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
Senior Event Manager, *Apple* Retail Market...
…This senior level position is responsible for leading and imagining the Apple Retail Team's global event strategy. Delivering an overarching brand story; in-store, Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.