Auf Kommentar antworten

Textanker pflegen

In der Expertenschulung letzte Woche kam die Frage auf, ob es einen vernünftigen Weg gebe, all die Textanker zu organisieren, die sich im Laufe eines Dokumentenlebens so ansammeln.

Es gibt zwar im Menü der Hyperlink/Querverweise Palette den Punkt Hyperlinkzieloptionen, der mir immerhin eine Liste alle Ziele anzeigt.

Ich kann hiermit einzelne oder alle Ziele löschen, bzw. Ziele an andere Stellen im Text verlegen. Und dann noch relativ unübersichtlich.

Als Fingerübung habe ich daher mal das Script "show all textanchors.jsx" geschrieben. Es stellt alle Anker in einer interaktiven Liste dar.

Der wichtigste Unterschied zum eingebauten Dialog ist wohl, dass man hiermit einzelne Anker anspringen kann. So kann ich sehen, auf welche Stellen im Text sich ein Anker bezieht, bevor ich ihn lösche.

Es sind noch mehrere Ausbaustufen für das Script denkbar, zum Beispiel die Liste zu sortieren (derzeit übernimmt die Liste die interne Sortierung und das ist "Zeitpunkt der Erstellung") oder auch hier den Namen eines Ankers zu ändern. Das aber höchstens auf Anfrage. Mal schauen, ob das überhaupt jemand benutzt ;)

Unter der Motorhaube

Für die Scripter unter meinen Lesern: die Liste erscheint in einem ScriptUI-Fenster vom Typ "palette". Paletten im Gegensatz zu Dialogen sind nicht-modal. Das heißt, man kann im Dokument arbeiten, während das Fenster offen ist. Meines Wissens ist dies die einzige Möglichkeit für ein Script, etwas im Dokument zu ändern, während die UI offen ist.

Mit anderen Worten: wenn ein Script einen Dialog anzeigt, muss dieser geschlossen werden, bevor das Script im Dokument weiterarbeiten kann. Eine Palette muss in einer targetengine laufen, um nicht sofort wieder geschlossen zu werden.

So sehen Sie an diesem Beispiel...

  • wie man eine Palette einrichtet
  • wie man den OK-Knopf baut (das passiert bei der ScriptUI nicht automatisch)
  • wie eine Liste auf Markierung/Änderung reagieren kann (die Knöpfe unten werden aktiviert/deaktiviert)
  • wie man eine Liste mit mehreren Spalten erstellt

Das Script läuft nur ab CS4. Eine Liste mit mehreren Spalten ging in CS3 noch nicht.

Antworten

  • Zulässige HTML-Tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Zeilen und Absätze werden automatisch erzeugt.

Weitere Informationen über Formatierungsoptionen

Type the characters you see in this picture. (verify using audio)
Geben Sie die Zeichen ein, die in den oben gezeigten Bild zusehen sind. Wenn die Zeichen unlesbar sind, senden Sie das Formular ab und ein neues Bild wird generiert. Groß-und Kleinschreibung wird nicht beachtet.