home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 164.lha / ARexx / TXed_ARexx / ref.txed < prev    next >
Text File  |  1988-04-28  |  1KB  |  47 lines

  1. /* REF MACRO  ala DME*/
  2. /* James Gary */
  3. /*   7-15-88 */
  4.  
  5. arg lookup
  6. OPTIONS RESULTS
  7. call addlib('rexxsupport.library',0,-30,0)  /* For showlist() call */
  8.  
  9. if (lookup = '') then do
  10.    'ST L' /*Get current line from txed */
  11.    line = result
  12.  
  13.    'ST R' /*Get cursor position info */
  14.    pos = result
  15.    col = word(pos,4) /* Current column is 4th word of cursor position result */
  16.  
  17. /* Find the word the cursor is on. Unlike DME, we do not have to be at
  18.    the start of the word */
  19.    word = 1
  20.    index = wordindex(line, word)
  21.    do while ((index <= col) & (word < words(line)))
  22.         word = word + 1
  23.         index = wordindex(line,word)
  24.         end
  25.    if (index > col) then word = word -1
  26.  
  27.    lookup = word(line,word) /* lookup is the word the user wants to ref */
  28.  
  29. /* Send lookup to the macro lookitup. Refport is used only for 
  30.    synchronization. We will wait untill lookitup sends us a 
  31.    message through refport, then send lookup through lookport. */
  32.  
  33. end
  34.  
  35. call openport('refport')
  36.   /* would like to use moretxed, but need rexx macro with new edit window
  37.      port as host. Seperate invocation of txed seems easiest way to do this. */
  38. address command 'e STARTUP lookitup'
  39. call waitpkt('refport')
  40. packet = getpkt('refport')
  41. call reply(packet,0)   /* We don't care about message, just synchronized */
  42. call closeport('refport')
  43. address 'lookport' lookup
  44.  
  45. /* 
  46. Window <- test reference word
  47. */