[GastForen Programme Print/Bildbearbeitung Adobe InDesign GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

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

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Quarz
Beiträge gesamt: 3555

25. Mär 2008, 18:37
Beitrag # 1 von 18
Bewertung:
(26799 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Ihr GREP Spezialisten,

vielleicht kann mir jemand helfen.
Ich bin am verzweifeln, weil ich den (Denk)fehler nicht finde.

In ›S & E‹ klappt es einwandfrei.
Mit ›FindChangeByList‹ nicht.

Datum
Mo 18. Jan 2008 / 9:00 Uhr
soll umgewandelt werden in
MoTab18. Jan 2008Achtelgeviert|Achtelgeviert9:00 Uhr
----------------------
›S & E‹
^(\w\w) (\d+\. \w{3,5} \d{4})\s/\s
$1\t$2~<~<|~<~<
-----------------------
›FindChangeByList‹
grep
{findWhat:"^(\\w\\w) (\\d+\\.\\s\\w{3,5}\\s\\d{4})\\s\\/\\s"}
{ChangeTo:"$1\\t$2~<~<|~<~<", appliedParagraphStyle:"Datum_1}
{}

Es wird der Tab und die Achtelgevierte nicht ersetzt.
Wenn ich kein AF eingebe, werden die gespeicherten Teilbegriffe ($1+$2) einfach gelöscht.
----------------------

Gruß
Quarz
X

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Jochen Uebel
Beiträge gesamt: 3200

25. Mär 2008, 18:51
Beitrag # 2 von 18
Beitrag ID: #342976
Bewertung:
(26795 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Zu Fuß geht nicht (statt mit Skript über den GREP-Dialog)? Im übrigen: Der Tab hört auf \t, nicht auf \\t. Vielleicht liegt da der Fehler?


als Antwort auf: [#342972]

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Kai Rübsamen
  
Beiträge gesamt: 4684

25. Mär 2008, 21:03
Beitrag # 3 von 18
Beitrag ID: #342997
Bewertung:
(26770 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: Der Tab hört auf \t, nicht auf \\t.

Jochen, das denkst auch nur du und bis letztes Wochenende ich auch ;-)

Quarz: Martin hat anscheinend doch recht mit dem escapen :)

Zunächst zum Suchen und ersetzen in Indesign. Da ist dir beim Kopieren fürs Forum wohl ein bisschen was verloren gegangen?

Suchen:
^(\w\w)\s(\d+\.\s\w{3,5}\s\d{4})\s\/\s
Ersetzen:
$1\t$2~<|~<


›FindChangeByList‹
grep {findWhat:"^(\\w\\w)\\s(\\d+\\.\\s\\w{3,5}\\s\\d{4})\\s\\\/\\s"} {changeTo:"\$1\\t\$2~<|~<"} {}

>> Offensichtlich müssen $1 und $2 auch escaped werden sonst wird der Inhalt einfach gelöscht.


als Antwort auf: [#342976]
(Dieser Beitrag wurde von ruebi am 25. Mär 2008, 21:06 geändert)

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Martin Fischer
  
Beiträge gesamt: 12783

25. Mär 2008, 21:35
Beitrag # 4 von 18
Beitrag ID: #343001
Bewertung:
(26755 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Rübi,

> Jochen, das denkst auch nur du und bis letztes Wochenende ich auch ;-)

Da, wo Jochen arbeitet, stimmt die Aussage von Jochen - im GREP-Suche-Dialog (aber das weißt Du ja selber).

Da, wo Du arbeitest, ist Deine Beharrlichkeit (und Dein österlicher Lernerfolg) angebracht. ;-)

Mit Deinen Ausdrücken läßt sich was anfangen.


@Quarz:
Wenn Du im FindChangeByList.jsx die folgenden Zeilen auskommentierst, dann bleiben im GREP-Suche-Dialog die letzten Einstellungen, die per FindChangeByList.jsx gesetzt worden sind, stehen. So kannst Du leichter überprüfen, was von Deinem Ausdruck in der Liste in welcher Form im Dialog ankommt.

Code
	//Reset the find/change grep preferences after each search. 
//app.changeGrepPreferences = NothingEnum.nothing;
//app.findGrepPreferences = NothingEnum.nothing;


Mit dem Voranstellen von // werden die Zurücksetzen-Kommandos nach Ausführung der GREP-Suche deaktiviert.


als Antwort auf: [#342997]
(Dieser Beitrag wurde von Martin Fischer am 25. Mär 2008, 21:39 geändert)

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Kai Rübsamen
  
Beiträge gesamt: 4684

25. Mär 2008, 22:10
Beitrag # 5 von 18
Beitrag ID: #343004
Bewertung:
(26740 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
langsam macht es sogar Spaß (freu)!

Antwort auf: Wenn Du im FindChangeByList.jsx die folgenden Zeilen auskommentierst, dann bleiben im GREP-Suche-Dialog die letzten Einstellungen, die per FindChangeByList.jsx gesetzt worden sind, stehen.

Das funktioniert bei mir noch nicht richtig.
> Ist es egal wo man es einfügt? Habe es über den Suchbefehl gesetzt!
> Für einen Bruchteil einer Sekunde bleibt es stehen, dann ist es weg?!


als Antwort auf: [#343001]

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Martin Fischer
  
Beiträge gesamt: 12783

25. Mär 2008, 22:31
Beitrag # 6 von 18
Beitrag ID: #343007
Bewertung:
(26732 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: Ist es egal wo man es einfügt? Habe es über den Suchbefehl gesetzt!


Die Zeile '//Reset the find/change *** preferences after each search.' solltest Du - mit leichten Unterschieden - dreimal im Skript finden. Darunter sind die Preferences zu finden, die auskommentiert werden sollten. Diesen beiden Zeilen ist jeweils das Paar // voranzustellen.


als Antwort auf: [#343004]

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Quarz
Beiträge gesamt: 3555

26. Mär 2008, 08:24
Beitrag # 7 von 18
Beitrag ID: #343025
Bewertung:
(26665 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Kai,

Dank für die Lösung. Darauf wäre ich nie gekommen.
Du kannst Dir sicher vorstellen, dass ich schon alles
Mögliche ausprobiert hatte. Aber das ----

Hallo Martin,
später probiere ich Deine Empfehlung in Ruhe aus.

Jungs - tausend Dank und Gruß
Quarz

------------------------
WinXP | CS3


als Antwort auf: [#343007]
(Dieser Beitrag wurde von Quarz am 26. Mär 2008, 08:27 geändert)

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Kai Rübsamen
  
Beiträge gesamt: 4684

26. Mär 2008, 08:57
Beitrag # 8 von 18
Beitrag ID: #343029
Bewertung:
(26654 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: So kannst Du leichter überprüfen, was von Deinem Ausdruck in der Liste in welcher Form im Dialog ankommt.


Hm, zum Überprüfen ist es noch nicht ganz rund:

Die Zeile kommt ca. 5 x vor. Beim Ausführen des Skripts wird jetzt "Suchen nach:" und "Ändern in" ausgeführt. Die Formel im jeweiligen Dialog bleibt jetzt stehen.

Wenn man allerdings nach einem Fehler sucht würde ich mir wünschen, das nicht bereits ersetzt wird, sondern das das Gesuchte markiert wird! Oder brauchts das nicht, wenn man es vorher im S&E-Dialog überprüft hat?


als Antwort auf: [#343025]

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Martin Fischer
  
Beiträge gesamt: 12783

26. Mär 2008, 09:33
Beitrag # 9 von 18
Beitrag ID: #343036
Bewertung:
(26634 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf: Die Zeile kommt ca. 5 x vor.


Rübi, achte bitte darauf, daß Du nicht versehentlich auch die Zurückstellungen vor dem Ausführen des Ersetzevorgangs auskommentierst, also die beiden Zeilen die jeweils nach '//Reset the find/change *** preferences before each search.' folgen.

Das könnte zu unerwarteten Ergebnissen führen.

Antwort auf: Wenn man allerdings nach einem Fehler sucht würde ich mir wünschen, das nicht bereits ersetzt wird, sondern das das Gesuchte markiert wird! Oder brauchts das nicht, wenn man es vorher im S&E-Dialog überprüft hat?


Dafür wäre es wohl besser, das Skript zu einem neuen Skript umzustricken.
Es müßten zwar nur wenige Anweisungen geändert werden (z.B. var myFoundItems = myObject.changeGlyph() -> var myFoundItems = myObject.findGlyph(); dann bräuchte man noch eine Routine, die bei erfolgreicher Suche die erste Fundstelle markiert, dort hinspringt und anzeigt).
Aber das Suchen und das Ersetzen sind - anders als Du es wahrscheinlich wahrnimmst - ganz unterschiedliche Vorgänge.

Ich würde das im S&E-Dialog überprüfen und zum Einfügen der Backslashes den Verstand oder einen skriptbaren Texteditor gebrauchen. ;-)


als Antwort auf: [#343029]

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Kai Rübsamen
  
Beiträge gesamt: 4684

26. Mär 2008, 09:55
Beitrag # 10 von 18
Beitrag ID: #343043
Bewertung:
(26627 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
ich hab natürlich alles auskommentiert ;-)


als Antwort auf: [#343036]

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Martin Fischer
  
Beiträge gesamt: 12783

27. Mär 2008, 08:53
Beitrag # 11 von 18
Beitrag ID: #343250
Bewertung:
(26579 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Rübi,

Antwort auf: Wenn man allerdings nach einem Fehler sucht würde ich mir wünschen, das nicht bereits ersetzt wird, sondern das das Gesuchte markiert wird!


Hier eine noch etwas hemdsärmelige Lösung zur Darstellung von Objekten, die sich mit den Ausdrücken in der Liste zu FindChangeByList.jsx finden lassen.

Dieses Skript ersetzt nichts, sondern zeigt lediglich an, was gefunden wird.
Im geöffneten S&E-Dialog kann zudem abgelesen werden, wie der Ausdruck in der Liste im S&E-Dialog ankommt.

Das Skript arbeitet in einer Schleife alle Einträge der Liste ab und sucht nach den angegebenen Ausdrücken/Formatierungen.
Ist die Suche erfolgreich, dann wird der erste Treffer angezeigt (hergezoomt) und ein Fenster mit dem aktuellen Suchen-Ausdruck eingeblendet.
Wenn nicht, erscheint eine Meldung, daß nichts gefunden wurde.
Bestätigung des OK-Buttons (einen anderen gibt es nicht) führt den nächsten Suchausdruck der Liste aus (sofern noch einer vorhanden) oder beendet das Skript.

Im Prinzip könnte man nicht nur jeweils den ersten Treffer anzeigen lassen, sondern interaktiv durch alle Treffer wandern.
Eventuell könnte man in den eingeblendeten Fenstern mit den gesuchten Ausdrücken in einer weiteren Zeile das zu erwartende Ergebnis eines Ändern-Vorgangs darstellen, soweit es die Zeichenfolge betrifft.

Schau mal, ob Dir das was hilft.


Code
//FindChangeByList_Show.jsx 

main();
function main(){
var myObject;
var myCheckSelection = false;
if(app.documents.length > 0){
if(app.selection.length > 0){
switch(app.selection[0].constructor.name){
case "InsertionPoint":
case "Character":
case "Word":
case "TextStyleRange":
case "Line":
case "Paragraph":
case "TextColumn":
case "Text":
myObject = myDisplayDialog();
myCheckSelection = myObject[1];
myObject = myObject[0];
if(myObject != "None"){
myFindChangeByList(myObject, myCheckSelection);
}
break;
default:
myFindChangeByList(app.documents.item(0), false);
}
}
else{
//Nothing was selected, so simply search the document.
myFindChangeByList(app.documents.item(0), false);
}
}
else{
alert("No documents are open. Please open a document and try again.");
}
}
function myDisplayDialog(){
var myObject;
var myCheckSelection = false;
var myDialog = app.dialogs.add({name:"FindChangeByList"});
with(myDialog.dialogColumns.add()){
with(dialogRows.add()){
with(dialogColumns.add()){
staticTexts.add({staticLabel:"Search Range:"});
}
var myRangeButtons = radiobuttonGroups.add();
with(myRangeButtons){
radiobuttonControls.add({staticLabel:"Selection", checkedState:true});
radiobuttonControls.add({staticLabel:"Selected Story"});
radiobuttonControls.add({staticLabel:"Document"});
}
}
}
var myResult = myDialog.show();
if(myResult == true){
switch(myRangeButtons.selectedButton){
case 0:
myObject = app.selection[0];
myCheckSelection = true;
break;
case 1:
myObject = app.selection[0].parentStory;
myCheckSelection = false;
break;
case 2:
myObject = app.documents.item(0);
myCheckSelection = false;
break;
}
}
else{
myObject = "None";
}
myDialog.destroy();
return [myObject, myCheckSelection];
}
function myFindChangeByList(myObject, myCheckSelection){
var myScriptFileName, myFindChangeFile, myFindChangeFileName, myScriptFile, myResult;
var myFindChangeArray, myFindPreferences, myChangePreferences, myFindLimit;
var myStartCharacter, myEndCharacter;
var myFindChangeFile = myFindFile("/FindChangeSupport/FindChangeList.txt")
if(myFindChangeFile != null){
// Because the selection will change as we add/remove characters,
// we'll need to reset the selection after each pass if we are
// checking the selection. We'll get the index of the first character
// in the selection (relative to the start of its parent story) and
// the index of the last character in the selection (relative to the
// *end* of the story, and we'll use them later in the script to
// keep the ends of the selection in place.
if(myCheckSelection == true){
var myStart = myObject.characters.item(0).index;
var myEnd = myObject.characters.item(-1).index;
var myStory = myObject.parentStory;
var myStoryEnd = myStory.characters.item(-1).index;
myEnd = (myStoryEnd - myEnd)+1;
}
myFindChangeFile = File(myFindChangeFile);
var myResult = myFindChangeFile.open("r", undefined, undefined);
if(myResult == true){
//Loop through the find/change operations.
do{
myLine = myFindChangeFile.readln();
//Ignore comment lines and blank lines.
if((myLine.substring(0,4)=="text")||(myLine.substring(0,4)=="grep")||(myLine.substring(0,5)=="glyph")){
myFindChangeArray = myLine.split("\t");
//The first field in the line is the findType string.
myFindType = myFindChangeArray[0];
//The second field in the line is the FindPreferences string.
myFindPreferences = myFindChangeArray[1];
//The second field in the line is the ChangePreferences string.
myChangePreferences = myFindChangeArray[2];
//The fourth field is the range--used only by text find/change.
myFindChangeOptions = myFindChangeArray[3];
switch(myFindType){
case "text":
myFindText(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions);
break;
case "grep":
myFindGrep(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions);
break;
case "glyph":
myFindGlyph(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions);
break;
}
if(myCheckSelection == true){
myStartCharacter = myStory.characters.item(myStart);
myEndCharacter = myStory.characters.item(-myEnd);
myObject = myStory.texts.itemByRange(myStartCharacter, myEndCharacter);
app.select (myObject);
}
}
} while(myFindChangeFile.eof == false);
myFindChangeFile.close();
}
}
}
function myFindText(myObject, myFindPreferences, myChangePreferences, myFindChangeOptions){
//Reset the find/change preferences before each search.
app.changeTextPreferences = NothingEnum.nothing;
app.findTextPreferences = NothingEnum.nothing;
var myString = "app.findTextPreferences.properties = "+ myFindPreferences + ";";
myString += "app.changeTextPreferences.properties = " + myChangePreferences + ";";
myString += "app.findChangeTextOptions.properties = " + myFindChangeOptions + ";";
app.doScript(myString, ScriptLanguage.javascript);
var myFoundItems = myObject.findText();
// checkFoundItems( myFoundItems, myFindPreferences + '\r' + app.changeTextPreferences.changeTo );
checkFoundItems( myFoundItems, myFindPreferences + '\r' + myChangePreferences );
//Reset the find/change preferences after each search.
//app.changeTextPreferences = NothingEnum.nothing;
//app.findTextPreferences = 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;
var myString = "app.findGrepPreferences.properties = "+ myFindPreferences + ";";
myString += "app.changeGrepPreferences.properties = " + myChangePreferences + ";";
myString += "app.findChangeGrepOptions.properties = " + myFindChangeOptions + ";";
app.doScript(myString, ScriptLanguage.javascript);
var myFoundItems = myObject.findGrep();
checkFoundItems( myFoundItems, myFindPreferences + '\r' + myChangePreferences );
//Reset the find/change grep preferences after each search.
//app.changeGrepPreferences = NothingEnum.nothing;
//app.findGrepPreferences = 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;
var myString = "app.findGlyphPreferences.properties = "+ myFindPreferences + ";";
myString += "app.changeGlyphPreferences.properties = " + myChangePreferences + ";";
myString += "app.findChangeGlyphOptions.properties = " + myFindChangeOptions + ";";
app.doScript(myString, ScriptLanguage.javascript);
var myFoundItems = myObject.findGlyph();
checkFoundItems( myFoundItems, myFindPreferences + '\r' + myChangePreferences );
//Reset the find/change glyph preferences after each search.
//app.changeGlyphPreferences = NothingEnum.nothing;
//app.findGlyphPreferences = NothingEnum.nothing;
}
function myFindFile(myFilePath){
var myScriptFile = myGetScriptPath();
var myScriptFile = File(myScriptFile);
var myScriptFolder = myScriptFile.path;
myFilePath = myScriptFolder + myFilePath;
if(File(myFilePath).exists == false){
//Display a dialog to choose own list
var aResult = chooseMyOwnList( myScriptFile.path + '/FindChangeSupport');
if ( aResult != 'None' )
myFilePath = File( aResult );
else
myFilePath = File.openDialog("Choose the file containing your find/change list");
}
return myFilePath;
}
function myGetScriptPath(){
try{
myFile = app.activeScript;
}
catch(myError){
myFile = myError.fileName;
}
return myFile;
}

function chooseMyOwnList( aPath )
{
var myChoosedList = "None";
var myListFiles = Folder( aPath ).getFiles( '*.txt' )
var myLists = new Array;
for ( var f = 0; f < myListFiles.length; f++ )
myLists.push( myListFiles[f].name );
if (myLists.length > 0 ) {
var myDialog = app.dialogs.add({name:"FindChangeByList"});
with(myDialog.dialogColumns.add()){
with(dialogRows.add()){
with(dialogColumns.add()){
staticTexts.add({staticLabel:"Liste:"});
}
with(dialogColumns.add()){
var myListsDropdown = dropdowns.add({stringList:myLists, selectedIndex:0});
}
}
}
var myResult = myDialog.show();
if(myResult == true)
var myChoosedList = aPath + '/' + myLists[myListsDropdown.selectedIndex];
myDialog.destroy();
}
return myChoosedList;
}

function selectIt(theObj)
{
// Selects object, turns to page and zooms in on it
app.select(theObj,SelectionOptions.replaceWith);
app.activeWindow.zoomPercentage = 300;
}

function checkFoundItems ( theFoundItems, theString )
{
if (theFoundItems.length > 0)
{
selectIt( theFoundItems[0] );
alert ( 'Gefunden mit:\r' + theString.replace(/\\\\/g,'\\') );
}
else
{
alert ( 'Nix da!\r' + theString.replace(/\\\\/g,'\\') );
}
}



als Antwort auf: [#343029]
(Dieser Beitrag wurde von Martin Fischer am 27. Mär 2008, 21:07 geändert)

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Quarz
Beiträge gesamt: 3555

27. Mär 2008, 17:58
Beitrag # 12 von 18
Beitrag ID: #343417
Bewertung:
(26553 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

also mit Deinem Script ›FindChangeByList_Show.jsx‹
(Danke) habe ich ja nun gefunden, dass der Eintrag:

Code
text {findWhat:"E-Mail"} {changeTo:"eMail", caseSensitive:true} {} 

so nicht stimmt, denn es soll die Groß- und Kleinschreibung
beachtet werden.

caseSensitive:true habe ich im Forum gefunden;
allerdings gehörte das zu ›TextCleanup‹.
Kannst Du mir denn sagen, wie ›Groß-/Kleinschreibung
beachten‹ für ›ChangeFindByList‹ heißt?

Gruß
Quarz
------------------------
WinXP | CS3


als Antwort auf: [#343250]

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Martin Fischer
  
Beiträge gesamt: 12783

27. Mär 2008, 18:12
Beitrag # 13 von 18
Beitrag ID: #343421
Bewertung:
(26552 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Quarz,

caseSensitive ist eine FindChangeTextOption und gehört somit in die dritte geschweifte Klammer:

Code
text {findWhat:"E-Mail"} {changeTo:"eMail"} {caseSensitive:true} 


Weitere Eigenschaften von FindChangeTextOption:

caseSensitive
includeFootnotes
includeHiddenLayers
includeLockedLayersForFind
includeLockedStoriesForFind
includeMasterPages
wholeWord


Geht es so?


als Antwort auf: [#343417]
(Dieser Beitrag wurde von Martin Fischer am 27. Mär 2008, 18:19 geändert)

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Quarz
Beiträge gesamt: 3555

27. Mär 2008, 18:20
Beitrag # 14 von 18
Beitrag ID: #343423
Bewertung:
(26545 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

Danke - ja es funktioniert.

Jetzt, wo Du es sagst (schreibst), ist es ja auch klar,
denn in ›S & E‹ befindet sich der Schalter ja in der Reihe
mit ›Fußnoten miteinbeziehen‹, ›Ganzes Wort‹, etc.

Gruß
Quarz

------------------------
WinXP | CS3


als Antwort auf: [#343421]

GREP - Unterschiede mit ›S & E‹ und ›FindChangeByList‹

Kai Rübsamen
  
Beiträge gesamt: 4684

25. Apr 2008, 15:06
Beitrag # 15 von 18
Beitrag ID: #348043
Bewertung:
(26301 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Heute setze ich mich endlich mal mit dem Skript auseinander und find es klasse.

Zwei Dinge würde ich mir noch wünschen:
1. Kann man noch einen "Abbrechen" Button reinsetzen?
>> Wenn man vier Befehle hat und möchte gerne den dritten per Hand nochmal im Grep-Dialog nachvollziehen, geht das nicht.

2. Das Dialogfeld wird im Moment da platziert wo eigentlich der Text steht. Kann ich die Koordinaten so verändern, das es z.B. unten rechts steht?


als Antwort auf: [#343423]
X