Forenindex » Programmierung/Entwicklung » AppleScript » Texte säubern in QuarkXPress 6.1

Texte säubern in QuarkXPress 6.1

Hans Haesler
  
Beiträge gesamt: 5826

11. Jul 2004, 14:29
Bewertung:

gelesen: 699

Beitrag als Lesezeichen
Im Forum "XTensions/PlugIns" stellte blieverkus im Thema "Typesetting Marks" die Frage, ob es für QuarkXPress 6.1 eine XTension wie "Typesetting Marks" gibt. Diese wandelt doppelte Wortzwischenräume in einfache um, Bindestriche in Gedankenstriche und korrigiert die An- und Abführungszeichen. Ich bot ihm an, dafür ein Script zu entwickeln.

Nun ist meine Scriptlösung verfügbar. Sie kann hier heruntergeladen werden: http://www.fachhefte.ch (Link "AppleScripts", Ordner "mac_os_x_d", Datei "CleanUpQXPText_X.sit"). Damit das Suchen und Ersetzen überhaupt möglich wird, muss auch die Scripting Addition "Satimage.osax" installiert werden. Diese befindet sich am selben Ort, im Ordner "z_additions_os_x". Das Stuffit-Archiv "satimage_osax.sit" wiegt 440 KB. Es enthält ein kurze Anleitung zur Installation.

Der Anwender wählt den Text, welchen er säubern möchte, aus und startet das Script (ab QXP-Script-Menü). Das Suchen und Ersetzen wir dnicht direkt in der Textbox vorgenommen, weil die Satimage.osax nur Text im Speicher behandlen kann. Die Auswahl wird im XPress-Tags-Format in eine temporäre Text-Datei exportiert und dann in die Variable 'aString' eingelesen. Mit diesen Befehlen wird das Suchen und Ersetzen durchgeführt:
-- Zwei oder mehr Wortzwischenräume werden durch einen ersetzt
set aString to change " [ ]+" into " " in aString with regexp
-- Ein Divis umgeben von Zwischenräumen wird durch einen Halbgeviertstrich ersetzt
set aString to change " - " into " – " in aString
-- Ein Divis gefolgt von einem Komma wird durch einen Halbgeviertstrich ersetzt
set aString to change " -, " into " –, " in aString
-- Die An- und Abführungszeichen werden durch Schreibmaschinen-Anführungszeichen ersetzt
-- (beim Importieren wandelt XPress diese ins aktuell gültige Format um)
set aString to change "[»«„“”]" into "\"" in aString with regexp

Anschliessend wird die gesäuberte Textkette wieder in die Datei auf der Harddisk zurückgesichert und dann in die Auswahl importiert.

Nun hoffe ich, dass der Forumteilnehmer blieverkus mit diesem Script zufrieden sein wird.

Hans Haesler <hsa@ringier.ch>

Texte säubern in QuarkXPress 6.1

Anonym
Beiträge gesamt: 22827

13. Jul 2004, 16:59
Bewertung:

gelesen: 698

Beitrag als Lesezeichen
Hallo Hans, ich bin mit dem Script nicht zufrieden, sondern schon fast glücklich.
Weil sich das Script an den "Anführungszeichen"-Preferenzen orientiert, macht es nicht nur deutsche An- und Abführungen aus Inch-Zeichen, sondern wahlweise auch englische und sogar französische, was mich bei den Umbrüchen für einen Verlagskunden immer Nerven (und Zeit) gekostet hat.
Ich habe das Script nur an einem dreiseitigen Text ausprobiert, aber soweit ich sehen konnte, bleiben alle Formatierungen erhalten, das Teil ist sehr schnell - was will man mehr?
Herzlichen Dank, so macht Mengentext fast wieder Spaß :-)

Burkhard

Texte säubern in QuarkXPress 6.1

Hans Haesler
  
Beiträge gesamt: 5826

13. Jul 2004, 21:23
Bewertung:

gelesen: 698

Beitrag als Lesezeichen
Hallo Burkhard,

bitteschön!

Ich bin froh, dass Dir das Script die Arbeit erleichtert. Wenn Dir dabei noch etwas in den Sinn kommen
sollte, das man an Suchen- und Ersetzen-Befehlen noch hinzufügen könnte, dann nur melden.

Das aktuelle Script verlangt, dass der Text ausgewählt werden muss. Denkbar wäre auch, dass man
mehrere Textboxen selektieren könnte. Doch dazu müsste das Script umgeschrieben werden.

Wie ich im QuarkXPress-Forum geschrieben gabe, wäre es vorteilhafter, die Texte zu säubern,
bevor sie in die XPress-Textboxen geladen werden. Aber dies bedingt Dateien im Nur-Text-Format
und natürlich eine angepasste Version des Scripts.

Dies nur so als Anregung &#133;

Hans Haesler <hsa@ringier.ch>