[GastForen Programme Print/Bildbearbeitung Adobe InDesign kleine Bug in Suchen/Ersetzen Skript

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

kleine Bug in Suchen/Ersetzen Skript

Hunabku
Beiträge gesamt: 10

10. Feb 2009, 19:42
Beitrag # 1 von 9
Bewertung:
(1785 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

hab eben ein kleines Script geschrieben, das in einem InDesign Dokument jedes "abcdefg" sucht, egal ob groß oder kleinschreibung und duch "abcDefg" ersetzen soll und das dann auch kursiv stellen.

Soweit funktioniert es auch, aber wenn der Anfangbuchstabe Groß ist, also "Abcdefg" bleibt das auch so und daraus wird "AbcDefg" und nicht "abcDefg"

Hat jemand einen Tipp für mich?? Hier das Script:

Code
// InDesign CS3 
app.findTextPreferences = app.changeTextPreferences = null;
app.findTextPreferences.findWhat = "abcdefg";
app.changeTextPreferences.changeTo = "abcDefg";
app.changeTextPreferences.fontStyle = 'Italic';
app.findChangeTextOptions.wholeWord = true;
app.findChangeTextOptions.caseSensitive = false;
app.activeDocument.changeText();


Vielen Dank
X

kleine Bug in Suchen/Ersetzen Skript

Jürgen Althaus
Beiträge gesamt: 102

11. Feb 2009, 10:50
Beitrag # 2 von 9
Beitrag ID: #385075
Bewertung:
(1748 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hunabku,

ich würde es über eine Grep-Suche machen.

Code
app.findGrepPreferences = app.changeGrepPreferences = null;  
app.findGrepPreferences.findWhat = "\\b[Aa]bcdefg\\b";
app.changeGrepPreferences.changeTo = "abcDefg";
app.changeGrepPreferences.fontStyle = 'Italic';
app.activeDocument.changeGrep();


Grüße
Jürgen


als Antwort auf: [#384979]

kleine Bug in Suchen/Ersetzen Skript

Hunabku
Beiträge gesamt: 10

11. Feb 2009, 12:34
Beitrag # 3 von 9
Beitrag ID: #385109
Bewertung:
(1728 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jürgen,

danke für die schnelle Antwort, aber mit der Grep-Suche habe ich genau das gleiche Ergebnis, wenn das A groß geschrieben ist, bleibt es auch so.
Wenn ich die Zeile:
Code
app.changeGrepPreferences.changeTo = "abcDefg"; 

ändere in:
Code
app.changeGrepPreferences.changeTo = " abcDefg"; 

wird das a klein geschrieben.
Das einfügen des Leerzeichens in der changeTo Zeile führt dann auch in meinem Script zum gewünschten Ergebniss, jedoch habe ich dann ein überflüssiges Leerzeichen.
Natürlich könnte ich dann noch nach zwei zusammenhängenden Leerzeichen suchen und die durch eins ersetzen, aber die Lösung finde ich dann nicht so optimal.

Gruß Hunabku


als Antwort auf: [#385075]

kleine Bug in Suchen/Ersetzen Skript

Jürgen Althaus
Beiträge gesamt: 102

11. Feb 2009, 13:11
Beitrag # 4 von 9
Beitrag ID: #385115
Bewertung:
(1716 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Das ist ja spannend. Ich hab es mit ID6 in CS4 probiert. Dort wird der Suchstring klaglos ersetzt.
Sie haben meinen Codeschnipsel direkt so übernommen?


als Antwort auf: [#385109]

kleine Bug in Suchen/Ersetzen Skript

Hunabku
Beiträge gesamt: 10

11. Feb 2009, 13:45
Beitrag # 5 von 9
Beitrag ID: #385123
Bewertung:
(1708 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ja, genau so, habe allerdings ID5, also CS3 auf nem Mac. Dann scheint es wohl an der CS3 zu liegen. Teste den Code gleich mal mit der CS4.

ergänzung:
Mit der CS4 funktioniert es, also liegt es definitiv an der CS3. Aber wie muss ich das Script nun abändern, damit es auch dort funktioniert?


als Antwort auf: [#385115]
(Dieser Beitrag wurde von Hunabku am 11. Feb 2009, 13:58 geändert)

kleine Bug in Suchen/Ersetzen Skript

Jürgen Althaus
Beiträge gesamt: 102

11. Feb 2009, 14:02
Beitrag # 6 von 9
Beitrag ID: #385130
Bewertung:
(1699 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich hab mir das in ID 5.0.4 mal angeschaut. Da macht er es wirklich anders als in ID 6. :-? Ich hätte ja jetzt eigentlich auch von ID 5 erwartete das er das Großgeschrieben A durch da kleine ersetzt.

Ich hab gar keine Ahnung welches Verhalten nun richtig ist?


als Antwort auf: [#385123]

kleine Bug in Suchen/Ersetzen Skript

Hunabku
Beiträge gesamt: 10

11. Feb 2009, 14:40
Beitrag # 7 von 9
Beitrag ID: #385144
Bewertung:
(1691 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich würde sagen das Verhalten von ID6 ist richtig, denn es ist ja angegeben, das "abcdefg" durch "abcDefg" ersetzt werden soll.

Gibt es bei der Grep Funktion eigentlich auch so eine Variable wie:
app.findChangeTextOptions.caseSensitive = false;
damit nicht auf groß und kleinschreibung geachtet wird und auch ABCEDFG durch abcDefg ersetzt wird?

oder muss ich dann schreiben:
Code
app.findGrepPreferences = app.changeGrepPreferences = null; 
app.findGrepPreferences.findWhat = "\\b[Aa][Bb][Cc][Dd][Ee][Ff][Gg]\\b";
app.changeGrepPreferences.changeTo = "abcDefg";
app.changeGrepPreferences.fontStyle = 'Italic';
app.activeDocument.changeGrep();



als Antwort auf: [#385130]

kleine Bug in Suchen/Ersetzen Skript

Jürgen Althaus
Beiträge gesamt: 102

11. Feb 2009, 15:03
Beitrag # 8 von 9
Beitrag ID: #385159
Bewertung:
(1686 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich glaube das macht man mit
Code
(?i) 

. Bringt aber in diesem Fall irgendwie auch nichts:-?. Mir scheint das ID 5 das erste Wort im Ersetzenstring Großschreiben will/muss.
Als Workaround würde ich irgend ein Zeichen zB eine # davor setzen und diese mit einem zweiten suchen/ersetzen Durchlauf rauswerfen.


als Antwort auf: [#385144]

kleine Bug in Suchen/Ersetzen Skript

Hunabku
Beiträge gesamt: 10

11. Feb 2009, 15:22
Beitrag # 9 von 9
Beitrag ID: #385166
Bewertung:
(1679 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
cool, danke :)

Das Problem mit dem Großbuchstaben am Anfang werde ich dann mit nem zweiten Suchlauf umgehen.

Viele Grüße
Kai


als Antwort auf: [#385159]
X