AppleScript

AppleScript


InDesign is difficult to command via AppleScript because of the sheer size of its dictionary and its peculiar ‘dialect’. You can send a list of instructions to it to perform a sequence of any one of its thousands of functions , and by scripting the Finder (the Operating System) you can get the Finder, InDesign, Acrobat and a whole bunch of other programs to talk to each other directly and in real time. They perform their allotted asks and hand the information/data/artwork on to the next application in the workflow (group) and so on. Such a perfect democracy of collaboration and production and the division of labour.

Freedman International

– ‘Freedflow’

AppleScript for me began around 1998. Was it OS7 back then? It looked very useful but rather slow (being such a high level descriptive language that wanted to be able to do just about everything). It was also ‘quirky’ as you had to use each Application’s own Applescript dictionary. The most important step though was to purchase ScriptDebugger from LateNight Software, a fully integrated development environment for AppleScript and all the scriptable Applications on Macintosh.

I was then working for Freedman International in multilingual marcoms and thinking about writing a series of scripts to handle document (character set) conversion from PC windows to Mac, for our in-house publishing in London for all of the European languages.

The process was already achievable by running a text conversion program that allowed you to select the ‘from’ language and the ‘to’ language, as well as select the ‘from’ and ‘to’ character sets. I located a program that would do this and then I set about testing,modifying, updating and adding to the language conversion tables that were available. I created conversion tables for each european language and in doing so provided Freedman with a method of publishing multilingual content in all its varieties extremely quickly from the Mac platform. Time and Cost to Market are critical. If you can make significant reductions in both Time and Cost without compromising quality of service or your morals and ethics then you have something that significantly affects the success of a Company and its balance sheet.

TechnoDesign B.V

– TCP-IP XT and Personalizer XT

My experimentation with publishing automation progressed after taking a job in The Netherlands at TechnoDesign B.V in Sweet Lake City – (a.k.a Zoetermeer), this was after my former Employer Elateral’s IPO bombed and the Venture Capital funds ran out and 50% of Elateral’s staff were sacked, me included. I had already given Elateral the idea of writing a QuarkXPress Layering Xtension to handle ‘dynamic document construction’ when tied to a little bit of backend logic to control switching layers on and off. Honestly, they had no idea what they were doing, and once I had shown them the way by designing and testing the product, training the 3rd party developers and writing the User guide, it was adios, no longer required. The yachting at Rhode Island was nice though so I suppose it wasn’t all stabbing in the back on their part.

Anyway back to TechnoDesign. They had a TCP/IP driven scripting extension (TCP-IP XT) for QuarkXPress which could automate Quark’s document layout and construction via a list of sequential and remote commands. This was the era of creating on-line product catalogues and TCP-IP XT was my baby to develop and promote, along with Personalizer XT. I believe that Ruby had just been launched and so I designed training courses, and code examples for TCP/IP XT to be driven by AppleScript and Ruby to make the whole process simpler and faster for 3rd party developers to leverage TCP/IP XT. MY My other resposibility was to develop TCP/IP XTs instruction set so as to be able to cope with just about any publishing task that QuarkXPress could do.

I left TechnoDesign with a heavy heart. My then (Dutch) wife abducted our children and ran away to England, and after 6 months decided she had made an awful mistake. I quit, went home to England and after about a year or so we got divorced, so really I should have stayed in Holland.

Superdrug Stores plc / APS Group

– Automated POS artwork creation and impostion

In 2008 I came back to AppleScript as I watched an Artworking Studio (contracted out to APS) at Superdrug Stores manually construct artwork for Point of Sale price tickets time and time again, every week, no less. As long as the product name, sku, price and offer type were on an excel spreadheet and readable, I could write a program to extract all the data, throw it into Textwrangler, add a checking process on the data, then pass the data to InDesign CS3, which would construct the pages automatically, them pass the output to the Finder and Acrobat to store all the files and create PDFs of batches of all tickets, then run through Quite Imposing Plus to impose the artwork for Offset Print. The Application created the barcodes and automatically added them to the Price labels.

The solution saved two people about three days manual work each week. The program took about an hour to run unattended and produce the weekly output – from selecting the excel datasheet to fully imposed press ready PDF documents, completely free from any manual intervention.

This program was my first commercial Applescript project scripting the following applications to communicate with each other in real time: OSX/Finder, InDesign, Excel, Acrobat Pro, Barcode Pro, Quite Imposing and Textwrangler. It took three months to write, much of that time was getting to grips with RealBasic to provide a single App to contain all the Applescripts, provide an interface, manage various alternative processes, and keep logs.

The solution was rolled out to two other APS studios, one handling Co-Op Pharmacy, and one handling First Quench Retail, all three with different setups, systems, management styles etc. and all three solutions worked beautifully.

Co-Op Pharmacy / APS Group

– Product Price Labels

Thresher/WineRack/TheLocal / APS Group

– Product Price Labels

Script Debugger
– thanks to LateNight Software