[GastForen Programme Print/Bildbearbeitung Adobe InDesign Texte reinigen per JavaScript

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

Texte reinigen per JavaScript

Hans Haesler
Beiträge gesamt: 5826

21. Feb 2016, 12:52
Beitrag # 16 von 61
Beitrag ID: #547236
Bewertung:
(6605 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Marco,

nein, mit Deinem Grep habe ich es noch nicht versucht.
Werde ich heute Abend nachholen, weil gerade unterwegs.

Gruss, Hans


als Antwort auf: [#547235]
X

Texte reinigen per JavaScript

Hans Haesler
Beiträge gesamt: 5826

21. Feb 2016, 23:16
Beitrag # 17 von 61
Beitrag ID: #547249
Bewertung:
(6530 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Marco,

ganz so einfach ist es leider nicht ...

Ich habe nun endlich Deinen Grep ins Script eingefügt. Funktioniert soweit gut.

Drei Probleme:
1. Wenn "Keine Sprache", wird nur der Apostroph korrekt umgewandelt. Die Anführungszeichen (doppelte und einfache) bleiben gerade.
2. Wenn "Französisch", ist alles okay. Bedingung: In den Vorgaben muss ‹ › als einfache AFZ eingestellt sein.
3. Im Wörterbuch sind deutsche Chevrons (» «) gewählt: nur die doppelten sind richtig. Die einfachen aber nicht.

Bemerkungen:
Zu 1.: Die Anführungszeichen sollten jenen entsprechen, welche in Texten "mit Sprache" verwendet werden.
Zu 2.: Wegen der Wörterbuch-Einstellung ‹ › können Apostrophe nicht direkt getippt werden. Es muss der Kürzel alt+Shift+¨ verwendet werden.
Schlimmer noch: Wenn Text importiert wird, erscheinen alle Apostrophe als .
Auf diese Probleme hatte ich 1999 während der Beta-Tests hingewiesen. Aber nur Häme und Spott geerntet ...
Zu 3.: 2008 schien das noch zu klappen. Aber in den Vorgaben können die einfachen Gänsefüsschen nicht als ›‹ definiert werden.

Ich habe Dir die aktuelle Beta-Version des Scripts per PM zugestellt.
Die geänderten Auswahl-Optionen:
– nichts ist ausgewählt: alle Stories des Dokuments werden behandelt (ausgenommen gesperrte Rahmen und Ebenen);
– die Einfügemarke blinkt: die ganze Textkette kommt dran;
– ein beliebiger Textrahmen von verketteten ist ausgewählt: die ganze Story wird abgeklopft.
– Text ist ausgewählt: nur die Auswahl wird behandelt.

Gruss, Hans


als Antwort auf: [#547235]

Texte reinigen per JavaScript

Marco Morgenthaler
Beiträge gesamt: 2474

22. Feb 2016, 10:39
Beitrag # 18 von 61
Beitrag ID: #547264
Bewertung:
(6461 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans

Warum sich über Probleme den Kopf zerbrechen, für die du nicht verantwortlich bist und die das Skript auch nicht lösen kann. Beispiel: Wenn ein Anwender in seinem Dokument dem Text keine Sprache zuweist, wie soll das Skript denn wissen, welche Anführungszeichen (AFZ) die richtigen sind? Es liegt in der Verantwortung des Indesign-Benutzers, ein Dokument richtig anzulegen. Dazu gehört (in Bezug auf die AFZ), dass er in den Voreinstellungen für alle Sprachen, mit denen im Dokument Text formatiert ist, die gewünschten AFZ (doppelte und einfache) festlegt. Unter diesen Voraussetzungen soll dein Skript funktionieren, und ich bin sicher, dass es funktioniert, obwohl ich noch nicht zum Testen gekommen bin. Ich kann erst heute Nachmittag oder spätestens morgen einen Testlauf machen.

Es ist mir auch schon aufgefallen, dass beim Import (Platzieren) von Text aus Word, alle Apostrophe als ‹ erscheinen. Seither schalte ich bei den Importoptionen die Option Typografische AFZ ab, ebenfalls in den Indesign-Voreinstellungen. Nach dem Import (Platzieren) des Textes habe ich dann folgende Beispielform:
autata "sum imusae" voluptatini's que 'eumquiam' qui

Jetzt schalte ich in den ID-Voreinstellungen die Option Typografische AFZ verwenden ein, kontrolliere, dass für alle Sprachen in den Voreinstellungen (> Wörterbuch) die gewünschten doppelten und einfachen AFZ definiert sind und lasse dein Skript laufen. Der Text wird nun zu:
autata «sum imusae» voluptatini’s que ‹eumquiam› qui oder
autata »sum imusae« voluptatini’s que ›eumquiam‹ qui (je nach meinen Einstellungen)

In den Vorgaben können übrigens auch ›‹ definiert werden, obwohl sie ihm Flyout-Menü (warum auch immer) nicht vorhanden sind. Einfach ‹› wählen und über Copy/Paste die einfachen AFZ vertauschen (›‹).

Ich denke, dass dein Skript wunderbar für alle Sprachen funktioniert. Wenn es nicht zum gewünschten Resultat bezüglich der AFZ führt, liegt das Problem nicht bei deinem Skript, sondern im Dokument, dass nicht optimal angelegt ist. Von daher würde ich mir nicht zu viel Mühe machen.

Spätestens morgen melde ich mich nochmals. Herzlichen Dank für die Betaversion.
Gruss, Marco


als Antwort auf: [#547249]

Texte reinigen per JavaScript

Hans Haesler
Beiträge gesamt: 5826

22. Feb 2016, 13:15
Beitrag # 19 von 61
Beitrag ID: #547282
Bewertung:
(6426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Marco,

ich gebe Dir Recht auf der ganzen Linie. Danke fürs Zureden. :-)

Der Aufwand, um die Sprache jedes Absatzes festzustellen, lohnt sich nicht, wenn dadurch "nur" eventuelle "Keine-Sprache"-Texte "verschönert würden.

Zu den einfachen Gänsefüsschen: Jetzt, wo Du es sagst, erinnere ich mich, von diesem Trick schon mal gehört zu haben. Danke fürs Auffrischen.

Somit ist die Beta-Version die endgültige und Du kannst im Namen die "b06_" entfernen.

Übrigens: Das Script besorgt das Aktivieren der typografischen Anführungszeichen.

Gruss, Hans


als Antwort auf: [#547264]

Texte reinigen per JavaScript

Marco Morgenthaler
Beiträge gesamt: 2474

23. Feb 2016, 10:56
Beitrag # 20 von 61
Beitrag ID: #547318
Bewertung:
(6343 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans

Ich habe deine Version getestet. Es funktioniert so weit alles. Nur bei englischem Text (Text wurde engl. Sprache zugewiesen, in den Voreinstellungen im Wörterbuch die engl. AFZ definiert) stimmt das öffnende AFZ nicht (es wird das schliesssende gesetzt).

Gruss, Marco


als Antwort auf: [#547282]

Texte reinigen per JavaScript

Hans Haesler
Beiträge gesamt: 5826

23. Feb 2016, 15:02
Beitrag # 21 von 61
Beitrag ID: #547325
Bewertung:
(6300 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Marco,

ja, so geht das nicht. Und die Ursache war schnell gefunden: Das "Zurechtbiegen" des schliessenden "Avant-Garde"-Zeichens.

Weil vermutlich englische Texte häufiger vorkommen, als anderssprachige in "Avant Garde", habe ich die Sonderbehandlung für letztere in der Version 503d entfernt.

Diese ist schon mal hochgeladen. Aber es wird nicht die endgültige sein:
http://www.fachhefte.ch / Links "JavaScripts", "Mac OS X deutsch" (oder "Windows deutsch"), "InDesign CS5".

Gruss, Hans


als Antwort auf: [#547318]

Texte reinigen per JavaScript

Hans Haesler
Beiträge gesamt: 5826

24. Feb 2016, 10:00
Beitrag # 22 von 61
Beitrag ID: #547336
Bewertung:
(6203 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo InDesign-Fans,

die Version 504d des JavaScripts TexteReinigen ist bereit zum Herunterladen:
http://www.fachhefte.ch / Links "JavaScripts", "Mac OS X deutsch" (oder "Windows deutsch"), "InDesign CS5".

Was ist neu?
1. Die von Quarz gewünschte Einfärbung der sichtbaren Änderungen.
Dazu wird das Farbfeld "Rot_tmp" benutzt. Um diese Auszeichnungen zu entfernen:
Das Farbfeld löschen und durch jenes ersetzen, welches den Texten zugewiesen ist.
Bei mehrfarbigen Texten sollte logischerweise diese Option nicht angehakt werden.

2. Der von Marco verfeinerte Grep, welcher bei den einfachen Anführungen
eingesetzt wird.

3. Die dritte Neuerung betrifft nur die doppelten Anführungszeichen mit den
Spitzen nach aussen, wie sie in der Schweiz üblich sind: zum « Beispiel »

Wie hier gezeigt, ist es in Frankreich die Regel, dass zwischen den Anführungszeichen
und dem Text ein Leerschlag getippt wird. Und das anwenderfreundliche Word bietet das
voreingestellt an ... Aber das sieht scheusslich aus. Deshalb weg mit diesen Räumen!
Obwohl es typografisch korrekter wäre, ein Spatium einzufügen. Dieses wird sehr
wahrscheinlich in der nächsten Version des Scripts angeboten werden.

Ich nehme an, dass wenn in Deutschland die Chevrons benutzt werden, keine Leerschläge
zwischengeschaltet sind: zum »Beispiel«. Sollte meine Annahme nicht zutreffen, wäre
das Ergebnis nicht korrekt: Der Leerschlag vor dem öffnenden Zeichen würde entfernt
(anstatt jener danach) und das schliessende würde umgedreht: zum» Beispiel »

Sollte dieses Problem auftreten: bitte melden.

Wie dem auch sei: Wichtig ist, dass in der Wörterbuch-Option der verwendeten Sprache
die gewünschten Zeichen gewählt sind.

Gruss, Hans


als Antwort auf: [#547325]

Texte reinigen per JavaScript

Marco Morgenthaler
Beiträge gesamt: 2474

28. Feb 2016, 17:38
Beitrag # 23 von 61
Beitrag ID: #547456
Bewertung:
(6055 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans

Ich habe endlich Zeit gefunden, einen kurzen Testlauf zu machen. Ausgangslage war immer der Mustertext:
autata "sum imusae" voluptatini's que 'eumquiam' qui
zusätzlich eine französischen Variante mit Abständen bei den doppelten AFZ:
autata " sum imusae " voluptatini's que 'eumquiam' qui

Nach dem Durchlauf des Skripts ergeben sich folgende Probleme (vgl. Screenshot):
• Die Leerschläge bei franz. AFZ werden nur beim schliessenden entfernt.
• Das schliessende doppelte AFZ im franz. Mustertext wird falsch eingesetzt, wenn Leerschlag davor

Gruss, Marco


als Antwort auf: [#547336]
Anhang:
Textreinigung_504d.png (51.2 KB)

Texte reinigen per JavaScript

Hans Haesler
Beiträge gesamt: 5826

28. Feb 2016, 18:40
Beitrag # 24 von 61
Beitrag ID: #547457
Bewertung:
(6012 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Marco,

danke für Deinen Befund.

Doch wie in meinem vorigen Beitrag erklärt, betrifft diese Option nur die französischen Guillemets mit den Spitzen nach aussen.

Gruss, Hans


als Antwort auf: [#547456]

Texte reinigen per JavaScript

Marco Morgenthaler
Beiträge gesamt: 2474

28. Feb 2016, 23:04
Beitrag # 25 von 61
Beitrag ID: #547459
Bewertung:
(5941 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans
Hast du meinen Screenshot angeschaut? Der letzte Textabschnitt, also die letzten fünf Zeilen, ist französischer Satz. Bei der zweiten, dritten und vierten Zeile dieses Abschnitts gibt es bei den doppelten AFZ offensichtliche Fehler, die ich in meinem letzten Beitrag aufgeführt habe. Da diese Probleme die AFZ in französischer Sprache betreffen, verstehe ich deine Antwort nicht ganz.
Gute Nacht, Marco


als Antwort auf: [#547457]

Texte reinigen per JavaScript

Hans Haesler
Beiträge gesamt: 5826

29. Feb 2016, 08:48
Beitrag # 26 von 61
Beitrag ID: #547461
Bewertung:
(5838 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Marco,

das Entfernen der Leerschläge gelingt nicht mit geraden Anführungszeichen.
In diesem Fall sollte man bei der Checkbox den Haken nicht setzen.

Wie schon mehrmals gesagt: "Dank" der Voreinstellng in Word, werden in der Romandie viele Texte mit Leerschlägen zwischen Text und Anführungszeichen getippt. Und letztere sind schon "richtig": Chevrons mit den Spitzen nach aussen. Auch deutsche Texte sind betroffen.

Die Option also nur in deisem Fall benutzen.

Ich werde mich erst am nächsten Wochenende wieder mit dem Script befassen können, denn jetzt befinde ich mich in den Skiferien. ;-)

Gruss, Hans


als Antwort auf: [#547459]

Texte reinigen per JavaScript

Marco Morgenthaler
Beiträge gesamt: 2474

29. Feb 2016, 11:22
Beitrag # 27 von 61
Beitrag ID: #547465
Bewertung:
(5800 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans

Ich wünsche dir schöne Skiferien mit genug Schnee und Sonne. Geniesse die Zeit.

Vielleicht schaust du nachher doch noch meinen Screenshot genauer an. Beim französischen Textblock sind nämlich die franz. AFZ (« blabla », nach aussen) im fetten Text (die ersten drei Zeilen) von mir richtig gesetzt worden (also nicht mit Zollzeichen ", sondern mit Guillemets). Hier gelingt das Entfernen der Leerschläge beim schliessenden AFZ nicht.
Beim Mustertext mit Zollzeichen (" blabla ") in der vierten Zeile steht ein falsches schliessendes AFZ.

Ich weiss nicht, wie ich es besser erklären kann. Aber das pressiert jetzt nicht. Gruss in die Berge, Marco


als Antwort auf: [#547461]

Texte reinigen per JavaScript

Hans Haesler
Beiträge gesamt: 5826

29. Feb 2016, 12:07
Beitrag # 28 von 61
Beitrag ID: #547467
Bewertung:
(5775 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Marco,

am besten könntest Du es erklären, indem Du mir Dein Testdokument zustellen würdest. Dann könnte ich nächsten Samstag versuchen, das Problem nachzuvollziehen.

Danke für Deine Wünsche. Hier ist dichter Nebel. Die Vorhersage lässt hoffen, dass wir morgen die Sonne sehen werden ...

Gruss, Hans


als Antwort auf: [#547465]

Texte reinigen per JavaScript

Marco Morgenthaler
Beiträge gesamt: 2474

3. Mär 2016, 21:56
Beitrag # 29 von 61
Beitrag ID: #547652
Bewertung:
(5533 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans
Hier meine Testdatei im Anhang als idml-Dokument, mit dem ich dein Skript getestet habe. Als Ergebnis nach dem Durchlauf des Skripts ergeben sich wie erwähnt Unregelmässigkeiten im französischen Satz.
Gruss, Marco


als Antwort auf: [#547467]
Anhang:
Test_Textbereinigung_NEU.idml (35.0 KB)

Texte reinigen per JavaScript

Hans Haesler
Beiträge gesamt: 5826

3. Mär 2016, 22:24
Beitrag # 30 von 61
Beitrag ID: #547654
Bewertung:
(5517 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Marco,

besten Dank für die Datei. Ich werde übers Wochenende versuchen, das Problem nachzuvollziehen.

Gruss, Hans


als Antwort auf: [#547652]
X