I do similar projects using a FileMaker database to generate tagged text files for the people pages. The corresponding alphabetical index is generated from the database as well, because the lastname, firstname format is another field in the database.
Thanks for the input, Guy! It gives me some ideas.
I use QSA Toolworks' Helix for my dbms. It's very object oriented and non-procedural. qsatoolworks.com
A note on this:
Daniel Swanson wrote:
I've tried various js scripts which do an OK job, but they don't make the actual native markers. This means you have to wait until the book (consistiing of multiple ID files) is complete (so that all the page numbers have been established) to generate the index.
These scripts typically search for words and immediately write out the page numbers they are found on -- one shot indexing.
if (app.activeDocument.indexes.length == 0) app.activeDocument.indexes.add(); app.activeDocument.indexes.topics.add(app.selection.contents).pageReferences.add(app.selection);
The first lines only make sure there is an index to add to (per default, a new document has none).
The last line adds a selected word to the index (it must be a plain text string, hence the use of its 'contents'), and then adds a reference to the selection in the text itself.
Adding the same word a second time will for a change (quite untypically for ID's Scripting) not result in an error but simply add another page reference to the existing one.
When doing this in a loop: remember to work backwards, because the index marker itself gets inserted into the running text, and that will throw off your text indices.
Thanks, but I'm not using js scripts now that I've got exactly what I want through placing inDesign tagged text as well as Applescript.
BTW Mr. O'Rojo's input inspired me to use the tagged text feature to set an italics character style to the numerous publication titles which appear in the book. It works great.
Always wanted to try Helix. Theoretically it sounds good, especially if it works with Applescript as well as FileMaker. For structured InDesign documents I don't see how anyone can work effectively without a database. You can email me w any questions at lguyorojo at g mail.
It's been a long, long torturous road for Helix, and I've traveled it since about 1987. For me, it's been well worth the ride as I've used it extensively throughout these many years. Its language is very different: graphical UI, drag and drop. Some are put off by its lack of any procedural functions, but on the OOP side, it excels. It's very easy to add relations (tables) and hook them into the overall collection.
qsatoolworks.com just released Helix 6.2 for OS X. After having to run previous versions in OS 9 only, while OS X progressed all the way up to Mountain Lion, it's SO NICE to see it run in X! Did you know the original code was written in Pascal?! They had a ton of work to do on a shoestring for years.
As I type this, I'm finishing up my Applescript with logic to switch between page layouts based on record categories, and I'm trimming up my handlers as I go. Very excited to have my first major production script fully operational!
Message was edited by: Daniel Swanson
Well, I did it. My Applescript script is running! It's knocking out pages like gangbusters from data that came from the customer as a 50-column spreadsheet and about 1300 rows.
It's an uncommon pleasure to sit and watch those pages build, pocketa, pocketa, pocketa.
The customer will be editing the native inDesign pages using inCopy. So now I'm going to have to write a script to harvest the edits back into the database. I can't parse it field for field, as there are a number of text concatenations throughout. But I will export the respective text frames in inDesign tagged text format and then storing those in their respective document fields for each record in the database. This will enable me to both preserve the edits and to re-generate the pages in case there are any record deletions and/or additions. Where the edit text files exist, I'll simply have Applescript place them back into the respective text frames, thereby preserving any text formatting.
It has been a long-time dream of mine to be able to do this kind of work. It's one important type of work at which computers excel.
This script and versions of it for other similar jobs will make us 100 times more productive and open up new markets for us.
I'm grateful to Apple and Adobe for keep this functionality working welll in their software tools.