home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 517b.lha / Uedit_v2.6e / Errata < prev    next >
Text File  |  1991-06-09  |  21KB  |  523 lines

  1.  
  2. Uedit V2.5 manual errata:
  3.  
  4. *** Section 1.30.3 in the manual which discusses leftMargin and autoIndent
  5. needs correction.  A table needs to be provided to cover the cases.  Note
  6. that when autoIndent is off and leftMargin>0, normal typing does not use
  7. leftMargin.  But if you reformat the paragraph, it is indented to the column
  8. specified by leftMargin.  So leftMargin is used in paragraph reformatting if
  9. it is >0 even though during normal typing it is not used when autoIndent is
  10. off.  Note also that the Left Margin (L-m).
  11.  
  12. *** Some commands need to be moved to other keys.  Left Margin (L-m)
  13. conflicts with the Amiga key L-m which shifts screens.  The Hyper Text cmds
  14. use Left-Amiga key combinations that Workbench 2.0 uses.
  15.  
  16. *** CL argument list 13 in Part3 of the manual should be deleted.  list14
  17. should be the following:
  18.  
  19. LIST 14:  autoBackup autoIndent busies changed columnar cram favorite
  20.           hideDisplay icons lace learnMode mapChars markGadgets overStrike
  21.           printTabs readOnly rightJustify rowCol scrollType searchCaps
  22.           smartTabs speakAlerts speakMsgs spooks teachKeys trapMenus trueTabs
  23.           useKeys userGlobalA userGlobalB userLocalA userLocalB wordWrap
  24.  
  25. The CL functions marked as using list 13 should be changed to use list 14.
  26. No CL function uses list 13 which no longer exists.
  27.  
  28. *** Printed manual does not show the grep carat (^) symbol in the symbol
  29. table at the top of page 68.  The carat symbol forces a match to start of
  30. line.
  31.  
  32. *** The manual does not document the fact that spell() does not present
  33. optional spellings for bad words if the big dictionary is not in memory.  It
  34. does not bother looking up options on disk because it would be too slow.  For
  35. the optional spellings to be presented in the message line, you must have
  36. loaded the spelling dictionary into Uedit's memory.  Note that using the Load
  37. Speller command in Config!s (unless you customize it) if Uedit cannot find
  38. enough contiguous memory for the big dictionary, it will open the speller
  39. using the dictionary on disk - in this case, optional spellings will not be
  40. looked up and presented.
  41.  
  42. *** Hyper text was modified to allow partial words to be looked up.  This is
  43. not documented in the manual.  When the word buffer argument has something in
  44. it and the flag = 0 or 1, first the word buffer content is treated as a whole
  45. word/phrase in the lookup; if not found, it is treated as a partial word/
  46. phrase.  Thus you can type or click the first few letters of a hyper word or
  47. phrase and the lookup should find the whole word/phrase if it exists in the
  48. table.
  49.  
  50. *** AREXX INTERFACE:  Uedit's old cryptic standard Rexx interface (in the old
  51. Config!R) was replaced with Kerry Zimmerman's readable, verbose interface,
  52. which users say is much easier to use.  The manual talks about the old
  53. Config!R, not the new one which uses command words; so ignore the irrelevant
  54. parts of the discussion in the manual, particularly the Examples.  See
  55. ReadMe.Demo for instructions on using the new interface.  The manual will be
  56. updated on the next major upgrade.
  57.  
  58. Buffer usage:  (Buf 36 no longer used by Rexx interface)
  59. buf35 = holds REXXCOMM File for Rexx interface
  60. buf62 = Rexx msg/reply output buffer
  61. buf61 = Rexx msg/reply input buffer
  62.  
  63. *** The following cmds are for the Editing Tricks in the manual:  Rather than
  64. setting MaxFiles to a high number, which requires customizing the config
  65. files to change buffer numbers in its commands, you can store files on the
  66. buffer stack and access them just as though they were in file buffers.
  67.  
  68. Load each file and use the cmd below to push the file onto the buffer stack.
  69. You can load as many as memory will hold, and it doesn't use up file buffer
  70. slots.
  71.  
  72. Swap current buffer with stack & roll stack
  73. <shft-gadget4:
  74.     getStackSize(n51,n52,n53)
  75.     if (eqNum(n51,0)) {
  76.         putmsg("buffer stack is empty")
  77.         returnFalse
  78.     }
  79.     equateNum(n54,curfile)
  80.     ..if (getFlag(curfile,changed)
  81.     ..    & askYesNo("Save this changed buffer?")) saveFile(curfile)
  82.     push(buf99,curfile)
  83.     rollstack(curfile,1)
  84.     pop(buf99,buf[n54])
  85. >
  86.  
  87. To save changes, use the cmd below repeatedly.  It examines the stack and
  88. lets you save any buffers that have been changed.  Note that this cmd can be
  89. customized to save changes on the stack automatically by deleting the
  90. askYesNo() call.
  91.  
  92. Save changed files on buffer stack
  93. <alt-gadget4:
  94.     getStackSize(n51,n52,n53)
  95.     if (eqNum(n51,0)) {
  96.         putmsg("buffer stack is empty")
  97.         returnFalse
  98.     }
  99.     equateNum(n54,curfile)
  100.     do (n52,0,n51) {
  101.         push(buf99,curfile)
  102.         rollstack(curfile,1)
  103.         pop(buf99,buf[n54])
  104.         if (!eqNum(n52,n51)
  105.             & getFlag(curfile,changed)
  106.             & askYesNo("Save this changed file?")) saveFile(curfile)
  107.     }
  108. >
  109.  
  110. ------------
  111. v2.5e ERRATA
  112.  
  113. *** Added:  Save State (R-f5) and Load State (R-f6) menu commands.  These
  114. save Uedit's state in the default state file "uestate".
  115.  
  116. *** Added:  saveState(filename) & loadState(filename) CL functions.  (The
  117. filename arguments are list 10.)  saveState() saves Uedit's state to disk.
  118. loadState() loads in a previously stored state.
  119.  
  120. A "state" is a snapshot.  Storing Uedit's state consists of storing file and
  121. work buffers along with their local flags; also stored are many global
  122. variables including colors and split window information.  When you load in a
  123. state, everything is just as it was when the "snapshot" was taken; the split
  124. windows are in the same order, the cursors are in the same spot, the colors
  125. are the same, the currently active buffer is the same, colored regions are
  126. the same, the search & grep strings are the same, even the Changed (or not)
  127. status of files is the same.
  128.  
  129. NOTE:  The state does not include keys or learned sequences.  As part of your
  130. state command you can include saving or loading a data file and existing
  131. learned sequence, if you wish.  The state also does not include buffers and
  132. numbers on the stacks.
  133.  
  134. *** Added:  -s CLI command line flag.  Examples:
  135.     run UE -s         .. runs UE & loads in the default state file "uestate".
  136.     run UE -sMyState .. runs UE & loads in state file MyState.
  137.  
  138. NOTE:  When a state is loaded, it uses the buffers that were in use when the
  139. state was saved.  WARNING:  Files in Uedit may be erased so that the state
  140. can use their buffers; you should save any changes before loading in a state.
  141. Note also that if you type "Run UE -s file1 file2", file1 and file2 may be
  142. erased from Uedit's memory so their buffers can be used by the state being
  143. loaded in.
  144.  
  145. The -s flag is processed BEFORE the -k & -l CLI command line flags and AFTER
  146. the named files (if any) are loaded in.  You can specify a key or learned
  147. sequence (-k or -l) to act on the loaded state's files.  -s is processed
  148. after the -c and -d flags, of course.  To summarize, the sequence is this:
  149.     process -c and -d, if used
  150.     load files, if any
  151.     process -s, if used
  152.     process -l and -k, if used
  153.  
  154. *** Added:  Alt-keys array in config defaults.  Below the 2 printable keys
  155. arrays in the config defaults is another array of the same length (64
  156. characters).  These keys can be typed in using the ALT shift-modifier.  The
  157. purpose of the alt keys array is to enable foreign users to type in foreign
  158. characters either in normal or especially in primitive mode.  (In normal mode
  159. they could use a command to input foreign letters, but they couldn't type
  160. foreign letters in that way when in primitive mode.)
  161.  
  162. *** Added:  customScreen global CL variable and config default.  In the
  163. Config!  defaults it is the default just after smartTabs (which used to be a
  164. RESERVED slot).  If customScreen is FALSE or 0, when the screen opens it is a
  165. type WBENCHSCREEN; with a WBENCHSCREEN when you type Ctrl-y and "Run NewCLI"
  166. in Uedit, the CLI window is on top of Uedit's window, but a side effect is
  167. that rAmiga-n/m work strangely or incorrectly.  If customScreen is TRUE or 1,
  168. when the screen opens it is a CUSTOMSCREEN; with a CUSTOMSCREEN you cannot
  169. open a CLI or Performance Monitor window on top of Uedit's screen, but the
  170. rAmiga-n/m keys work correctly.
  171.  
  172. *** Added:  Alt-gadget3 command to clear all bookmarks.
  173.  
  174. *** Added:  CL variables sWidth and sHeight to set the pixel width & height
  175. of Uedit's screen.  These belong in list 10 of the manual's argument lists.
  176.  
  177. *** Added:  2 new Config! defaults for setting the screen's pixel width &
  178. height.  The 2 reserved slots after "Trap menus" are replaced:
  179.     old:
  180.     <0>     Trap menus to use menu mouse button as a key
  181.     <0>     Reserved.
  182.     <0>     Reserved.
  183.     new:
  184.     <0>     Trap menus to use menu mouse button as a key
  185.     <664>     Screen width in pixels (640-1064)
  186.     <224>     Screen height in pixels (gets auto-doubled for LACE) (200-1064)
  187.  
  188. ------------
  189. v2.6a ERRATA
  190.  
  191. *** FIXED:  Line count was wrong when lines/page = 1.
  192.  
  193. *** FIXED:  search() wouldn't find stuff like \\ or \*\*.
  194.  
  195. *** Added:  Key names for middle mouse button:
  196.                 middleDown  macnum = 73
  197.                 middleUp    macnum = 75
  198.  
  199.     Example:  <normal-middleDown:
  200.                     runKey(normal-buttonDown) .. deposit cursor
  201.                     runKey(ctl-r) .. execute learned sequence
  202.               >
  203.  
  204. *** Added:  '_' (underscore) after "Uedit" in title bar indicates OVERSTRIKE
  205.     mode is on:
  206.                   "Uedit V2.6a [0]"  it is OFF.
  207.                   "Uedit_V2.6a [0]"  OVERSTRIKE is ON.
  208.  
  209. *** Added:  New font name & height defaults in Config!
  210.     <topaz>  Font name
  211.     <8>      Font pixel height (8-32)
  212.  
  213. *** Added:  New setFont(fontName,fontHeight) CL fct for selecting font.
  214.  
  215. setFont(fontname,fontheight)
  216. fontname:     list 0
  217. fontheight:  list 10
  218.     returns eRUE if fontname exists with font size equal to fontheight.  The
  219.     font may be in memory or on disk; if font isn't in memory it is loaded
  220.     from disk.  When a new font is selected or when Uedit quits, the current
  221.     font is released.
  222.  
  223.     setFont() does not change the font immediately or visibly.  It merely
  224.     changes the stored font name and height.  Next time Uedit's screen is
  225.     reopened - as when changing screens or returning from tiny window - the
  226.     new font is used.  If the font cannot be found, topaz 8 is used by
  227.     default.
  228.  
  229.     EXAMPLE command that switches Uedit's font.  Notice that it goes to/from
  230.     tiny window in order to close/reopen the screen; and it runs startup cmd
  231.     so that menu item spacings will be recomputed for the new font:
  232.     <normal-esc:
  233.     setfont("topaz",11) toggle(toTiny) toggle(toTiny) runkey(startup) >
  234.  
  235.     NOTE: Now you can use a proportional font in your Workbench 2.0 and a
  236.     non-proportional font in Uedit.
  237.  
  238. *** Added:  tinyPriority CL argument and Config! default.  This sets the task
  239. priority of Uedit while in tiny window.  Uedit does housekeeping in tiny
  240. window and on large buffers this may consume resource, so you may wish to set
  241. Uedit to a low priority in tiny window to keep it from hogging machine
  242. resource during housekeeping or whatever work is being done in tiny window.
  243.  
  244. *** Added:  setTaskPri() CL function to set Uedit's task priority.
  245.  
  246. setTaskPri(pri)
  247. pri:  list 10
  248.  
  249.     This sets Uedit's task priority when it is not in tiny window.  The
  250.     tinyPriority CL variable and Config! default sets its priority when it is
  251.     in tiny window.
  252.  
  253.  
  254. *** Added:  Dynamic use of Dictionary Supplement during spell checking.  You
  255. now can have an optional UDSupplement in buf41 for the spell checking cmds.
  256. (See the rAmgia-c cmd in Config!S.)  When the word isn't found in the main
  257. dictionary, spell() looks in the supplement.  The supplement must be in alpha
  258. order; you can use SA-s to sort a stacked list of words to make a dictionary
  259. supplement.
  260.  
  261. spell(B1,B2,B3)
  262. B1,B3:  list 0 (buffer or " ")
  263. B2:     list 2 (buffer)
  264.  
  265. The normal return for spell() is False; this indicates a bad word was found.
  266. It also returns False if B2, the buffer being spell checked, does not exist
  267. or if the speller is not up.  If spell() returns True, it has reached eof.
  268. It checks from the cursor forward in B2, stopping when a bad word is found.
  269. If B1 is a buffer, optional spellings are put into B1.  If B1 is " ", spell()
  270. simply returns False when it finds a bad word.  (See the commands in
  271. Config!S.)  When B1 is " " (no optional spellings), spell() may be aborted
  272. with Amiga-ESC.  When B1 is a buffer (to collect optional spellings), the
  273. lookup of spelling options may be stopped early on by giving an input; the
  274. options accumulate in the message line as they are found, and thus when you
  275. see the option you want you can click it with the mouse and no further
  276. options are sought.  If B3 is a buffer, it is used as a supplemental
  277. dictionary; the words in it should be on separate lines and in alphabetical
  278. order.  If B3 is " ", no supplement is used.  (See spellerUp, startSpell()
  279. and stopSpell.)
  280.  
  281. Cursor Action:  Advances cursor until it finds a bad word or eof.
  282.  
  283. Display Action:  If B=curFile, refreshes cursor; if offscreen, centers cursor.
  284.  
  285. Example:
  286.     if (not spellerUp) return
  287.     while (not spell(buf54,curFile," ")) runKey(virtual-z) .. replace bad words
  288.  
  289. *** Added:  Uedit now processes work in tiny window.  Just start a process,
  290. click the title bar and switch immediately to tiny window.  If a requester
  291. requires an input, Uedit returns to its big screen.  If a primitive mode
  292. input is required, Uedit waits until you return to big screen and give the
  293. input.  Recall that you can set the priority of Uedit separately in big
  294. screen and tiny window now also; thus you can start a big process and go to
  295. tiny window and let Uedit finish the process using a lower (tiny window) task
  296. priority, if you wish.
  297.  
  298.  
  299. *** Added:  A draw() CL function.
  300.  
  301. draw(x,y,color,mode,flag)
  302. x,y,color,mode,flag:  list 10
  303.  
  304. draws a line from the current position to x-y using the color, drawing mode,
  305. and flag values specified.  Color = 0-7 specifies a color; color = -1 means
  306. use the current (last) color.  mode values are: 0 = JAM1, 1 = JAM2, 2 = XOR,
  307. 4 = INVERSE.  flag = 0 means do only a move(x,y) to set the current drawing
  308. position to x-y; other arguments are ignored except the color is stored.
  309. flag = 1 means draw a line to x-y using color, mode, and flag.  Example:  You
  310. can draw (using XOR) a grating on top of the text in the window & erase it by
  311. redrawing it again with XOR.  You can draw boxes and other figures with the
  312. mouse.  draw() always returns True.
  313.  
  314. Compile BOTH of the cmds below to try this example.  Press shft & the mouse
  315. button and move the mouse:
  316.  
  317. Note how xor erases old box on second execution.
  318. <virtual-esc:
  319.     draw(n0,n1,   0,2,0)
  320.     add(n54,n0,20)
  321.     draw(n54,n1, -1,2,1)
  322.     add(n53,n1,20)
  323.     draw(n54,n53,-1,2,1)
  324.     draw(n0,n53, -1,2,1)
  325.     draw(n0,n1,  -1,2,1)
  326. >
  327.  
  328. Place cursor or scroll if button held
  329. <shft-buttonDown:
  330. ..    moveCursor(curFile,mouseLoc)
  331. ..    updateDisplay
  332.     mouseXY(n0,n1)
  333.     runkey(virtual-esc)
  334.     if (not mousedown) return
  335.     equateNum(n54,0)
  336.     while (not inputwaiting) {
  337.         trackmouse
  338.         mouseXY(n2,n3)
  339.         if (!eqNum(n2,n0) & !eqNum(n3,n1)) {
  340.             runKey(virtual-esc)
  341.             equateNum(n0,n2)
  342.             equateNum(n1,n3)
  343.             runKey(virtual-esc)
  344.         }
  345.     } >
  346.  
  347. Another example:  XOR a grating onto text.  Erase it on second execution.
  348. <shft-esc:
  349.     ..putmsg("  ") putmsg(" ")
  350.     ..updateDisplay
  351.     equateNum(n0,-8)
  352.     while (add(n0,n0,8) & genum(sWidth,n0)) {
  353.         draw(n0,16,0,2,0)
  354.         draw(n0,sHeight,0,2,1)
  355.     } >
  356.  
  357. ..equateNum(n0,50)
  358. ..equateNum(n2,550)
  359. ..equateNum(n1,25)
  360. ..equateNum(n3,150)
  361. ..runkey(virtual-b)
  362.  
  363. Draw a box of with corners (x-y) given by n0-n1 and n2-n3
  364. ..<virtual-b:
  365.     draw(n0,n1,2,2,0)
  366.     draw(n2,n1,-1,2,1)
  367.     draw(n2,n3,-1,2,1)
  368.     draw(n0,n3,-1,2,1)
  369.     draw(n0,n1,-1,2,1)
  370. >
  371.  
  372. *** Added:  100 buffer & 100 number stacks.
  373.  
  374. getStackSize(B,N,S)
  375. B,N,S:  list 10 (integer)
  376.  
  377. Reports the current buffer stack size in B, number stack size in N, and save-
  378. file stack size in S.
  379.  
  380. Example:  .. get size of buffer stack 22 in n11 & number stack 99 in n12
  381. equateNum(n11,22) equateNum(n12,99) getStackSize(n11,n12,n13)
  382.  
  383.  
  384. pop(S,BN)
  385. S,BN:  list 10 (buffer or number)
  386.  
  387. pops the next item from stack S into buffer or number variable BN.  Returns
  388. False if stack S is empty.  If S is a buffer variable such as buf10, buffer
  389. stack 10 is used; if S is a number variable such as N22, number stack 22 is
  390. used.  The stack is popped variable BN.  If a buffer is popped off a buffer
  391. stack the current buffer BN is deleted and the stack is popped into buffer
  392. variable BN.  Note that the stack is LIFO, last-in-first-out.  (See
  393. getStackSize(), push(), and rollStack().)
  394.  
  395. Display Action:  Displays "home" buffer, if pop into curFile.
  396.  
  397. Example:  pop(n22, pageLines) .. pop number stack 22 into pageLines variable.
  398. pop(buf99, buf3) .. pop buffer stack 99 into buf3 slot, killing old buf3.
  399.  
  400. push(S,BN)
  401. S,BN:  list 10 (buffer or number)
  402.  
  403. pushes item BN, a buffer or number, onto the stack indicated by S.  If S is a
  404. buffer variable such as b10, it means use buffer stack 10; if it is a number
  405. variable such as n22, it means use number stack 22.  There are 100 buffer and
  406. 100 number stacks.  False is returned if 8 bytes is not available for the
  407. stack entry.  If BN is curFile, the "home" buffer becomes the new curFile; If
  408. BN is the last file buffer, a new NoName buffer is opened.  (See rollStack(),
  409. getStackSize(), and pop().)
  410.  
  411. Display Action:  If curFile pushed, displays new curFile.
  412.  
  413. Example:  push(buf10, curFile)   .. push curFile onto buffer stack 10.
  414. push(n0,lineLength) .. push lineLength onto number stack 10.
  415.  
  416. rollStack(X,N)
  417. X:  list 10 (buffer or integer)
  418. N:  list 10 (integer)
  419.  
  420. Rolls the buffer stack by amount N, if X is a buffer argument; rolls the
  421. number stack by amount N, if X is an integer argument.  X indicates which
  422. buffer or number stack to roll.  rollStack() returns False, if the (buffer or
  423. number) stack size is less than 2 or if N is 0.  N may be positive or
  424. negative, and the stack is rolled forward or backward based on the sign and
  425. amount of N.  The stacks are LIFO, last-in-first-out.  If N is 1, the first-
  426. out stack entry is rolled to the last-out position, so that the second-out
  427. becomes the first-out.  If N is -1, the last-out entry is rolled to the
  428. first-out slot.  (See push(), pop(), and getStackSize().)
  429.  
  430. Example:  rollStack(buf10,1)   .. rolls buffer stack 10 forward by 1.
  431. rollStack(n0,n54)    .. rolls number stack 0 by the amount in n54.
  432.  
  433. ------------
  434.  
  435. ***  In the manual page 8 where it says to slide the screen by putting the
  436. mouse at the far right, this is no longer true.  Instead you should put the
  437. mouse at the very top of the screen to slide the screen.
  438.  
  439. ------------
  440. v2.6b ERRATA
  441.  
  442. None.  V2.6b just fixes a few minor bugs.  See Revision-History.
  443.  
  444. ------------
  445. v2.6c ERRATA
  446.  
  447. None.  V2.6c just fixes a few minor bugs.  See Revision-History.
  448.  
  449. ------------
  450. v2.6d ERRATA
  451.  
  452. NEW:  Created new rexxKey command name.  Like startup, idle, and preKey,
  453. rexxKey does not use shiftkeys.  rexxKey runs automatically in idle periods
  454. ONLY if there is a rexx msg/reply waiting to be processed.  The special key
  455. macroNums now are:
  456.         rexxKey 1145
  457.         idle    1146
  458.         preKey  1147
  459.         startup 1148
  460.  
  461. NOTE:  The purpose of rexxKey is to reduce overhead.  When the idle cmd was
  462. used to process rexx traffic with idleTime=0, there was high overhead because
  463. idle constantly.  rexxKey runs (during idle periods) ONLY if there is an
  464. incoming msg/reply to process.  And if you process the msg/reply in your
  465. rexxKey cmd, rexxKey won't run again until there is another msg/reply to
  466. process.  (In the std config, rexxKey runs ONLY if autoTraffic mode On.  See
  467. Config!R.)
  468.  
  469. NOTE:  In order to keep rexxKey from running repeatedly in idle periods, you
  470. MUST process the incoming msg/reply by calling rexxIn() in your rexxKey cmd.
  471. In the std config turn on autoTraffic and this is taken care of
  472. automatically.  (See Config!R.)
  473.  
  474. NOTE:  Config!R was modified to swap virtual-t with the rexxKey cmd instead
  475. of with the idle cmd; the idle cmd is no longer used in Config!R.  Don't
  476. forget to modify your custom Config!R, if you aren't going to use the one in
  477. the std config on the Uedit disk.
  478.  
  479. NEW:  Created new sortLines(buffer=list 2,caseSensitive=list 10) CL fct.  It
  480. sorts the lines in the buffer.  If caseSense is non-zero, case sensitivity is
  481. used in the sort.  If caseSense is 0, case sensitivity is not used in the
  482. sort.
  483.  
  484. NEW:  Created inTiny CL fct, returns TRUE if currently in tiny window.
  485.  
  486. NEW:  Underscore mark in title bar to show Changed status.
  487.  
  488. NEW:  Fcreated new CL functions screenToBack and screenToFront.
  489.  
  490. NEW:  Tiny window now adjusts its height to be double approx the cli window's
  491. font height.
  492.  
  493. NEW: When smartTabs is TRUE, spacesToTabs/tabsToSpaces warns when an eol is
  494. encountered and a quote is not closed.
  495.  
  496. ------------
  497. v2.6d ERRATA
  498.  
  499. Certain keys could not be input and had to be moved because the Amiga uses
  500. them.  The LEFT Amiga mouse & gadget keys for Hyper Text were moved to RIGHT
  501. Amiga.  Set Left Margin was moved from lAmiga-m to lAmiga-k.  The keys
  502. changed were:
  503.  
  504. lAmiga-gadget1  -->  rAmiga-gadget1
  505. lAmiga-gadget3  -->  rAmiga-gadget3
  506. lAmiga-gadget4  -->  rAmiga-gadget4
  507. lAmiga-buttonDown --> rAmiga-buttonDown
  508. lAmiga-m --> lAmiga-k
  509.  
  510. ------------
  511. v2.6e ERRATA
  512.  
  513. Bookmarks:  The bookmark commands were improved.  Bookmarks are now named.
  514. The alt-gadget3 Clear Marks command was moved to shft-gadget4 and put into
  515. the Bookmarks submenu, and the 4th gadget name was changed to "Up/Clr Marks".
  516.  
  517. Now the shift-gadgets let you goto next mark, goto prev mark, set a mark and
  518. name it, and clear the marks.  When you clear the marks they are set by
  519. default to sFile, eFile, sHilite, eHilite, sInvert, eInvert, locA, and locB,
  520. and they are named "Start of file", "End of file", and so on accordingly.
  521.  
  522. buf60 is now used for storing bookmark names.
  523.