/*
 * WRITE V3.848 © 1991-1994 by Tim Teulings
 *
 * Dieses Script öffnet einen Filerequester, in dem man verschiedene Files
 * auswählen kann. Anschließen öffnet sich der GETFINDREPLACE-Requester,
 * im welchem man dann ein Suchwort auswählen kann.
 * Write sucht dann in den entsprechenden Files nach dem Suchwort und ersetzt
 * alle gefundenen durch das Ersetzenwort.
 *
 */

IF ~show('P',"WRITE") THEN
DO
  say "Dieses Skrpit arbeitet nicht ohne dem Texteditor WRITE !"
  EXIT 0
END

ADDRESS "WRITE"

OPTIONS RESULTS
SIGNAL ON SYNTAX /* Abfangen von Syntaxfehlern */

'VERSIONCHECK 3848 "Replace.wrx"'
IF RC~=0 THEN DO
  exit 10
END

ID = -1

CLEARLIST 0
'GETFILES 0 "" ""'
IF RC~=0 THEN DO
  EXIT
END

LISTSIZE 0
Size = RESULT

IF Size=0 THEN DO
  EXIT
END

'NEWED "EMPTY.CONFIG"'
ID = RESULT
LOCKWINDOW ID

'GETFINDREPLACE _FindString _ReplaceString {@REPLACE}'
IF RC~=0 THEN DO
  QUITED
  EXIT
END

LastLine = -1

DO x=1 TO Size

  GETLISTENTRY 0 x
  IF RC=0 THEN DO
    File = RESULT
  END

  OPEN "(" || File || ")"
  IF RC=0 THEN DO

    'REPLACE @CURSOR @CURSOR @EOT @EOT {@SILENT @ALL @NOREQ}'

    found = Result

    IF found >0 THEN DO
      MESSAGEOK "(" || "Es wurde "||found||" mal\n$_FindString$\ndurch\n$_ReplaceString$\nin File\n" || File || "\nersetzt." || ")"
      SAVE "(" || File || ")"
    END

  END

  ID = -1

END

QUITED

EXIT

/********/
/* Ende */
/********/


SYNTAX:

SAY "Leider trat ein Fehler auf... Zeile " SIGL ":" ERRORTEXT(RC)
LOCKWINDOW 0
EXIT
