Indiscripts

Automating InDesign since 2009

Introducing IndexMatic²

IndexMatic² for InDesign is an indexing tool for those of you who make books or long documents in InDesign. This new version is derived from two scripts I've worked on several years ago —formerly IndexBrutal and IndexMatic 1,— but the code has been entirely redesigned to offer new features and higher performance…

Continue reading...

Report Page Hyphens 2.0 (beta)

In May 2010, Loïc Aigon and I have written the first draft of ReportPageHyphens, a quite basic script which is used to inventory all unattractive hyphens that occur between two pages. The preliminary version of RPH has been released in Scriptopedia and was supposed to work in InDesign CS4. Since then we have found several bugs and issues. Some of them have been reported in Scriptopedia's comment page, or in the Adobe InDesign forum. The main user request was that the script can also identify unwanted hyphens that appear in footnotes. Should we try a new approach?

Continue reading...

Wordalizer | Frequently Asked Questions [OBSOLETE]

This FAQ is now obsolete. Please check out the new version of Wordalizer.

Continue reading...

How to Implement a Basic Action Listener in InDesign

While Photoshop has a handy Actions panel that gives you the ability to record and playback simple operations, InDesign provides no way —without scripting!— to automate those daily repetitive tasks. But, hey!, why not use a script to mimic such action manager? This is my very first step in that direction...

Continue reading...

ScriptUI Challenge: JPEG Links Explorer

JpegSplorer: script for InDesign CS4/CS5 (Windows interface).

To be quite honest, I do not believe for a second that this script has a future! JpegSplorer for InDesign is nothing but an attempt to push ScriptUI to its utmost limits...

Continue reading...

My First Extendables’ Script for InDesign

A few days ago, Stijn Debrouwere has disclosed Extendables, an unprecedented open source framework for Adobe ExtendScript. So exciting! This project will interest many script developers, especially those dealing with InDesign. “If you're doing any serious scripting, Extendables will definitely make your life easier,” Stijn said. “It includes some of the newer Javascript 1.6+ Array methods like forEach, useful shortcuts/monkeypatches and modules for logging, HTTP connections and creating user interfaces.” I tested for you this yet young but already powerful scripting catalyst.

Continue reading...

Alphabetical Sort in JavaScript (and InDesign)

Surprisingly, JavaScript offers no easy way to alphabetize words in relevant order. Although the Array.sort() method is known to perform, by default, a lexicographical sort, you will find very quickly that the result is wrong in most real-life situations. Actually, the internal mechanism of JS sorting is confined to compare Unicode characters by their code points, so 'Z' (U+005A) comes before 'e' (U+0065), which itself comes before 'ç' (U+00E7), etc. Also, you have all noted with vexation that InDesign does not offer any alphabetical sort feature! Here is an experimental tool to help restore order in Latin alphabets.

Continue reading...

So What's New in InDesign CS5 Scripting DOM

Download “What's New in InDesign CS5 Scripting | Object Members” (PDF)

Download “What's New in InDesign CS5 Scripting | Enumerators” (PDF)

BookBarcode 2.03 Now Supports Batch Processing!

Today we have a new release of our barcode manager script that fully supports InDesign CS3/CS4/CS5 and includes an (exciting) requested feature: Batch Processing. If you purchased a PRO license for the previous version you can update BookBarcode for free using your private link. To newcomers, the TRY version has been updated too. Now let's see how to make it really fun to design barcodes in InDesign. . .

Continue reading...

50 InDesign Scripts and Tools for End Users

What's in my Twitter bag from the last eight months? A lot of links, of course! The below selection only focuses on some of them —not necessarily the most popular ones, but preferably the ones you may have missed.

Continue reading...

YALT 2 | Your Scripting Localization Engine

YALT (JS Script for InDesign CS3/CS4/CS5)In August 2009, we introduced YALT“Yet Another Localization Technique”— as an alternate way to manage multilingual strings and automatic localization in our InDesign scripts. I use it in my everyday projects and I definitely abandoned the native ExtendScript L10N feature, which I believe is too restrictive and not so clever. YALT is a lightweight, quickly includable and easy-to-use tool. Month after month I improved the snippet with the result that it now has nothing to do with the original version! Maybe it's time to share YALT 2.1 with you. . .

Continue reading...

On ‘everyItem( )’ – Part 2

In the previous episode we learned that every scripting DOM object is in fact an object specifier, which acts like a path in the InDesign object tree. Collection's methods only allow us to build object specifiers. Invoking a property or a method provided by a specifier causes InDesign to send a “verb-first command” to the underlying receiver(s). We will now consider how this process impacts your code, what is returned into your script and how to deal with some side effects.

Continue reading...

Composer en arabe sous InDesign CS4

Comme l'avait souligné Thomas Phinney dans son célèbre billet « World-Ready Composer in Adobe CS4 », InDesign embarque depuis la CS4 une ribambelle d'outils secrets capables de gérer l'écriture de droite à gauche propre à certaines langues, la bidirectionnalité et autres fonctionnalités qu'on pensait jusqu'alors réservées à InDesign ME. Ces goodies restent peu documentés mais sont déjà largement expérimentables grâce au scripting.

Continue reading...

On ‘everyItem( )’ – Part 1

Every collection in the scope of the InDesign Scripting DOM provides a method called everyItem. It remained undocumented until InDesign CS3, but scripting experts such as Dave Saunders had already pointed out its forcefulness and already knew how to exploit it. Here are some details about this esoteric syntax.

Continue reading...

Claquos 2 | Pie Chart Builder for InDesign

A Sample Pie Chart generated by Claquos 2

Continue reading...

Indiscripts 1st Anniversary: 25% Special Discount!

Indiscripts.com 1st AnniversaryTwelve months have passed since the publication of the first article on this website. Thanks to you visitors, bloggers, Twitter subscribers, script users and developers, Indiscripts.com gradually becomes a place to share and discover the most productive scripts for Adobe InDesign. Well, now to the gift! From today until June 6, Indiscripts offers a special 25% discount on BookBarcode and Wordalizer PRO versions. All you need to do is just fill in the order form until next sunday. Enjoy!

Operator Overloading with ExtendScript

Operator overloading in JavaScript is a controversial issue. Actually, this dangerous feature has been rejected in ECMAScript 4. However, ExtendScript allows you to override the behavior of many mathematical and logical operators on a class-by-class basis since CS2.

Continue reading...

Show Local Formatting in InDesign CS4/CS5

Show Local Formatting in InDesign

Continue reading...

Binary JavaScript Embedment (CS4/CS5)

The jsxbin format (“Binary JavaScript”) is a boon for developers because it enables them to distribute a script without exposing its precious code. The ExtendScript ToolKit (ESTK) offers an Export to Binary feature which instantly converts a human-readable js(x) file into jsxbin. InDesign can then interpret this file as if it were a pure JavaScript. The only (boring!) problem is that the encoded script is not allowed to load a persistent session through the #targetengine directive. Here is a secret trick to bypass this limitation with a single encrypted file.

Continue reading...

Wordalizer 1.25 | Create Word Clouds in InDesign

This post is now obsolete. Please check out the new version of Wordalizer.


Wordalizer is a “word cloud” generator written in JavaScript for InDesign CS4 and CS5 (Mac and Win). The current stable release (v. 1.25) is based on a new lexical parser that runs up to 100X faster than the previous beta! It also provides a number of improvements and new features: 6 source languages supported, a full word list editor, session-persistent settings, ability to rework from the active cloud, control of the minimum word length, “rarest words” option, 15 color shemes... “This script is cool, hot, and sick all at the same time. I love it.”David Blatner, InDesignSecrets.

Continue reading...

- Page 11 of 13 -