home *** CD-ROM | disk | FTP | other *** search
- /* ©1996 Dietmar Eilert. Empty GoldED macro */
-
- OPTIONS RESULTS /* enable return codes */
-
- if (LEFT(ADDRESS(), 6) ~= "GOLDED") then /* not started by GoldEd ? */
- address 'GOLDED.1'
-
- 'LOCK CURRENT RELEASE=4' /* lock GUI, gain access */
-
- if (RC ~= 0) then
- exit
-
- OPTIONS FAILAT 6 /* ignore warnings */
-
- SIGNAL ON SYNTAX /* ensure clean exit */
-
- /* ------------------------ INSERT YOUR CODE HERE: ------------------- */
- /* $VER: 1.3, ©1999 Wolfgang Morgeneier */
-
- 'QUERY Var=Wild Name=Wildcards'
- 'QUERY Var="Suchstring" Name=Find'
- 'Query Var="Ersetzenstring" Name=Rplc'
- 'QUERY Var=grkl Name=UseCase'
- 'FIX VAR=Suchstring'
- 'FIX VAR=Ersetzenstring'
- if length(Suchstring)=0 then Suchstring="x"
- if length(Ersetzenstring)=0 then Ersetzenstring="x"
-
- parse arg Eingabe
- sprache=substr(Eingabe,1,1)
- start =substr(Eingabe,2,1)
-
- if sprache = "d" then do
- R1B= "Suchstring im ASCII-Format eingeben (max 16 Zeichen):"
- R1T= "Eingabe"
- R2P= "Das erste Zeichen des Suchstrings darf kein Platzhalter sein"
- R3P= "Der Suchbegriff wurde nicht gefunden"
- R4B1="Ersetzenstring im ASCII-Format eingeben ("
- R4B2=" Zeichen):"
- R4T= "Eingabe"
- R5P= "Der Ersetzenstring muß genauso lang wie der Suchstring sein"
- R6T= "Alle folgenden Vorkommen ersetzen?"
- R6B= "Vorgang kann mit der CTRL-Taste abgebrochen werden"
- R6X= "Alles ersetzen|!Beenden"
- R7T= "Fertig"
- R7B1="Insgesamt "
- R7B2=" Ersetzungen"
- end
- else do
- R1B= "Enter search string in ASCII format (max 16 chars):"
- R1T= "Input"
- R2P= "The first char of search string may be no wildchar"
- R3P= "Search string not found"
- R4B1="Enter replace string in ASCII format ("
- R4B2=" chars):"
- R4T= "Input"
- R5P= "Replace string must have same length as search string"
- R6T= "Shall I replace all following findings?"
- R6B= "You can break this by pushing the CTRL key"
- R6X= "Replace all|!Finished"
- R7T= "Ready"
- R7B1="Totally "
- R7B2=" Replacements"
- end
-
-
- if start = "1" | start = "r" then do
- if length(Suchstring)>16 then Suchstring=left(Suchstring,16)
- 'REQUEST Body="' || R1B || '" Title="' || R1T || '" Var=Suchstring String Old="' || Suchstring || '"'
- if RC > 0 then do
- 'UNLOCK'
- exit
- end
- end
- SuchstringLaenge=length(Suchstring)
- if SuchstringLaenge > 16 then Suchstring=left(Suchstring,16)
- 'FIX VAR=Suchstring'
-
- if length(Suchstring)=0 then do
- 'UNLOCK'
- exit
- end
-
- if Wild=TRUE & Left(Suchstring, 1)=="?" then do
- 'REQUEST Problem="' || R2P || '"'
- 'UNLOCK'
- exit
- end
-
- 'SET Name=Find Value="' || Suchstring || '"'
- Optstring = " "
- if start = "2" then Optstring = Optstring || "NEXT "
- if grkl=TRUE then Optstring = Optstring || "USECASE "
- if Wild=TRUE then Optstring = Optstring || "WILDCARD "
-
- 'HEXSEARCHASCII SEARCH="' || Suchstring || '"' || Optstring
-
- if RC > 0 then do
- 'REQUEST Problem="' || R3P || '"'
- 'UNLOCK'
- exit
- end
-
- if start="r" then call ersetzen
-
- 'UNLOCK'
- exit
-
- ersetzen:
-
- ErsetzenstringLaenge = 0
- do until ErsetzenstringLaenge = SuchstringLaenge
-
- 'REQUEST Body="' || R4B1 || SuchstringLaenge || R4B2 || '" Title="' || R4T || '" Var=Ersetzenstring Max=' || length(Suchstring) || ' String Old="' || Ersetzenstring || '"'
- if RC > 0 then do
- 'UNLOCK'
- exit
- end
- ErsetzenstringLaenge=length(Ersetzenstring)
- Ersetzenstringorg = Ersetzenstring
- 'FIX VAR=Ersetzenstring'
- if ErsetzenstringLaenge ~= SuchstringLaenge then 'REQUEST Problem="' || R5P || '"'
- end
-
- 'SET Name=Rplc Value="' || Ersetzenstring || '"'
-
- call doersetzen
-
- 'REQUEST Title="' || R6T || '" Body="' || R6B || '" BUTTON="' || R6X || '"'
- if result = 0 then return
-
- Anzahl=1
- do forever
- 'HEXSEARCHASCII SEARCH="'Suchstring || '"' || Optstring
- if RC > 0 then do
- 'REQUEST Title="' || R7T || '" Body="' || R7B1 || Anzahl || R7B2 || '"'
- return
- end
- 'QUERY Name=CTRL Var=ctrl'
- if ctrl=TRUE then return
- call doersetzen
- Anzahl = Anzahl + 1
- end
-
- return
-
-
- doersetzen:
-
- do i=1 to length(Ersetzenstringorg)
- teil = substr(Ersetzenstringorg,i,1)
- 'FIX Var=teil'
- 'HEXKEY KEYA="' || teil || '"'
- end
-
- return
-
- /* ---------------------------- END OF YOUR CODE --------------------- */
-
- SYNTAX:
-
- SAY "Sorry, error line" SIGL ":" ERRORTEXT(RC) ":-("
-
- 'UNLOCK'
-
- exit
-