Keynote Scripting and Automation
As some of you may know, I've experimented with writing plugins to extend Keynote's capabilities in the past. These plugins included a rough AppleScript plugin for Keynote 1, before Apple released rudimentary AppleScript support in Keynote 2. I've been dragging my feet on writing a new AppleScript plugin for Keynote 2, but with the recent activity in Jeff Ferrell, "XML Slide Generation Possibilities?", 10:35am Jun 27, 2005 CDT about automating the replacement of text and images, I can see that many people would like to be able to come up with custom workflows to automate the creation and modification of Keynote presentations. So, I've decided to dedicate some time to write a new AppleScript plugin for Keynote 2 along with Automator actions to make it easy for people to use. My questions to anyone interested are:
- If you are an AppleScript coder, what classes/properties/commands would you like to see?
- If you are an Automator user, what actions would you like to see?
- How would you feel if the AppleScript + Automator package was released as shareware? Would $10 to $15 be a reasonable price range?
These questions aren't just hypothetical, the work's already been started!
For AppleScript experts, you can download this sdef file to see the classes and commands that have already been implemented (in the Keynote Additions suite).
For Automator users, here's a list of the actions I've thought of so far:
Getting Items
- Find Keynote Items (slideshows, slides, visuals)
- Filter Keynote Items (slideshows, slides, visuals)
- Get Specified Keynote Slides (by exact selection, index range, or index)
- Get Keynote Visuals
Working with Slides
- New Keynote Slide
- Move Keynote Slides (by absolute or relative position)
- Modify Keynote Slide Title (content, visibility)
- Modify Keynote Slide Body (bullets, visibility)
- Replace Keynote Slide Text (scope by key, class or pattern)
Working with Visuals
- New Keynote Visual
- Modify Keynote Visual (height, width, x position, y position, angle, horizontally flipped, vertically flipped, opacity, locked)
(Currently supported visuals are image, line, shape, title and body)
My intention is to release this by the end of this month or early next month. This will be followed by a second plugin dealing with iMovie/iDVD export, but I'll cover that in another thread later. I'd greatly appreciate any feedback (good or bad) on the posted questions, and anything else about this project.
Thanks in advance!