Hallo Kirsten,
eine kleine Beschreibung sollte iin jedem Script stehen. Entweder am Anfang oder
im Textfeld "Beschreibung". Im ersten Fall muss man die Zeilen "auskommentieren",
das heisst, sie wie Kommentare bezeichnen, damit sie das Scripting System beim
Überprüfen oder Ausführen des Codes ignoriert.
Zum Auskommentieren setzt man entweder je zwei Bindestriche vor jede Zeile ...
-- dies ist ein Kommentar
... oder man fasst mehrere Zeilen mit Klammer und Sternchen ein:
(* mehr als eine
Zeile Beschreibung *)
Doch was ich meinte sind Tests, welche prüfen, ob die Anwenderin den Kopf bei
der Sache hat. Oder nicht. ;-)
Wenn zum Beispiel kein Dokument geöffnet oder nichts ausgewählt ist, dann kommt
beim Starten des Scripts eine Fehlermeldung, welche nur lapidar sagt:
»"InDesign CS" hat einen Fehler erhalten: "contents of last insertion point of
selection of document 1" kann nicht als ""<0008>"" gesetzt werden. «
Und wenn der Textrahmen ausgewählt ist, welcher die Tabelle enthält, dann wird
der Zeilenspalter zwar ohne Fehlermeldung eingesetzt, aber ans Ende der Textkette.
Aus diesen Gründen sollte das Script ungefähr so aussehen:
---
(*[color=#4C4D4D] Zeilenspalter.scpt
[/color][color=#4C4D4D] Ein Script zum Einsetzen des Zeichens "Tabulator für Einzug rechts"
an der Cursorposition
[/color]*)
tell application "InDesign CS"
if (count documents) is 0 then
display dialog "Bitte ein Dokument öffnen." buttons "OK" default button 1 with icon 2
error number -128
end if
tell document 1
set curSel to selection
if curSel is {} then
display dialog "Es ist nichts ausgewählt." buttons "OK" default button 1 with icon 2
error number -128
end if
if class of item 1 of curSel is not insertion point then
display dialog "Bitte die Einfügemarke in den Text einfügen." buttons "OK" default button 1 with icon 0
error number -128
end if
tell selection
set contents of insertion point -1 to "<0008>"
end tell
end tell
end tell
---
Die Befehle 'error number -128' brechen die Ausführung des Scripts ab, falls einer der
davorstehenden Dialoge gezeigt werden musste.
Gruss, Hans
als Antwort auf: [#420997]