#target indesign
function clearGrepPreferences() {
app.findGrepPreferences = NothingEnum.NOTHING;
app.changeGrepPreferences = NothingEnum.NOTHING;
}
function getTopic (index, name) {
for (var i = 0; i < index.topics.length; i++) {
if (index.topics[i].name == name) {
return index.topics[i];
}
}
var topic = index.topics.add(name);
return topic;
}
function main () {
if (app.documents.length == 0) {
return false;
}
var doc = app.activeDocument;
clearGrepPreferences();
app.findGrepPreferences.findWhat = '^(\\dS)\\w+';
var texts = doc.findGrep(true);
clearGrepPreferences();
if (doc.indexes.length == 0) {
doc.indexes.add();
}
var index = doc.indexes[0];
for (var i = 0; i < texts.length; i++) {
var text = texts[i];
var name = text.contents.toString();
var topic = getTopic(index, name);
topic.pageReferences.add(text);
}
}
main();