Dazu brauchst du nicht mal eine GREP Suche. Eine einfache Textsuche reicht auch. Du suchst nach dieser Schrift, Auszeichnung kursiv (evll. noch bestimmte Punktgröße) und ersetzt durch das Zeichenformat "Kursiv"
Oder hab ich das falsch verstanden?
--------------------- MAC OSX 10.14.6 MacBook Pro 15"
Etwas ausführlicher: der Fließtext hat ein Absatzformat (Times Regular 10°). Einige Wörter sind per Zeichenformat auf den Italic-Schnitt ausgezeichnet.
Leider haben Teile dieser Wörter die Formatierung des Zeichenformats verloren, so dass sie eben nicht mehr kursiv sind.
Ich möchte also nach nicht kursivem Text suchen, der „benachbart“ zu kursivem Text steht (also in EINEM Wort).
LG Hanno ----- rheinsatz · Bonner Str. 272 · 50968 Köln OSX 12.6.8 || Indesign 2022/2023
Du könntest doch hier prima die Empfehlung anwenden, die ich eben vom Roland erhalten habe. Wenn ich Dich richtig verstanden habe; das 'halbe' Wort ist nur kursiv.
GREP-Suche nach '\<[\u\l]|[\u\l]\>' Formatiert mit Schriftschnitt Italic (= erstes Zeichen am Wortbeginn oder letztes Zeichen am Wortende ist kursiv)
Weise allen vom Ergebnis betroffenen Wörtern, also allen Wörtern, die mit Schriftschnitt 'Italic' beginnen oder Schriftschnitt 'Italic' enden komplett den Schriftschnitt 'Italic' zu (auch wenn sich bereits komplett kursiv sind).
Es hängt eben davon ab, was InDesign unter einem Wort versteht. Leider ordnet InDesign auch Satzzeichen (nicht nur Wortzeichen) einem Wort zu.
Also ist dieser Ansatz noch nicht befriedigend. Man müsste für eine befriedigende Lösung nur die aufeinanderfolgenden Wortzeichen eines einem Zeichen übergeordneten Worts adressieren. Dafür habe ich noch keine Lösung.
--- edit: Man könnte über ein match([\u\l]+) des contents eines Worts die tatsächliche Anfangs- und Endeposition des Worts (nur Wortzeichen) bestimmten und über die Indices des Anfangs und des Endes des word-Objekts den zu formatierenden Zeichenbereich (characters.itemByRange(x,y)) berechnen und diesem dann die Formatierung zuweisen. Oder das Gegenteil: ein match(^[^\u\l]+|[^\u\l]$) des contents und entsprechende Abzüge vornehmen.
Eine mögliche Kontrolle des Ergebnisses des Skripts: Vor der Ausführung des Skripts alle Kursiv-Auszeichnungen mit einem entsprechenden Zeichenformat versehen. Nach dem Skript kann man dann nach Kursiv ohne Zeichenformat suchen und damit einen Großteil des umformatierten Texts finden (eben Text mit nur Kursiv ohne irgendein Zeichenformat).
Viele Grüße Martin
(Dieser Beitrag wurde von Martin Fischer am 7. Okt 2020, 20:25 geändert)
das klingt vielversprechend. Da es sich nur um einzelne Wörter handelt, die kursiv auszuzeichnen sind, könnten Satzzeichen anschließend wieder auf Normal gestellt werden.
Das trifft nicht genau das Problem. Die betroffenen Stellen sind eben nicht kursiv + kein ZF, sondern normal + ZF[ohne].
Ich hatte mir zwischenzeitlich mein ZF kursiv mit einer gelben Unterstreichung versehen und habe visuell gesucht. Mit Deiner o.e. Suche kann ich das noch optimieren.
Herzlichen Dank, wieder einmal.
Gruß an alle Hanno ----- rheinsatz · Bonner Str. 272 · 50968 Köln OSX 12.6.8 || Indesign 2022/2023
Das Skript sucht nach Wörtern, die mit einem kursiven Wortzeichen beginnen oder enden. Und weist dem ganzen Wort die Kursiv-Formatierung zu. Egal, ob es bereits komplett kursiv ist, oder ob Teile des Wortes nicht kursiv sind. In erstem Fall ändert sich nichts. Im zweiten Fall wird auch das kursiv, was bislang noch nicht kursiv war. Und das lässt sich anschließend - quasi zur Kontrolle - über die Suche nach kursiv ohne Zeichenformat finden, sofern die alten Kursivierungen ein Zeichenformat hatten. Der vom Skript geänderte Text hat nur ein "abweichendes" Kursiv, kein Kursiv via Zeichformat.
Freilich kann neuer kursiver Text auch mit einem anderen ZF (Hochstellung) bereits formatiert gewesen sein. Diese Stellen werden dann bei der nachträglichen Kontrollsuche nach kursiv und ZF Ohne nicht gefunden, weil sie ja ein (anderes) ZF haben.
Probier's einfach an einem Testdokument aus. Und sei gewarnt, dass Indesign eben auch Klammern, Anführungszeichen und Satzzeichen als Bestandteile eines Worts betrachtet.
aber auch so hilft es enorm. In diesem fall gibt es nur kursiv als Auszeichnung (es geht um eine sogenannte Transkription/Umschreibung aus dem Arabischen), ohne Hochstellung o.ä.
Allein das Auffinden der Stellen in einem Wort, die nicht kursiv sind, wenn der Wortanfang oder -ende kursiv sind, hift enorm.
Super wäre noch, wenn benachbarte Zeichen mit unterschiedlicher AUszeichnung gefunden würden (also nicht auf Wortanfang/-ende beschränkt).
Schönen Tag Hanno ----- rheinsatz · Bonner Str. 272 · 50968 Köln OSX 12.6.8 || Indesign 2022/2023
mir ist noch eine skriptlose Lösung gekommen. Die "Überformatierung mit Abzügen in 2 Schritten"-Methode. ;-)
1. Weise dem gesamten Text ein Attribut, das im Dokument sonst nirgends verwendet wird, zu (ich nehme gerne ein Bedingtes Textformat mit farbiger Unterlegung oder Durchstreichen): GREP-Suche: ".+" Ersetzen: [eindeutiges Format]
2. Ziehe das Format von allen ganzen Wörtern oder einzelnen Wortzeichen, die nicht kursiv sind ab: GREP-Suche: "\W+|\<\w+\>" GREP-Suchenformatierung: Regular Ersetzen: [das Gegenteil vom oben verwendeten Format] Formatierung: z.B. ohne Bedingtes Text-Format oder nicht Durchstreichen.
Wiederhole 2. ggf. mit weiteren Schriftschnitten, die nicht kursiv sind.
3. Ziehe das Format auch von allen ganzen Wörtern oder einzelnen Wortzeichen, die kursiv(!) sind ab: GREP-Suche: "\W+|\<\w+\>" GREP-Suchenformatierung: Italic + oben verwendetes Markierungsformat Ersetzen: [das Gegenteil vom oben verwendeten Format]
Wenn mir bei diesem Gedankengang kein Fehler unterlaufen ist, dann sollten am Ende mischformatige Wörter - teile kursiv, teil nicht kursiv - übrig bleiben.
Viele Grüße Martin
(Dieser Beitrag wurde von Martin Fischer am 8. Okt 2020, 10:19 geändert)
Theoretisch hätte das obige Vorgehen eine Lösung sein können. In der Praxis scheitert es an einem unerwarteten Verhalten von InDesign bei der GREP-Suche nach ganzen Worten.
\<\w+\> will bei mir als Begrenzer auf ein Wort nicht funktionieren.
Sucheinstellung:
Falsche Fundstelle:
Hat jemand eine Idee, weshalb der Ausdruck "\<\w+\>" kombiniert mit einem Schriftschnitt zur Suche eines Worts mit durchgehender Formatierung in diesem Schriftschnitt nicht funktioniert?
Auch "\b\w+\b" funktioniert nicht. Es scheint so, als würde ein Formatwechsel in einem Wort unerwünschter Weise als Wortgrenze wirken.