home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / Editor / GED403R.LZX / Install / Install.run / GOLDEDDATA / arexx / execute.ged < prev    next >
Encoding:
Text File  |  1996-07-26  |  1.9 KB  |  95 lines

  1. /* $VER: 1.0, ©1996 Dietmar Eilert. Executes lines of a text as DOS commands */
  2.  
  3. OPTIONS RESULTS                             /* enable return codes     */
  4.  
  5. if (LEFT(ADDRESS(), 6) ~= "GOLDED") then    /* not started by GoldEd ? */
  6.     address 'GOLDED.1'
  7.  
  8. 'LOCK CURRENT RELEASE=4'                    /* lock GUI, gain access   */
  9. if (RC ~= 0) then
  10.     exit
  11.  
  12. OPTIONS FAILAT 25                           /* ignore any errors       */
  13. SIGNAL ON SYNTAX                            /* ensure clean exit       */
  14.  
  15. /* ------------------------ INSERT YOUR CODE HERE: ------------------- */
  16.  
  17. 'QUERY CAT'
  18. GERMAN = (RESULT = "deutsch")
  19.  
  20. if (GERMAN) then do
  21.  
  22.     NOTEXT    = "Kein Text vorhanden ?!"
  23.     ASKACTION = "Aktion auswählen..."
  24.     ACTIONGAD = "!OK|_Weiter|_Abbruch"
  25. end
  26. else do
  27.  
  28.     NOTEXT    = "Text buffer is empty ?!"
  29.     ASKACTION = "Choose action..."
  30.     ACTIONGAD = "!EXECUTE|_Ignore|_Stop"
  31. end
  32.  
  33. 'QUERY PATH VAR PATH'
  34.  
  35. shell
  36. pragma('D', path)
  37. shell
  38.  
  39. if (right(path, 1) ~= ':') then
  40.     path = path || '/'
  41.  
  42. 'QUERY ANYTEXT'
  43.  
  44. if (RESULT = "TRUE") then do
  45.  
  46.     'MARK HIDE'
  47.  
  48.     'QUERY LINE   VAR LINE'
  49.     'QUERY LINES  VAR LINES'
  50.     'QUERY BUFFER VAR COMMAND'
  51.  
  52.     do while (line <= lines)
  53.  
  54.         'QUERY ANYCHAR'
  55.  
  56.         if (RESULT = "TRUE") then do
  57.  
  58.             'MARK SET'
  59.             'REQUEST BODY="' || ASKACTION || '" BUTTON="' || ACTIONGAD || '"'
  60.             
  61.             if (RESULT = 0) then
  62.                 leave
  63.  
  64.             if (RESULT = 1) then do
  65.  
  66.                 'QUERY BUFFER VAR COMMAND'
  67.  
  68.                 shell
  69.                 COMMAND
  70.                 shell
  71.             end
  72.  
  73.             'MARK HIDE'
  74.         end
  75.  
  76.         'DOWN'
  77.         line = line + 1
  78.     end
  79.  
  80.     'MARK HIDE'
  81. end
  82. else
  83.     'REQUEST PROBLEM="' || NOTEXT || '"'
  84.  
  85. /* ---------------------------- END OF YOUR CODE --------------------- */
  86.  
  87. 'UNLOCK' /* VERY important: unlock GUI */
  88. EXIT
  89.  
  90. SYNTAX:
  91.  
  92. SAY "Sorry, error line" SIGL ":" ERRORTEXT(RC) ":-("
  93. 'UNLOCK'
  94. EXIT
  95.