[GastForen Programme Print/Bildbearbeitung Adobe InDesign GREP-Suche nach fehlendem ZF in einem Wort

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

GREP-Suche nach fehlendem ZF in einem Wort

rheinsatz
Beiträge gesamt: 326

6. Okt 2020, 15:14
Beitrag # 1 von 14
Bewertung:
(6582 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,

hat jemand einen Tipp zu folgendem Problem:

Ich habe einen (langen) Text, in dem einelne Zeichen eines Wortes die Zeichenformat-Auszeichnung „verloren“ haben.

Beispiel:
Beispieltext

„Beis“ (ZF „Kursiv“)
„pie“ (ZF [Ohne])
„ltext“ (ZF „Kursiv“)

Ich möchte nun die Stelle finden, die das ZF verloren hat und ihr das ZF zuweisen.

Danke für Euren Hirnschmalz.

VG Hanno
X

GREP-Suche nach fehlendem ZF in einem Wort

Stibi
Beiträge gesamt: 828

6. Okt 2020, 16:51
Beitrag # 2 von 14
Beitrag ID: #577011
Bewertung:
(6557 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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?


als Antwort auf: [#577000]

GREP-Suche nach fehlendem ZF in einem Wort

rheinsatz
Beiträge gesamt: 326

6. Okt 2020, 16:59
Beitrag # 3 von 14
Beitrag ID: #577013
Bewertung:
(6552 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Stibi,

das geht leider nicht.

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


als Antwort auf: [#577011]

GREP-Suche nach fehlendem ZF in einem Wort

Quarz
Beiträge gesamt: 3542

6. Okt 2020, 17:59
Beitrag # 4 von 14
Beitrag ID: #577015
Bewertung:
(6531 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hanno,

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.

https://www.hilfdirselbst.ch/..._P576996.html#576996

Gruß Quarz
------------------------------
| Win10/64 Prof. | CS6 ver 8.1 |



als Antwort auf: [#577013]
(Dieser Beitrag wurde von Quarz am 6. Okt 2020, 18:17 geändert)

GREP-Suche nach fehlendem ZF in einem Wort

rheinsatz
Beiträge gesamt: 326

7. Okt 2020, 08:49
Beitrag # 5 von 14
Beitrag ID: #577019
Bewertung:
(6333 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Quarz,

da bin ich beim Stöbern gestern auch drauf gestoßen. Und mir auch direkt heruntergeladen.
Danke für den Tipp.

VG Hanno


als Antwort auf: [#577015]

GREP-Suche nach fehlendem ZF in einem Wort

MarioF
Beiträge gesamt: 388

7. Okt 2020, 19:21
Beitrag # 6 von 14
Beitrag ID: #577031
Bewertung:
(6204 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Aber helfen kann es bei deinem Problem auch nicht oder. Ich glaube, da müsste ein Script ran.


als Antwort auf: [#577019]

GREP-Suche nach fehlendem ZF in einem Wort

Quarz
Beiträge gesamt: 3542

7. Okt 2020, 19:59
Beitrag # 7 von 14
Beitrag ID: #577033
Bewertung:
(6187 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Mario,

Antwort auf: Ich möchte nun die Stelle finden, die das ZF verloren hat und ihr das ZF zuweisen.

Und genau das kann er mit dem Script von Peter
Kahrel machen.

In der ID Palette S & E das GREP eingeben
Code
Suchen 
.+
Ersetzen
ZF Kursiv

Den GREP editor von Peter aufrufen, auf Copy F/C query klicken
und schon ist alles wunderbar gelb markiert.
Der Rest ist schon etwas Handarbeit ;-)

Gruß Quarz
------------------------------
| Win10/64 Prof. | CS6 ver 8.1 |



als Antwort auf: [#577031]

GREP-Suche nach fehlendem ZF in einem Wort

MarioF
Beiträge gesamt: 388

7. Okt 2020, 20:04
Beitrag # 8 von 14
Beitrag ID: #577034
Bewertung:
(6181 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Moin Quarz,
das Script ist mir bekannt. Klar kann man es dann mit Handarbeit machen, aber je nach Umfang....


als Antwort auf: [#577033]

GREP-Suche nach fehlendem ZF in einem Wort

Martin Fischer
  
Beiträge gesamt: 12775

7. Okt 2020, 20:10
Beitrag # 9 von 14
Beitrag ID: #577036
Bewertung:
(6176 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ein möglicher Ansatz per Skript:

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).

Code
var doc    = app.activeDocument, 
result = null,
i = 0;

app.findGrepPreferences = NothingEnum.nothing;
app.findGrepPreferences.findWhat = '\\<[\\u\\l]|[\\u\\l]\\>';
app.findGrepPreferences.fontStyle = 'Italic';
result = doc.findGrep();
app.findGrepPreferences = NothingEnum.nothing;

for (var i = 0; i < result.length; i++)
{
result[i].words.firstItem().fontStyle = 'Italic';
};


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).


als Antwort auf: [#577031]
(Dieser Beitrag wurde von Martin Fischer am 7. Okt 2020, 20:25 geändert)

GREP-Suche nach fehlendem ZF in einem Wort

rheinsatz
Beiträge gesamt: 326

7. Okt 2020, 21:52
Beitrag # 10 von 14
Beitrag ID: #577038
Bewertung:
(6124 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Lieber Martin,

Zitat GREP-Suche nach '\<[\u\l]|[\u\l]\>'
Formatiert mit Schriftschnitt Italic
(= erstes Zeichen am Wortbeginn oder letztes Zeichen am Wortende ist kursiv)


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.

Zitat (eben Text mit nur Kursiv ohne irgendein Zeichenformat)


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


als Antwort auf: [#577036]

GREP-Suche nach fehlendem ZF in einem Wort

Martin Fischer
  
Beiträge gesamt: 12775

7. Okt 2020, 23:46
Beitrag # 11 von 14
Beitrag ID: #577040
Bewertung:
(6094 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Lieber Hanno,

vermutlich hast Du mich nicht richtig verstanden.

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.


als Antwort auf: [#577038]

GREP-Suche nach fehlendem ZF in einem Wort

rheinsatz
Beiträge gesamt: 326

8. Okt 2020, 08:47
Beitrag # 12 von 14
Beitrag ID: #577044
Bewertung:
(6017 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

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


als Antwort auf: [#577040]

GREP-Suche nach fehlendem ZF in einem Wort

Martin Fischer
  
Beiträge gesamt: 12775

8. Okt 2020, 09:56
Beitrag # 13 von 14
Beitrag ID: #577046
Bewertung:
(5999 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hanno,

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.


als Antwort auf: [#577044]
(Dieser Beitrag wurde von Martin Fischer am 8. Okt 2020, 10:19 geändert)

GREP-Suche nach fehlendem ZF in einem Wort

Martin Fischer
  
Beiträge gesamt: 12775

8. Okt 2020, 10:33
Beitrag # 14 von 14
Beitrag ID: #577052
Bewertung:
(5982 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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.


als Antwort auf: [#577046]
Anhang:
GREP_ganzes_Wort_in_Regular+Bedingung.jpg (99.3 KB)   falsche_Fundstelle.jpg (55.3 KB)
X