Created
March 28, 2013 06:59
-
-
Save cKlee/5261227 to your computer and use it in GitHub Desktop.
SucheErsetze Skript mit neuer Bedingung
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function bearbeiteZeilenErsetzen() | |
{ | |
//Zuerst werden die Zeilen gezählt, dann wandert das Script durch | |
//den ganzen Datensatz und vergleicht die Kategorien mit den Vorgaben des Anwenders | |
//bei der find-Anweisung steht lineOnly immer auf true, weil jede Zeile einzeln | |
//untersucht werden soll | |
var strbedingung = document.getElementById("idBedingung").value; | |
var strbedingung2 = document.getElementById("idBedingung2").value; | |
var zeilenNr, tagContent, strTag; | |
application.activeWindow.title.endOfBuffer(false); | |
var lZeilen = application.activeWindow.title.currentLineNumber; | |
application.activeWindow.title.startOfBuffer(false); | |
var bedingungInRange; | |
if (strbedingung2 != "") | |
{ | |
var bedingungInRange = false; | |
if (application.activeWindow.title.find(strbedingung2, bcaseSensitive, false, bwholeWord) == true){ | |
strTag = application.activeWindow.title.tag; | |
if(strTag >= Kat1 && strTag <= Kat2) | |
{ | |
bedingungInRange = true; | |
} | |
application.activeWindow.title.startOfBuffer(false); | |
} | |
} else { | |
bedingungInRange = true; // keine Bedingung | |
} | |
//alle Zeilen im Datensatz prüfen: | |
for (zeilenNr = 1; zeilenNr <= lZeilen; zeilenNr++){ | |
strTag = application.activeWindow.title.tag; | |
//alert("strTag: " + strTag + "\nKat1: " + Kat1 + "\nKat2: " + Kat2); | |
//alle Vorkommnisse in der Kategorie werden ersetzt: | |
if (strTag >= Kat1 && strTag <= Kat2){ | |
if(bedingungInRange) | |
{ | |
if (strbedingung != "") | |
{ | |
if (application.activeWindow.title.find(strbedingung, bcaseSensitive, true, bwholeWord) == true) | |
{ | |
application.activeWindow.title.startOfField(false);//Suche ab Zeilenanfang: | |
while(application.activeWindow.title.find(strSuche, bcaseSensitive, true, bwholeWord) == true) | |
{ | |
application.activeWindow.title.insertText(strErsetze); | |
} | |
} | |
} else { | |
while(application.activeWindow.title.find(strSuche, bcaseSensitive, true, bwholeWord) == true){ | |
application.activeWindow.title.insertText(strErsetze); | |
} | |
} | |
} | |
//alert(Kat1 + "\n" + strSuche + "\n" + application.activeWindow.title.find(strSuche, bcaseSensitive, true, bwholeWord)); | |
//find geht zum gesuchten Begriff und markiert ihn. Nochmals ausgeführt wird im Rest der Zeile gesucht | |
// while(application.activeWindow.title.find(strSuche, bcaseSensitive, true, bwholeWord) == true){ | |
// application.activeWindow.title.insertText(strErsetze); | |
// } | |
} | |
application.activeWindow.title.endOfField(false);//wichtig bei mehrzeiligen Inhalten! | |
application.activeWindow.title.lineDown(1, false); | |
application.activeWindow.title.startOfField(false); | |
} | |
return; | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0"?> <!-- -*- Mode: HTML -*- --> | |
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?> | |
<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?> | |
<dialog | |
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" | |
title="Suche und Ersetze" | |
buttons="cancel" | |
onload="onLoad();" | |
ondialogcancel="return onCancel();" | |
onunload="application.activate(); " | |
> | |
<script type="application/x-javascript" src="chrome://ibw/content/xul/gbv_sucheErsetze_dialog.js" /> | |
<tabbox flex="1"> | |
<tabs > | |
<tab label="Suchen und Ersetzen" onclick="focusFeldidSuche();"/> | |
<tab label="Ergänzen von Kategorien" onclick="focusFeldidWennKat();"/> | |
<tab label="nur VZG" id="tabLoeschen" onclick="focusFeldidLoescheKat();" /> | |
</tabs> | |
<tabpanels > | |
<tabpanel id="idSeite1"> | |
<vbox flex="1"> | |
<description style="width: 30em;" flex="1"> | |
Mit diesem Formular können in allen Datensätzen eines Sets Texte gesucht und durch neue ersetzt werden. | |
</description> | |
<groupbox> | |
<caption label="Was soll gesucht und ersetzt werden?"/> | |
<grid flex="1"> | |
<columns> | |
<column flex="1"/> | |
<column flex="1"/> | |
</columns> | |
<rows> | |
<row> | |
<label value="Suche:" /> | |
<textbox id="idSuche" | |
name="textboxTab1" | |
flex="1" | |
minheight="22px"/> | |
</row> | |
<row> | |
<label value="Ersetze:" /> | |
<textbox id="idErsetze" | |
name="textboxTab1" | |
flex="1" | |
minheight="22px"/> | |
</row> | |
</rows> | |
</grid> | |
</groupbox> | |
<groupbox> | |
<caption label="In welcher Kategorie soll Text ersetzt werden?"/> | |
<grid flex="1"> | |
<columns> | |
<column flex="1"/> | |
<column flex="1"/> | |
<column flex="1"/> | |
</columns> | |
<rows> | |
<row> | |
<separator/> | |
<label value="von:"/> | |
<label value="bis:"/> | |
</row> | |
<row> | |
<label value="Kategorie/n:"/> | |
<textbox id="idKategorie1" | |
name="textboxTab1" | |
flex="1" | |
tooltiptext="Beispiel: 7100 bis 7109" | |
minheight="22px"/> | |
<textbox id="idKategorie2" | |
name="textboxTab1" | |
flex="1" | |
tooltiptext="Beispiel: 7100 bis 7109" | |
minheight="22px"/> | |
</row> | |
</rows> | |
</grid> | |
</groupbox> | |
<groupbox> | |
<caption label="Weitere Bedingung (optional)"/> | |
<description style="width: 30em;" flex="1"> | |
Ersetze nur, wenn in derselben Kategorie auch dieser Text vorkommt. | |
</description> | |
<textbox id="idBedingung" | |
name="textboxTab1" | |
flex="1" | |
minheight="22px"/> | |
</groupbox> | |
<groupbox> | |
<caption label="Weitere Bedingung (optional)"/> | |
<description style="width: 30em;" flex="1"> | |
Ersetze nur, wenn in einer der angegebenen Kategorien auch dieser Text vorkommt. | |
</description> | |
<textbox id="idBedingung2" | |
name="textboxTab1" | |
flex="1" | |
minheight="22px"/> | |
</groupbox> | |
<groupbox> | |
<caption label="Sucheinstellungen"/> | |
<checkbox id="idCheckboxExemplar" name="checkbox" label="Nur Lokal- und Exemplarebene"/> | |
<checkbox id="idCheckboxWort" name="checkbox" label="als Wort"/> | |
<checkbox id="idCheckboxCase" name="checkbox" label="Groß-/Kleinschreibung"/> | |
</groupbox> | |
<separator/> | |
<hbox align="right"> | |
<button label="Alles zurücksetzen" oncommand="resetAllErsetzen();" /> | |
<button label="Set bearbeiten" accesskey="S" oncommand="bearbeiteSetErsetzen();" /> | |
</hbox> | |
</vbox> | |
</tabpanel> | |
<tabpanel id="idSeite2" flex="1"> | |
<vbox flex="1"> | |
<groupbox> | |
<caption label="Ergänzen von Kategorien:"/> | |
<grid flex="1"> | |
<columns> | |
<column flex="1"/> | |
<column flex="1"/> | |
</columns> | |
<rows> | |
<row> | |
<label value="Wenn in Kategorie ... " /> | |
<label value="dieser Text vorkommt ..." /> | |
</row> | |
<row> | |
<textbox id="idWennKat" | |
name="textboxTab2" | |
flex="1" | |
minheight="22px"/> | |
<textbox id="idWennText" | |
name="textboxTab2" | |
flex="1" | |
minheight="22px"/> | |
</row> | |
<row> | |
<label value="Dann ergänze Kategorie ..." /> | |
<label value="mit diesem Text ..." /> | |
</row> | |
<row> | |
<textbox id="idDannKat" | |
name="textboxTab2" | |
flex="1" | |
minheight="22px"/> | |
<textbox id="idDannText" | |
name="textboxTab2" | |
flex="1" | |
minheight="22px"/> | |
</row> | |
</rows> | |
</grid> | |
</groupbox> | |
<hbox align="right"> | |
<button label="Alles zurücksetzen" oncommand="resetAllZufuegen();" /> | |
<button label="Set bearbeiten" accesskey="b" oncommand="bearbeiteSetZufuegen();" /> | |
</hbox> | |
</vbox> | |
</tabpanel> | |
<tabpanel id="idSeite3" flex="1" hidden="true"> | |
<vbox flex="1"> | |
<groupbox> | |
<caption label="Löschen von Kategorien:"/> | |
<grid flex="1"> | |
<columns> | |
<column flex="1"/> | |
<column flex="1"/> | |
</columns> | |
<rows> | |
<row> | |
<label value="Lösche Kategorie ... " /> | |
<label value="wenn dieser Text darin vorkommt ..." /> | |
</row> | |
<row> | |
<textbox id="idLoescheKat" | |
name="textboxTab3" | |
flex="1" | |
minheight="22px"/> | |
<textbox id="idLoescheText" | |
name="textboxTab3" | |
flex="1" | |
minheight="22px"/> | |
</row> | |
</rows> | |
</grid> | |
</groupbox> | |
<hbox align="right"> | |
<button label="Alles zurücksetzen" oncommand="resetAllLoeschen();" /> | |
<button label="Set bearbeiten" accesskey="b" oncommand="bearbeiteSetLoeschen();" /> | |
</hbox> | |
<separator/> | |
<label value= "Diese Registerkarte ist nur für die ELN 1999 und 2013 sichtbar."/> | |
</vbox> | |
</tabpanel> | |
</tabpanels> | |
</tabbox> | |
<groupbox> | |
<caption label="Schlussmeldung: "/> | |
<label id="idSchlussmeldung1" value= " "/> | |
<label id="idSchlussmeldung2" value= " "/> | |
<label id="idSchlussmeldung3" value= " "/> | |
<button id="idButtonDatei" | |
label="Datei öffnen" oncommand="fehlerDateiOeffnen();" | |
hidden="true" /> | |
</groupbox> | |
</dialog> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment