Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03166.jsonl.gz/2374

Skript zum Index generieren
Hallo Martin + Martin,
habe mich vor längerer Zeit auch mal mit dem Skript IndexFromList.js
befasst. Aber bei mir lief es auch nicht.
Habe mir dann selbst eine Lösung gebastelt (Auf Basis von Peter Kahrels Ausführungen), die ich aber momentan in meinem "Skripte-Chaos" nicht auffinden kann.
Ausgangsbasis war eine Textdatei mit den zu suchenden Index-Einträgen/Begriffen (nur eine Index-Ebene). Zeilen jeweils mit einer Zeilenschaltung abgeschlossen.
Habe die komplette Textdatei in ein InDesign Textrahmen kopiert. (Damals wusste ich noch nicht so richtig, wie man per JS eine txt-Datei öffnen/auslesen kann).
Vor dem Starten des Skripts mußte dieser Rahmen mit den zu suchenden Begriffen aktiviert werden.
mit dem split()-Befehl wurden die Absätze (= Suchbegriffe) in ein Array eingelesen.
Dann wurde der aktivierte Textrahmen gelöscht (sonst wird der mitindexiert).
Dann eine Schleife durch die Array-Elemente und mittels myDoc.search() das geöffnete Dokument durchsucht.
Bei Übereinstimmungen einen Index-Eintrag mit dem Array-Element und der PageReference erzeugen (habe ich bei Peter "abgeschaut").
Am Ende der Schleife den Index updaten.
Fertig!
Fussnoten gab es bei mir nicht, deshalb weiß ich nicht, ob es auch mit Fussnoten funktioniert.
Bei der search()-Methode habe ich mit den Optionen caseSensitiv = true und wholeWord = true gearbeitet.
Das setzt natürlich dann bei der gelieferten Index-Liste voraus, dass es sich um komplette Suchbegriff und nicht um Teilbegriffe handelt.
D.h. wenn in der gelieferten Liste das Wort "Schlange" steht wird nur nach diesem Wort gesucht und nicht nach der Mehrzahl "Schlangen" oder einem Begriff wie z.B. "Schlagenlinie".
zaphodbeeblebroxx
Matthias
als Antwort auf: [#279523]