home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / BEEHIVE / UTILITYS / VDO.ARC / VDO23-KP.DOC < prev   
Text File  |  1990-07-21  |  13KB  |  276 lines

  1. .fo               VDO Version 2.3   02/20/85     Page #
  2.                 Documentation for VDO Version 2.3
  3.                            Contents
  4. The following appears in this document:
  5.      Overview of VDO
  6.      Advantages of VDO
  7.      Disadvantages of VDO
  8.      Operation
  9.      Cursor Control
  10.      Single Keystroke Commands
  11.      Quick Commands
  12.      Block Commands
  13.      Error Handling
  14.      Customizing Notes
  15.  
  16.                             Overview
  17.      VDO (Video Display Oriented editor) is a small (5K) non-
  18. document file full screen editor. It originally appeared in a 
  19. BYTE article by Richard Fobes (BYTE 9/82 and 10/82), was 
  20. subsequently modified by Spite Software, then Bill McTeer, then 
  21. Don Krantz, then Mike Rejsa, then Don Krantz, then James H. Whorton.
  22. The present version (2.3) bears almost no resemblance to the
  23. original, except that both purport to do full screen editing.
  24.  
  25.      VDO is a memory based editor - that means that both the 
  26. editor and the file being edited reside in memory. With a 59K 
  27. CP/M system, that gives you a maximum file size of about 48K. 
  28. Since you will probably use this for program source files, that 
  29. ought to be plenty. If not, there's always WordStar.
  30.      VDO uses a small subset of standard WordStar keystroke 
  31. commands. Where possible the keystrokes to activate a VDO 
  32. operation are exactly the same as for WordStar.
  33.  
  34.                         Advantages to VDO
  35.      VDO's major advantage over WordStar and other screen editors 
  36. is its small size - only 5K of disk space is needed, as opposed 
  37. to 60+ for WordStar. A minor advantage is VDO's speed - with no 
  38. overlay files to swap in and out, VDO seems very fast. VDO 
  39. normally uses a memory mapped display interface, which speeds it 
  40. up even more.
  41.  
  42.                       Disadvantages to VDO
  43.      VDO lacks many features found in WordStar. However, most of 
  44. the important features are implemented.
  45. .cp 5
  46.                         Operation of VDO
  47.      VDO is started by typing either:
  48. VDO
  49.  
  50. -or-
  51.  
  52. VDO d:filename
  53.  
  54.      In the first version, where no filename is specified, VDO 
  55. will create a new file when you exit, asking for the filename at 
  56. that time. If the second version is used, VDO will attempt to 
  57. open the specified file. If no file of the specified name exists, 
  58. VDO will display an error message. You may continue from that 
  59. point, and the name specified will be used to save the new file. 
  60. If the file specified can be located, VDO will load the file and 
  61. place the cursor at the start of the file. In any of the the 
  62. three situations, you will be ready to start editing the file.
  63.  
  64.      VDO has only a few commands, broken into three major groups: 
  65. Cursor Control, Quick Commands, and Block Commands. Several minor 
  66. commands are also implemented. Anything not a control character 
  67. which can't be interpreted as a command will be entered into the 
  68. file as text.
  69.  
  70.                          Cursor Control
  71.      The standard WordStar cursor controls ^A, ^S, ^D, ^F, ^E, 
  72. ^X, ^R, ^C are all implemeted, and all work pretty much as you'd 
  73. expect. Definitions are:
  74.  
  75.      ^S   move cursor a character to the left
  76.      ^D   move cursor a character to the right
  77.      ^A   move cursor a word to the left
  78.      ^F   move cursor a word to the right
  79.      ^E   move cursor up a line
  80.      ^X   move cursor down a line
  81.      ^R   move a page (usually about 18 lines) up
  82.      ^C   move cursor a page down
  83.  
  84. Notes: 
  85.      The Osborne 1 version ALWAYS patches the arrow keys to 
  86. "WordStar" mode when entering VDO, and ALWAYS patches the arrow 
  87. keys to CP/M on exit.
  88.      The Osborne 1 uses ^- in place of DEL.
  89.      The Kaypro version allows the use of the arrow keys, as well
  90. as the above WS cursor controls. (JHW)
  91.      All versions may patch the source code to modify how many 
  92. lines the ^R and ^C commands move.
  93.      
  94.                     Single Keystroke Commands
  95.  These commands are all activated by single keystrokes.
  96. RETURN and TAB are both accepted at any time, and entered into 
  97. the file as text.
  98.  
  99. ^L   repeats last ^Q F or ^Q A (see Quick commands), using same 
  100.      options. (Note: ^U for Kaypro version. JHW)
  101. ^P   Enter a printer code - The next character typed will be
  102.      entered into the text as-is, even if it normally has other
  103.      significance (e.g. ^P^L will enter a ^L into the text file
  104.      rather than doing a "repeat find" operation).
  105. ^V   toggle Insert mode on or off
  106. ^T   delete one word to the right - the scheme is: first, delete
  107.      character under cursor. Next delete following displayable
  108.      characters (doesn't include control characters displayed).
  109.      Next, delete following white space (blanks and control 
  110.      characters) except for tabs or end-of-lines.
  111. ^Y   delete entire line cursor is on
  112. ^G   delete character right of (under) cursor
  113. DEL  delete character left of cursor
  114.  
  115.      When moving the cursor, the display will adjust to the 
  116. cursor position. You can't move the cursor off the screen 
  117. accidentally. If a line is too wide to fit on the screen, it will 
  118. scroll left automatically when the cursor travels off the left 
  119. end of the screen. The column count on the status line will 
  120. reflect the correct logical column at all times. Control 
  121. characters do not count as occupying a logical column.
  122.  
  123.                          Quick Commands
  124.  
  125.      The Quick Commands are all accessed by typing a Control-Q. A 
  126. menu will display showing Quick options. The Quick commands, with 
  127. one exception, all involve moving the cursor to a different 
  128. position in the text quickly.
  129.  
  130. ^QR  places the cursor at the start of the text.
  131. ^QC  places the cursor at the bottom of the text.
  132. ^QB  places the cursor at the marker for the beginning of the 
  133.      block, if this marker is set (see ^K B).
  134. ^QK  places the cursor at the marker for the end of the block, if 
  135.      the marker is set (see ^K K).
  136. ^QF  allows you to specify a string to search for in the text. 
  137.      This string may not include carriage returns. After 
  138.      selecting 'F', VDO will ask for the string to look for (the 
  139.      "target" string). Type in the string, then press RETURN. 
  140.           VDO will next ask if you wish to ignore upper and lower 
  141.      case differences. If you do not press "Y", VDO will look for 
  142.      a string capitalized exactly as you capitalized the target 
  143.      string. Pressing  a "Y", "y", or "^Y" will cause VDO to 
  144.      treat upper and lower case letters as exactly identical. 
  145.      (The default answer for this question may be configured in 
  146.      the source code)
  147.           Next, VDO will ask if you wish to look backwards from 
  148.      the cursor position. If you do not answer "Y", "y", or "^Y", 
  149.      VDO will look forward from the cursor postion.
  150.           When VDO finds the target string in the text, it will 
  151.      move the cursor to that position and display the surrounding 
  152.      text. If the string is not found, an error message will 
  153.      display and the cursor will be returned to the starting 
  154.      position.
  155. ^QA  Find-and-replace. Works just like ^QA, except when the 
  156.      string is found, a string of your choice is substituted for
  157.      the target string.
  158.      Note: Strings containing Carriage Returns may not be 
  159.      serached for, but any other control character may be 
  160.      included in the target string. (both ^QA and ^QF)
  161. ^QT  Set tab stops. VDO allows tabs to be set to 8, 2, 4, or 16, 
  162.      with the default at 8. This is a dynamic process, and is
  163.      used mainly for C, Ada, and Pascal programmers for variable
  164.      indentations.
  165.  
  166.                          Block Commands
  167.  
  168.      The block commands are all accessed by typing a Control-K. A 
  169. menu will appear with second-keystroke options. Not all Control-K 
  170. commands necessarily relate to marked blocks. Block commands 
  171. mainly operate on large portions of the text. A "Block" is a 
  172. section of the text file begining with the Block Start marker, 
  173. and ending with the Block End marker, which you may set at any 
  174. point in the text.
  175.      Attempting an operation which requires the blocks to be 
  176. marked will generate an error if the blocks aren't marked 
  177. properly - i.e. the beginning or end not marked, or the block end 
  178. marker prior to the block start marker.
  179.  
  180. [NOTE!: The following commands are accessed with ^O in the Kaypro
  181.  version. (JHW)]
  182.  
  183. ^KB  Set block start marker.
  184. ^KK  Set block end marker.
  185. ^KC  Copy marked block to the cursor position. Block remains 
  186.      marked at its original position, a copy of the block 
  187.      appears at the cursor, the cursor is positioned at the start
  188.      of the copy.
  189. ^KV  Move marked block to the cursor position. The marked block 
  190.      is removed from its position and appears at the cursor. The
  191.      markers disappear and the cursor is placed at the start of 
  192.      the moved material. A block can't be moved "into itself".
  193. ^KY  Delete marked block. The marked block is removed from the 
  194.      file and the cursor remains where it is.
  195. ^KW  Writes the marked block into a file of its own. You specify
  196.      the new filename.
  197. ^KR  Reads a disk file into the current file at the cursor 
  198.      position. You specify the filename.
  199. ^KP  Print the file. You will be asked for printer setup codes,
  200.      which are entered as you wish them sent. Example: You wish
  201.      to send ESCAPE B to the printer prior to printing. Press the
  202.      ESCAPE key, then the B key, then RETURN. Problems: You will 
  203.      not be able to send any codes for which keystroke 
  204.      equivalents don't exist, and you will not be able to send
  205.      the RETURN code (ASCII CR, hex 0DH, decimal 13).
  206. ^KZ  Zaps (erases) current file from memory (does not affect any
  207.      disk versions of the file), and erases the filename.
  208. ^KX  End of Edit. Saves the file under the current name and 
  209.      creates a backup file if a version is on disk already. If 
  210.      VDO was invoked without a filename, or if you ZAPped the 
  211.      file, VDO will ask for a new filename.
  212. ^KQ  Abandon file - any changes to the file (unless you did a ^KS
  213.      are abandoned. Any disk versions of the current file are not
  214.      affected.
  215. ^KS  Save and continue. Saves the file as it appears in memory, 
  216.      and continues the editing session. Used in case of failure.
  217. -- VDO resets the disk system before writing files, so the disk 
  218. may changed between reading a file in and saving a file, or in 
  219. case of system failure (e.g. DISK FULL, BAD SECTOR).
  220.  
  221.                          Error Handling
  222.  
  223. VDO has 9 editing errors which may occur, which clear the screen, 
  224. display a message, and wait for you to press the ESACPE key to 
  225. clear the error display. The messages are:
  226. FILE TOO BIG - occurs when loading a file to start the editing 
  227. session or using ^KR. In the case of ^KR, none of the file is 
  228. retained: the text remains as it was before you attempted ^KR. 
  229. This message may also occur when attempting to insert text after 
  230. the memory size of your system is exceeded.
  231. INVALID KEY - occurs when an entry contains an unexpected key. 
  232. Can happen during text entry when an undefined control character 
  233. is typed (e.g. ^O), or when entering filenames if bogus 
  234. characters are entered as part of the filename (e.g. "space") or 
  235. if the filename can't be properly formed.
  236. INPUT/OUTPUT FAILURE - occurs when a requested file can't be 
  237. found during initial load or ^KR, or when any system failure 
  238. occurs (e.g. DIRECTORY FULL, BAD SECTOR, R/O).
  239. STRING NOT FOUND - occurs during find or find-and-replace 
  240. operations if the target string can't be located.
  241. DISK FULL - self explanatory. You may insert another disk and try 
  242. again.
  243. BLOCK NOT MARKED - occurs when attempting a block operation which 
  244. require the block to be marked if both the block start and block 
  245. end markers aren't marked or if the end is prior to the start of 
  246. the block.
  247. BLOCK STRADDLES CURSOR - occurs when trying to move a block into 
  248. itself. The cursor can't be inside the block when copying or 
  249. moving a block.
  250. ILLEGAL TAB STOP - occurs when setting dynamic tab stops, if you 
  251. do not enter an valid tab stop number (2, 4, 8, 16 are the valid 
  252. numbers)
  253.  
  254.                          Customizing VDO
  255.  
  256.      VDO may be customized if you have the following: The source 
  257. code for VDO, M80 and L80 from MicroSoft, and experience with 
  258. assembly language.
  259.  
  260.      VDO is configured for the Osborne 1, the Zorba, the Fergusen 
  261. BigBoard, DEC VT52 terminal under CP/M and the Kaypro. Which version is 
  262. generated depends on four equates near the start of the source 
  263. code. 
  264.  
  265.      Several other equates allow setting a custom scroll point 
  266. for the horizontal scroll, default insert mode, default answer to 
  267. the Ignore U/L Case question for ^QA and ^QF, the DELETE key to 
  268. be used, and the number of lines to scroll for ^R and ^C.
  269.  
  270.      Custom terminals may be installed by either memory mapping 
  271. or terminal mapping. Terminal mapping should follow the VT52 map, 
  272. which actually is found as "not memmap" in most of the display 
  273. interface. Memory mapping is easier, except for the cursor. 
  274. You'll have to modify "CH.IN" to display some sort of cursor
  275. i