Free

Free coded apps to suit all. No sign up, no email, usable offline, updates when I can, feedback welcome. Send feedback

How-to

Recording macros and find/change runs in Layout

Record menu commands as a macro and run saved find/change queries in order as one undo step in Layout by Zaweba, with script labels on objects.

Recording macros and find/change runs in Layout

Macros in Layout by Zaweba are deliberately simple. There's a recorder for menu commands, and you can save find/change queries and run them in order as one undo step. Third party scripts aren't supported. Within those limits, a lot of the repetitive tidying that page layout involves can be done at the press of one command.

Recording menu commands

The macro recorder watches the menu commands you use and replays them later. Think of a sequence you do every time a certain kind of job comes in: apply a set of commands to a selected frame, or prepare a page in a particular way. Record it once and replay it whenever it comes round again.

Keep each recording short and focused on one job. A short macro is easy to understand, easy to rerecord if it goes wrong, and easy to name so you'll remember what it does.

Saved find/change sequences

Text cleanup is where saved sequences shine. Copy that arrives from a writer or a client often needs the same fixes every time: double spaces after full stops, straight quotes, spaces before punctuation, tabs used for indents. Each of those can be a saved find/change query. Put them in order and run them as a sequence, and the whole cleanup happens in one go.

The sequence runs as one undo step. If the result isn't what you expected, one undo puts everything back, rather than undoing each query separately.

Order matters. A query that removes double spaces should run before one that relies on single spaces, for example. Think about each step's effect on the next, and test the sequence on a sample story before you trust it with a whole book.

Script labels

Objects can carry script labels, names you give to frames, which the command API can find. In a template where certain frames hold the price, the product name or the date, labelling them means an automated job can find the right frame by its label rather than by guessing its position.

Getting reliable results

Name your macros and sequences clearly, by what they do rather than when you made them. Keep a sample document for testing them. And when a job changes, update or rerecord the macro rather than working around it.

A good first project is the cleanup you do on every piece of supplied copy. Write down the fixes you make by hand on the next three stories that come in, turn each one into a find/change query, then save them as a sequence. By the fourth story, the cleanup that used to take ten minutes of careful searching takes one command, and because it is the same every time, nothing gets missed on a busy day.

Remember that the recorder records menu commands. It isn't a way of recording mouse movements on the page, so drawing and dragging aren't what it captures.

Where this fits

Macros and sequences sit between doing everything by hand and full automation with the command line. They're for the person who sits in front of Layout by Zaweba every day and keeps doing the same handful of steps. Recording those steps once frees that time for the design itself.