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 / CPM / TURBODSG / FANLED.DOC < prev    next >
Text File  |  2000-06-30  |  9KB  |  211 lines

  1. ...14 Jul 85... (see end of file for update info)
  2.  
  3. ESKAY SOFTWARE presents....
  4.  
  5.  
  6.             FANLED - a FANcy Line EDitor for TurboDOS
  7.  
  8.  
  9.  
  10. FANLED is a TurboDOS module designed to allow sophisticated line editing
  11. capabilities on the TurboDOS command line.  It completely replaces the
  12. INPLN module supplied by Software 2000.  FANLED has been tested on TurboDOS
  13. version 1.41 systems and may not work in pre-1.4x versions.
  14.  
  15.  
  16. =========================================================================
  17. THIS IS THE RELEASE VERSION OF FANLED.  PLEASE FOLLOW ALL INSTRUCTIONS TO
  18. BRING IT UP.  PASS IT ON TO A FRIEND.  IF YOU USE IT COMMERCIALLY, YOU'RE
  19. WELCOME TO DO SO, BUT PLEASE LET ME KNOW.  THANKS.
  20. S. KLUGER, 7120 SKILLMAN #2104, DALLAS TX 75231  (214) 553-1363 1200 BAUD
  21. =========================================================================
  22.  
  23.  
  24. 1. INSTALLATION
  25.  
  26. FANLED can be installed two ways: (8 bit version)
  27. 1 If you have PACKAGE.COM and all kernel modules, simply replace "INPLN"
  28.   in the .PKG files with "FANLED" and use the PACKAGE command to generate
  29.   new STDxxxxx.REL files.
  30. 2 If you do not have PACKAGE.COM, you will need a library manager, such as
  31.   Digital Research's LIB.COM (comes with RMAC and CB80) to replace INPLN
  32.   with FANLED in all STDxxxxx.REL files.  Example:
  33.   0A}LIB STDSLAVE=STDSLAVE<INPLN=FANLED>
  34.  
  35. Method 1 above also works for 16 bit systems.  If you don't have the PKG
  36. files and PACKAGE.CMD, you are almost out of luck unless your OEM or
  37. systems house can supply DELINK and RELINK.  DELINK changed a .O file into
  38. its mapping information, while RELINK restores the .O file.  You would have
  39. to use DELINK and an editor to remove the INPLN module, put the DELINKed
  40. version of FANLED in its place (be sure to remove the EOF) and then RELINK
  41. the whole mess.  It may be better to just RELINK STDSLAVE.O without
  42. FANLED and put FANLED in the GEN file so it can be updated easier.
  43.  
  44.  
  45. In your PAR file, be sure to include FORSPC = "^n" where "^n" is the 
  46. control character that causes your video display to space forward non-
  47. destructively. The default is:
  48. FORSPC = "^L"
  49. which is common to many terminals.
  50.  
  51. In order to save space, your command line buffer should not exceed 160
  52. characters.  If you do not use "CLBLEN = " in your PAR file, you are
  53. safe, else be sure CLBLEN = 9B (default value).  Future versions of FANLED
  54. will allocate buffer space dynamically.
  55.  
  56. Now re-GEN your SYS files and you're ready to roll...
  57.  
  58.  
  59. 2. FEATURES
  60.  
  61. FANLED provides the following editing features on the command line:
  62. - recall of last command line (only if recall executed before anything
  63.   else is typed)
  64. - cursor movement forward and backward character-wise, as well as move
  65.   cursor to beginning or end of line
  66. - delete character forward or backward
  67. - delete all characters left of cursor
  68. - delete all characters right of cursor
  69. - insert character at cursor position
  70. - yank kill buffer (undo last delete, inserting at current cursor
  71.   position).
  72.  
  73.  
  74. 3. DETAILED COMMAND DESCRIPTION
  75.  
  76. The FANLED command set is based on the EMACS command set as used in the
  77. MINCE editor and other Mark Of The Unicorn products.
  78.  
  79. 3.0 The cursor
  80.     The cursor is defined as placed BETWEEN two characters.  The
  81.     character displayed to the left of the cursor is the character
  82.     assumed to be to the left, the character displayed above the
  83.     cursor (or overstriking the cursor, whichever cursor mode
  84.     your terminal may be in) is considered to be to the right
  85.     of the cursor.
  86.     Note that if your command line is longer than can be displayed on
  87.     one terminal line, the terminal must be in WRAPAROUND mode for
  88.     FANLED to work properly!
  89. 3.1 Entering a command line
  90.     A command line is entered as usual with a RETURN terminating it
  91.     and causing it to be executed.
  92. 3.2 Recalling previous command line
  93. ^R    The previous command line can be recalled by typing ^R at the
  94.     system prompt.  Typing ^R as any character other than the first
  95.     causes the ^R to be ignored and not acted upon.  After a line
  96.     recall, the cursor is positioned at the end of the line.
  97. 3.3 Cursor movement
  98. ^F ^B    The cursor is moved forward by pressing ^F and backward by
  99.     pressing ^B.  If the cursor is at the beginning of a line, ^B
  100.     will be ignored.  If the cursor is at the end of a line,
  101.     ^F will be ignored.
  102. ^A ^E    The cursor is moved to the beginning of the line by pressing ^A.
  103.     The cursor is moved to the end of the line by pressing ^E.
  104. 3.4 Delete character
  105. ^D ^H    Pressing ^D causes the character in front of the cursor to be
  106.     deleted, moving the remainder of the line to the left by one
  107.     character.  Pressing ^D at the end of a line will be ignored.
  108.     Pressing ^H (or the BACKSPACE or DELETE key) causes the character
  109.     to the left of the cursor to be deleted.  Attempts to delete
  110.     past the beginning of the line will be ignored.
  111. 3.5 Kill characters
  112. ^K ^X    Pressing ^K will cause all characters to the right of the cursor
  113.     to be deleted and placed into the kill buffer, overwriting the
  114.     current contents of the kill buffer.  Pressing ^X causes all
  115.     all characters to the left of the cursor to be deleted and placed
  116.     in the kill buffer, overwriting the previous contents of the kill
  117.     buffer and moving all characters to the right of the cursor to
  118.     the beginning of the line.
  119.     ^K and ^X become invalid if there is nothing to be killed, without
  120.     altering the kill buffer contents.
  121. 3.6 Unkill characters
  122. ^Y    Typing ^Y will cause the contents of the kill buffer to be
  123.     inserted at the current cursor position.  Note that the contents
  124.     of the kill buffer will be retained until the next ^K or ^X is
  125.     executed.  This allows for a simple 1-line storage...
  126. 3.7 Inserting editing characters as control characters
  127. ^Q    Typing ^Q will cause the NEXT character to be inserted into the
  128.     command line.  Use it to insert one of the edit command characters
  129.     into the command line.  A RETURN cannot be inserted.
  130. 3.8 Terminate and execute
  131. RET    Typing RETURN (ENTER, ^M) causes the whole command line to be
  132.     sent to TurboDOS for execution, even if the cursor is positioned
  133.     somewhere other than at the end of the line.
  134. 3.9 USE OF FANLED
  135.     FANLED is invoked automatically at the operating system prompt
  136.     and (!!) when C-function 10 is executed.  Many programs use
  137.     C-function 10 to obtain string-oriented input!
  138.  
  139.  
  140. 4. COMPATIBILITY
  141.  
  142. FANLED's advanced features can, of course, only be used on video terminals.
  143. If the terminal has an AUTO-CRLF or WRAPAROUND mode, it should be enabled
  144. so the editing features can be used on a command line longer than what fits
  145. on one terminal line.
  146.  
  147.  
  148. 5. LEGAL STUFF AND SUCH
  149.  
  150. FANLED was written for unlimited distribution.  Its object code is placed
  151. into the Public Domain with the only restriction that it be used only by
  152. licensed users of the TurboDOS operating system.  Companies wishing to
  153. include FANLED into systems sold to their customers should notify me of
  154. such use, however, no royalties, license agreements and other such useless
  155. junk will be necessary.  I just want to know who uses it.
  156. OEM houses and large volume system integrators with competent systems level
  157. programmers may obtain the source to FANLED by sending me a diskette with
  158. sufficient return postage.  8" SSSD CP/M or any ICM format (8") is fine.
  159.  
  160.  
  161. Send praise, complaints, comments and donations (if you have the desire to
  162. contribute a few bucks) to:
  163.  
  164. S. Kluger
  165. 7120 Skillman #2104
  166. Dallas, TX  75231
  167.  
  168. Or call (214) 553-1363 at 1200 baud to leave your comments.
  169.  
  170. UPDATE INFO:
  171.  
  172. ver 1.00  4-2-85    initial release
  173. ver 1.10  4-4-85    fixed minor bug in insert routine
  174. ver 1.20  4-9-85    added globals for edit keydefs:
  175.     GLOBAL PATCH POINTS AND THEIR DEFAULTS:
  176.  
  177. FANBG    = "^A"        ; MOVE CURSOR TO BEGINNING OF LINE
  178. FANBK    = "^B"        ; MOVE CURSOR BACKWARD 1 CHARACTER
  179. FANEL    = "^E"        ; MOVE CURSOR TO END OF LINE
  180. FANFC    = "^F"        ; MOVE CURSOR FORWARD 1 CHARACTER
  181. FANDF    = "^D"        ; DELETE CHARACTER FORWARD
  182. FANDB    = "^H"        ; DELETE CHARACTER BACKWARD
  183. FANKF    = "^K"        ; KILL ALL CHARACTERS FORWARD
  184. FANQU    = "^Q"        ; INSERT NEXT CHARACTER (QUOTE)
  185. FANRC    = "^R"        ; RECALL PREVIOUS COMMAND LINE
  186. FANKB    = "^X"        ; KILL ALL CHARACTERS BACKWARD
  187. FANYA    = "^Y"        ; YANK KILL BUFFER INTO COMMAND LINE
  188.  
  189. Thanks to Chris Loelke for his suggestions.  Multiline storage is a
  190. question of memory and I may not implement it.
  191.  
  192. The source to FANLED will be available soon.
  193.  
  194. Continued update info as of 14 Jul 85:
  195.  
  196. v1.40 fixes the ^Y problem, the obscure 16-bit bugs and adds the
  197.       ^U command (cancel current command line).
  198. v1.40 16 bit ONLY adds the following new commands:
  199.  
  200.     ^G    PUSH current kill buffer
  201.     ^T    POP current kill buffer
  202.  
  203. This is a 1-level stack, if the stack is in use, nothing may be pushed.
  204. If the stack is empty, nothing may be popped. It can be used as a means
  205. to save the current contents of the kill buffer.
  206. This set of commands may at one point be expanded to allow multi-line
  207. storage through a "push" and a "pop n" command.
  208. I have made no effort to incorporate these features into the 8-bit version.
  209. NQU    = "^Q"        ; INSERT NEXT CHARACTER (QUOTE)
  210. FANRC    = "^R"        ; RECALL PREVIOUS COMMAND LINE
  211. FANKB    = "^X"        ; KILL ALL CHARACTER