Externe Liste von Textvariablen mit benutzerdefiniertem Text einarbeiten

von Martin Fischer am 12.01.09 15:24 in Text

Textvariablen_benutzerdefiniert.jsx

Link zur Ursprungsdiskussion im Forum

In Gibt es eine Möglichkeit Textvariablen extern zu definieren? wurde die Möglichkeit angefragt, Textvariablen extern zu definieren und bei Bedarf einzulesen.

Hier eine Skriptstudie, die diese Aufgabe zu lösen versucht.

Voraussetzung: 
eine Textdatei, in der die benötigten Daten in folgender Struktur enthalten sind.

Variablenname:Variableninhalt[Absatzschaltung]


Das Skript prüft zunächst, ob sich in dem Verzeichnis, in dem es abgelegt ist, eine Datei 'config.txt', in welcher der Pfad zur Listendatei angegeben ist, findet. 

Wenn nicht, dann wird der Pfad zur Listendatei über einen Dialog ermittelt und in einer neu angelegten 'config.txt' festgehalten.
Fortan ermittelt das Skript bei jedem Start den Pfad zur Listendatei mit den Defininitonen über diese config.txt. Bei Bedarf (Änderung des Pfads zur Listendatei) kann die config.txt einfach gelöscht werden.

Aus dieser Listendatei werden die Definitionen von Variablennamen und -inhalt ausgelesen.
Jeder Datensatz besteht aus einem Absatz und wird durch eine Absatzschaltung begrenzt.
Er besteht aus zwei Datenfeldern, die durch einen Doppelpunkt getrennt sind (siehe auch Anhang):

Variablenname:Variableninhalt


Existiert bereits eine Variable mit dem angegebenen Namen, wird diese verwendet und mit dem neuen Inhalt befüllt. Handelt es sich dabei nicht um den erwarteten Typ (benutzerdefinierter Text), erscheint eine Fehlermeldung - das Skript macht aber weiter.
Existiert diese Variable nicht, wird sie neu angelegt und dann mit dem Inhalt befüllt.

Erweiterungsmöglichkeiten: 
Zur Erweiterung könnte man sich etwa die Verwaltung verschiedener Listen, die in einem Auswahldialog angeboten werden vorstellen.

Oder den Gegenpart zu obigem Skript: das Schreiben einer Listendatei mit allen Variablen mit benutzerdefiniertem Text: TextvariablenExport.jsx

--- 
Siehe auch das Skript variables.jsx von Peter Kahrel, mit dem sich benutzerdefinierte Textvariablen des aktiven Dokuments über einen Dialog einfach bearbeiten lassen.


Dieses Skript ist nur für Premium-Member sichtbar.
Premium-Member werden oder einloggen und diese Seite neu laden.



Skript ist lauffähig in:
InDesign Version CS4