hilfdirselbst.ch
Facebook Twitter gamper-media

Forenindex » Programme » Print/Bildbearbeitung » Adobe InDesign » GREP lernen

 



dschmutzi
Beiträge: 30

16. Jul 2007, 17:46

Beitrag #1 von 8
Bewertung:

(10268 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

GREP lernen


Bei dem Versuch einfachste Such&Tausch-Vorgänge mit GREP zu realisieren hatte ich große Probleme. Gibt es eine Möglichkeit GREP von Beginn an zu lernen. Eventuell empfehlenswerte Literatur?

[email]
Top
 
X

Martin Fischer  M  p
Beiträge: 10759

16. Jul 2007, 17:53

Beitrag #2 von 8
Beitrag ID: #302889

Bewertung:

(10263 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

GREP lernen


Ich schreibe das ungern, aber jetzt kann ich nicht anders: Suche im InDesign-Forum nach "GREP". Einer der ältesten Treffer bezieht sich m.W. auf Einführungen zu GREP.

Schau hier: http://www.hilfdirselbst.ch/...i?post=292172#292172
Martin Fischer

als Antwort auf: [#302886]

(Dieser Beitrag wurde von Martin Fischer am 16. Jul 2007, 18:23 geändert)
Top
 

dschmutzi
Beiträge: 30

17. Jul 2007, 09:56

Beitrag #3 von 8
Beitrag ID: #302969

Bewertung:

(10207 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

GREP lernen


Vielen Dank für die schnelle Hilfe. Es ist ein wenig tröstlich, zu sehen, dass andere auch ihre Probleme mit dem Verständnis haben, und bei den Links sollten die richtigen Informationen dabei sein.

als Antwort auf: [#302889] Top
 

dschmutzi
Beiträge: 30

17. Jul 2007, 10:45

Beitrag #4 von 8
Beitrag ID: #302984

Bewertung:

(10192 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

GREP lernen


Noch eine Frage zu GREP
In Indesign CS2 habe ich ein Script modifiziert um Kundendateien immer nach ein und demselben Schema umzuwandeln.
Dieses Skript (Origoinal-Adobe-Script: "FindChangeByList.jsx") gibt es auch für CS3 muss aber stark modifiziert werden.
Bei dieser Gelegenheit dachte ich die Funktionalität des Skriptes mit GREP zu erweitern.
Jetzt gibt es folgendes Phänomen: Suche ich in GREP nach einem "u" findet er es, wie auch den Umlaut "ü".
Nachdem das Skript gelaufen ist findet er nur noch das "ü".
Ist das ein Bug, oder was verstehe ich hier nicht.

als Antwort auf: [#302969] Top
 

Martin Fischer  M  p
Beiträge: 10759

17. Jul 2007, 10:53

Beitrag #5 von 8
Beitrag ID: #302988

Bewertung:

(10184 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

GREP lernen


Das "FindChangeByList.jsx" von CS3 ist buggy.
Dies wurde im Adobe Scripting Forum diskutiert.
Ich habe die Diskussion nur mit einem halben Auge notiert und weiß nicht genau, was dort als Bug diskutiert wurde. Ich meine aber, es hängt auch mit Umlauten zusammen.

Willst Du Dich dort mal schlau machen und hier berichten?
Martin Fischer

als Antwort auf: [#302984] Top
 

dschmutzi
Beiträge: 30

17. Jul 2007, 12:37

Beitrag #6 von 8
Beitrag ID: #303051

Bewertung:

(10157 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

GREP lernen


Vielen Dank, das war ein weiterer guter Tip.

Der Autor des Skriptes weiß um seinen Bug, und will ihn demnächst beheben.

Er gibt aber einen Workaround an, der meiner Meinung nach funktioniert. Er sagt, dass man die Preferences auf "Nothing" stellen kann, aber nicht die Options. Wenn man die entsprechenden Zeilen auskommentiert funktioniert das Suchen & Tauschen nach dem Skript richtig. Wenn man das Skript als Binärdatei exportiert stimmen auch die Umlaute in den Dialogen.

Der von mir daraufhin geänderte Skriptteil sieht folgendermaßen aus:
Code
function myFindText(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions){ 
//Reset the find/change preferences before each search.
app.changeTextPreferences = NothingEnum.nothing;
app.findTextPreferences = NothingEnum.nothing;
// app.findChangeTextOptions = NothingEnum.nothing;
var myString = "app.findTextPreferences.properties = "+ myFindPreferences + ";";
myString += "app.changeTextPreferences.properties = " + myChangePreferences + ";";
// myString += "app.findChangeTextOptions.properties = " + myFindChangeOptions + ";";
app.doScript(myString, ScriptLanguage.javascript);
myFoundItems = myObject.changeText();
//Reset the find/change preferences after each search.
app.changeTextPreferences = NothingEnum.nothing;
app.findTextPreferences = NothingEnum.nothing;
// app.findChangeTextOptions = NothingEnum.nothing;
}
function myFindGrep(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions){
//Reset the find/change grep preferences before each search.
app.changeGrepPreferences = NothingEnum.nothing;
app.findGrepPreferences = NothingEnum.nothing;
// app.findChangeGrepOptions = NothingEnum.nothing;
var myString = "app.findGrepPreferences.properties = "+ myFindPreferences + ";";
myString += "app.changeGrepPreferences.properties = " + myChangePreferences + ";";
// myString += "app.findChangeGrepOptions.properties = " + myFindChangeOptions + ";";
app.doScript(myString, ScriptLanguage.javascript);
var myFoundItems = myObject.changeGrep();
//Reset the find/change grep preferences after each search.
app.changeGrepPreferences = NothingEnum.nothing;
app.findGrepPreferences = NothingEnum.nothing;
// app.findChangeGrepOptions = NothingEnum.nothing;
}
function myFindGlyph(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions){
//Reset the find/change glyph preferences before each search.
app.changeGlyphPreferences = NothingEnum.nothing;
app.findGlyphPreferences = NothingEnum.nothing;
// app.findChangeGlyphOptions = NothingEnum.nothing;
var myString = "app.findGlyphPreferences.properties = "+ myFindPreferences + ";";
myString += "app.changeGlyphPreferences.properties = " + myChangePreferences + ";";
// myString += "app.findChangeGlyphOptions.properties = " + myFindChangeOptions + ";";
app.doScript(myString, ScriptLanguage.javascript);
var myFoundItems = myObject.changeGlyph();
//Reset the find/change glyph preferences after each search.
app.changeGlyphPreferences = NothingEnum.nothing;
app.findGlyphPreferences = NothingEnum.nothing;
// app.findChangeGlyphOptions = NothingEnum.nothing;
}


Ob damit aber alles funktioniert kann ich mit meinen Skriptkenntnissen nicht beurteilen.

als Antwort auf: [#302988] Top
 

Martin Fischer  M  p
Beiträge: 10759

17. Jul 2007, 12:41

Beitrag #7 von 8
Beitrag ID: #303054

Bewertung:

(10156 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

GREP lernen


Danke für Deine ausführliche Rückmeldung.
Martin Fischer

als Antwort auf: [#303051] Top
 

dschmutzi
Beiträge: 30

17. Jul 2007, 15:27

Beitrag #8 von 8
Beitrag ID: #303121

Bewertung:

(10119 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

GREP lernen


Ich habe jetzt fast das ganze CS2 Skript "übersetzt" und kann nur sagen, dass GREP, wirklich sehr hilfreich ist.

Auch wenn ich erst wenige Befehle gelernt habe konnte ich etliche Zeilen "Suche&Tausch"-Anweisung sparen und damit mein Skript deutlich beschleunigen.

als Antwort auf: [#303054] Top
 


Forenindex » Programme » Print/Bildbearbeitung » Adobe InDesign » GREP lernen

X


^