Xmarks Top Site in Adobe Scripting


Archive for November, 2009

December 2009 Support Services

Sunday, November 29th, 2009

support@rorohiko.com will be slower than usual for the first three weeks of December. Depending on the availability of Internet and e-mail access it might be 48 hours or more before we can reply to your e-mails. Thanks for your understanding!

TextExporter, StylePainter updated

Thursday, November 26th, 2009

This week, we’ve updated TextExporter once more – the new frame-by-frame export feature in the previous versions was not as intelligent as it should be and we think we’ve now found a better approach to export the frames in a logical ‘reading order’ – try our new TextExporter 2.1.2. We also fixed a problem with the ‘Convert Text To Black’ option on some files.

Keep in mind: TextExporter is free, but you get some cool additional features by purchasing a license for APID ToolAssistant, which is only US$25 per installed copy of InDesign.

We’re pretty sure that TextExporter will save you much more than US$25 in time and effort – so if you can spare US$25, don’t hesitate, and purchase an APID ToolAssistant license, and help us fund further development. And, last but not least, a license gives you access to a number of cool additional features in our free TextExporter, ImageLibraryLoader, and LayerLifter plug-ins.

The StylePainter freebie plug-in also got a long overdue bug fix. In a way, StylePainter is like bringing InDesign CS4’s GREP styles to InDesign CS, CS2, CS3, but it is also markedly different – even with the GREP styles in CS4, it still remains useful in a number of workflows. Check it out!

Soxy for Macintosh 1.0.2 is Available

Tuesday, November 24th, 2009

There’s a common problem when there are multiple versions of applications like Adobe® InDesign®, QuarkXPress®, Adobe Illustrator®… installed on the same computer.

Double-clicking a file’s icon will often cause the wrong application version to launch. As a result, you might unwittingly re-save a document into a more recent file format, which could be a bad thing. Maybe it’s a customer file, and the customer might not be able to open the updated file when you e-mail it back to her.

Soxy for Macintosh has now officially been released, and is available for US$19 per computer. Soxy for Windows is also already available for sale at the same price, but it is still in beta, and will probably be officially released in early 2010.

If you are interested in purchasing more than 10 licenses, you might want to contact sales@rorohiko.com to discuss a site license.

Download a 20-day fully functional demo here:

http://www.rorohiko.com/wordpress/downloads/lightning-brain-soxy

Soxy Fights An Army Of Unknown PDF Files

Monday, November 23rd, 2009


How Soxy can help you identify the PDF version of masses of PDF files with just a few clicks.


More info about Soxy:

http://www.rorohiko.com/wordpress/downloads/lightning-brain-soxy/

Avoid Costly Mistakes With An Enhanced InDesign Live Preflight – YeShore 0.0.5 Public Beta

Friday, November 20th, 2009

Our new YeShore plug-in has been made available as a public beta. YeShore supports Adobe InDesign CS4 (Mac/Windows) and enhances the built-in Live Preflight function.

With Live Preflight, you can easily avoid numerous expensive mistakes and ruined print runs.

You can draw ‘lines in the sand’ – tell InDesign what the limitations of your project are. For example, you might know ahead of time that the number of pages needs to stay below a certain limit, or that it needs to be a multiple of the imposition signature page count.

Live Preflight will gently alert you in the heat of the moment, when you inadvertently make a mistake against the guidelines you’ve set. Live Preflight allows InDesign to become your guardian angle, and ‘watch over your shoulder’ while you work.

Our YeShore plug-in enhances Live Preflight a great deal. It adds a set of additional powerful design rules to the available rule set, because the built-in rule set of Live Preflight is good, but there is a lot of room for improvement.

For a limited time, during the beta-testing period you can purchase licenses to YeShore at a reduced rate of US$49 (instead of US$69).

Click here for more info:

http://www.rorohiko.com/wordpress/yeshore/

Get A Free License For FrameReporter With InDesign Magazine

Thursday, November 19th, 2009

CliffNotes_Frame-Reporter2

Click here to take advantage of this irresistible offer (don’t forget – the code to use is FRAME09), and to read more about FrameReporter click here!

InDesign Magazine is the magazine when it comes to learning how to use InDesign efficiently.

Sure, you can roam around the menu items and help files, and post questions on user forums, and with some luck you’ll actually find the feature you need.

But more often than not, you’ll miss an important feature or trick. Nothing beats knowledge and experience when it comes to finding your way around the vastness of InDesign. InDesign Magazine is one of the easiest ways to gain those.

It contains easy-to-read articles written by a host of well-known InDesign gurus – all down-to-earth people who  speak from experience, and who know how to explain things in plain English.

Soxy for Macintosh 1.0.0 is Available

Wednesday, November 18th, 2009

There’s a common problem when there are multiple versions of applications like Adobe® InDesign®, QuarkXPress®, Adobe Illustrator®… installed on the same computer.

Double-clicking a file’s icon will often cause the wrong application version to launch. As a result, you might unwittingly re-save a document into a more recent file format, which could be a bad thing. Maybe it’s a customer file, and the customer might not be able to open the updated file when you e-mail it back to her.

Soxy for Macintosh has now officially been released, and is available for US$19 per computer. Soxy for Windows is also already available for sale at the same price, but it is still in beta, and will probably be officially released in early 2010.

If you are interested in purchasing more than 10 licenses, you might want to contact sales@rorohiko.com to discuss a site license.

Download a 20-day fully functional demo here:

http://www.rorohiko.com/wordpress/downloads/lightning-brain-soxy

New recipe: How to use Script Labels in InDesign

Tuesday, November 17th, 2009

Kris wrote a new blog post about how you can make Script Labels in InDesign work for you:

http://www.rorohiko.com/wordpress/2009/11/17/the-secret-life-of-script-labels-in-indesign/

It has a wide range of information in it – there’s something for everyone – designers, scripters, IT system architects…

Check it out!

How and why to use Script Labels in InDesign

Tuesday, November 17th, 2009

In this blog post, I want to talk a bit about the secretive Script Label in InDesign.

You might have noticed the Script Label palette, and wondered what it was used for – it’s under Windows – Automation – Script Label.

First I’ll explain what it is all about, and then I’ll dive into some practical scenarios to show you how you can use the Script Label to save lots of time. Most of the info in this blog post is applicable to Mac and Windows versions of InDesign CS, CS2, CS3 or CS4.

1. Big Word of the Day: Meta-Information

In most companies or institutions, ‘Adobe InDesign’ does not live on an island. It’s a cog in a bigger system.

There is a natural ‘flow’ of information throughout the company – orders or requests come in, and somewhere along the line, designers build or modify InDesign documents based on information they receive one way or another – a project brief, a meeting, an e-mail, a telephone call…

Then they pass the result of their work on to the next person or system down the line – as an InDesign file, an InCopy file, a PDF file, a web page, a stack of physical paper,…

In some companies, this flow of information is informal and unstructured.

In other companies (typically larger ones), the flow of information has more or less structure. There are rules and procedures and regulations. You’ll hear about things like ‘order forms’ or ‘job tickets’ or ‘job jackets’ being passed around.

Sometimes there are tangible envelopes or manilla folders with stuff in them, sometimes there is just electronic data being passed around via a central computer system…

In all this hustle and bustle, having a way to keep some tidbits of extra information about an InDesign document inside the document can come in very handy.

This extra info is not meant to be part of the printed end-result. Instead it provides you with critical info about the document: who is the customer? By when is it due? Who should you ring if you have questions? What inks can you use? What is the target resolution? How many pages can you have? And so on…

All such information is sometimes referred to as meta-information – it’s information about how to treat the information in the document.

Having the answers to questions like the ones above readily available ‘inside’ the InDesign document can make a world of difference. No need to ring around in order to figure something out if the info is right there for you to read, inside the document.

There are many ways to do this.

You might have a simple text frame out on the pasteboard with information typed into it. (On a related note – you might want to check out our free HistoryLog plug-in – it uses this idea to provide you with an automatic document history. http://www.rorohiko.com/wordpress/indesign-downloads/history-log/).

You might be using part of the document name to refer to the customer code or hold a deadline date (e.g. so you’d know that a document called RORO12_20091112.indd is related to customer code RORO12 and is due by 12-Nov-2009).

Meta-information is where the Script Label comes in handy: the Script Label is a convenient way to attach a little bit of text, any text, to a page item.

InDesign does not care what text you attach. Whatever you put into the script label won’t normally affect the output of your document – but it’ll keep the text with the page item.

2. Practical Use of the Script Label

Some people use the Script Label to tag page items for automated processing by a script – hence its name ‘Script Label’: it is very often used by script developers.

However, it is not limited to just that. Your imagination is the limit.

I’ve made up a sample scenario here – read it, and that might give you some new ideas. I’ve called this scenario ‘the todo-list-scenario’.

There’s some scripting involved, but you don’t need any scripting knowledge to make use of it – if you can follow instructions, you should be able to make this work.

The problem: imagine I have a spread with heaps of text frames, and all of these page items need to be inspected. Some of them need to be modified depending on what I find.

Suppose all these text frames contain customer comments for the Playamathing toy, and they might or might not contain a reference to a color.

There’s a frame that contains the text “I really love the red Playamathing”. Another says “The yellow Playamathing with the extra knobs is my favourite”, and so on… Imagine there are hundreds of those frames, scattered all over the layout in a fairly haphazard layout.

My task is to read all these bits of text, and change the background of the frames to match the color mentioned, if there is one. If no color is mentioned, I am to leave the background white.

How do I keep track of which ones I’ve inspected and which ones I still need to do? Script Label to the rescue!

2.1 Marking page items with a script label

First of all, I select all text frames. Then I bring up the Script Label palette and type ‘TODO’ in it. Then I click somewhere in the pasteboard area. Through that simple manipulation, I’ve now ‘marked’ all selected text frames with a script label ‘TODO’.

snap1

I now keep the Script Label palette open, and each time I finish one of the text frames, I simply remove the ‘TODO’ from the script label for that text frame.

snap2

2.2 Using Scripts

This approach is still rather cumbersome, and we’ll improve it through a few simple scripts and keyboard shortcuts. Here’s how!

Open a text editor. You could use Notepad on Windows, or TextWrangler (http://www.barebones.com) on Mac.

Don’t use the Apple-provided TextEditor – it will try to save your script in RTF format instead of plain text, and then it won’t work.

Tip: if you’re really in a bind, Stickies (the sticky-note app that comes with Mac OS X) works better than TextEditor when it comes to creating plain text files.

Type the following text into a new text file:

app.selection[0].label = "TODO";

This is a one-line script. There are a few small ‘gotchas’, and I’ll discuss those later, but it’ll do.

Save the one-line text document into a file called mark_todo.jsx

Make sure the file extension is .jsx, not something else. It’s easy to accidentally create a file called mark_todo.jsx.txt (with an extra .txt file name extension). To compound that problem, the Windows Explorer or Mac Finder are often configured to not show the final .txt, and hence such a file might look OK, yet refuse to work. Be aware that what looks like a .jsx file might not be one.

Now, store this mark_todo.jsx file in the InDesign Scripts – Scripts Panels folder. Go to your InDesign application folder, then into Scripts, then into Scripts Panels. Put the mark_todo.jsx file there.

(A method to quickly get to the Scripts Panel folder is to right-click or control-click the Application folder on the Scripts Palette in InDesign and then select Reveal in Finder or Reveal in Explorer).

snap3

Now duplicate mark_todo.jsx file, and rename the duplicated file to unmark_todo.jsx. Then open unmark_todo.jsx in your text editor and eliminate the four letters of TODO, so it reads:

app.selection[0].label = "";

snap3a

Go back to InDesign. On the Scripts Palette in InDesign, when you double-click either mark_todo.jsx or unmark_todo.jsx, they will look at the current selection, then take the very first item in that selection, and adjust the script label of that item to either be TODO or nothing.

These two scripts have some limitations, as you’ll find out. Try this: make sure no page item is selected and then double-click either one of them on the scripts palette.

blog_scriptlabel_errormessage

You get a nice big fat error dialog: the script is trying to access part of ‘the selection’ and nothing is selected, so InDesign is a little bit unhappy about that.

Not to worry! You can safely ignore this – nothing bad has happened. We’ll just live with that behavior for now – simply keep in mind that you must have a single item selected before running either script.

2.3 Using Keyboard Shortcuts

The next step is to assign some keyboard shortcuts to these two scripts. Go to Edit – Keyboard Shortcuts, and create a new set if necessary – I created a set called Todo Script Set. Go into the Product Area Scripts, and then assign shortcuts to the two scripts – on my Mac, I’ve assigned them Ctrl+T and Ctrl+U. On Windows you might want to pick some other shortcuts – pick something that works for you.

blog_scriptlabel_keyboardshortcuts

The scripts palette should now show these shortcuts next to the scripts. Bring the Script Label palette into view, select a page item and repeatedly hit Ctrl+T followed by Ctrl+U while observing the Script Label palette. The word TODO should appear and disappear from the Script Label palette each time you hit the shortcut.

That’s another step in the right direction – marking and unmarking individual page items just became a whole lot easier.

2.4 Finding marked items

Now the next question is: how to quickly find page items that still have a ‘TODO’ script label? Sadly enough the standard ‘Find’ function in InDesign does not seem to be of much help.

Scripting to the rescue! Below a script that finds the next item with a ‘TODO’ script label.

do
{
  if (app.documents.length == 0)
  {
    break;
  }

  var document = app.activeDocument;
  if (! (document instanceof Document))
  {
    break;
  }

  var currentItem = null;
  if (app.selection.length > 0)
  {
    currentItem = app.selection[0];
  }

  var undoneItems = [];
  for (var idx = 0; idx < document.allPageItems.length; idx++)
  {
    var pageItem = document.allPageItems[idx];
    if (pageItem.label == "TODO")
    {
      undoneItems.push(pageItem);
    }
  }
  if (undoneItems.length <= 0)
  {
    break;
  }

  var nextItemIdx = 0;

  if (currentItem != null)
  {
    var currentItemIdx = -1;
    var searchItemIdx = 0;
    while (currentItemIdx == -1 && searchItemIdx < undoneItems.length)
    {
       if (undoneItems[searchItemIdx] == currentItem)
       {
         currentItemIdx = searchItemIdx;
       }
       searchItemIdx++;
    }
    if (currentItemIdx >= 0)
    {
      nextItemIdx = currentItemIdx + 1;
      if (nextItemIdx >= undoneItems.length)
      {
        nextItemIdx = 0;
      }
    }
  }

  app.select(undoneItems[nextItemIdx]);
}
while (false);

I won’t elaborate on how this script works – if you’ve done some ExtendScript-ing before it should be fairly easy to follow. If you’re new to ExtendScript – simply make sure you copy the script verbatim.

Save this script to your Scripts Panel folder as next_todo.jsx.

Each time you double-click this script, the currently selected item will ‘jump’ to the next item that still has a TODO label. You can assign another shortcut key to this script – I used Ctrl+N on my Mac. Each time I hit Ctrl+N, my selection jumps to the next page item with a TODO label.

2.5 Seeing Marked Items

We’re not done yet! If you install our FrameReporter plug-in (http://www.rorohiko.com/framereporter) you can configure it to visually show the script labels. With FrameReporter active, and configured like this:

Screen shot 2009-11-18 at 3.26.27 PM

I can do Select All on my spread, and I get to see this:

Screen shot 2009-11-18 at 3.29.23 PM

I can immediately see that two of the three items still haven’t been examined. Unlike most of our plug-ins, FrameReporter is not a freebie, but it’s still a steal at just US$29.

2.6 InDesign CS4 Live Preflight

But wait, there is more! Soon, we’ll have the YeShore plug-in available which extends the InDesign CS4 Live Preflight (http://www.rorohiko.com/wordpress/yeshore). It has a number of powerful new preflight rules, one of which involves script labels.

If you have YeShore installed (e.g. because you’re on our beta program – check the web page to find out more), you can configure a rule to find all unfinished page items:

Screen shot 2009-11-18 at 3.34.43 PM

I’ve made a preflight profile called ‘Check all done’ and added a rule that says that the script label should not be TODO. With this profile active, it becomes very easy to see how many items I still have to handle, and to ‘hop’ to any items that are still marked as TODO. I simply click on one of the lines in the Preflight panel and InDesign immediately selects the corresponding item.

Screen shot 2009-11-18 at 3.37.12 PM3. Conclusion

I hope that these samples are useful! And if you’re interested, check out FrameReporter, or stay tuned to hear more about YeShore!

Cheers,

Kris

Announcing Enhancements for InDesign CS4 Live Preflight

Friday, November 6th, 2009

We’re proud to announce the start of a beta program for our latest tool: the YeShore plug-in for Adobe InDesign CS4.

Live Preflight in InDesign is a great tool – it is all about avoiding expensive mistakes. With Live Preflight, you draw lines in the sand, telling InDesign what the specifications of the job are. Then, as you work, Live Preflight keeps an eye on your work, and gives you a gentle warning each time you accidentally step out of the pre-determined bounds. So, when you accidentally place an RGB image when it should have been CMYK, it’ll tell you.

The problem with Live Preflight is that it is quite limited – there’s a lot of room for improvement.

The YeShore plug-in enhances Live Preflight and adds design rules to the InDesign CS4 – we have around ten new rules already, and we’re still adding new ones.

Click here to see a list of the new design rules we already have working:

http://www.rorohiko.com/wordpress/yeshore

We’ll be starting a beta tester program very soon, and at the time of this writing, we have five more beta-tester slots left – so, if you’re interested to give it a whirl, e-mail us at support@rorohiko.com. When e-mailing, let us know what platform you are on (Macintosh or Windows), and whether you’d like to see any other rules implemented.

Don’t dilly-dally – it’s first come, first served: we cannot cope with too many beta testers, so we’re keeping the number down to a manageable limit.

There’s something in it for you too: if you’re selected for the beta-tester program, you’ll be entitled to a free license once the plug-in is released!