home *** CD-ROM | disk | FTP | other *** search
/ Hall of Fame / HallofFameCDROM.cdr / wp2 / qedit207.lzh / QEDIT.DOC < prev    next >
Text File  |  1988-12-14  |  251KB  |  5,866 lines

  1. I
  2.  
  3.                                 Welcome to
  4.  
  5.                               QEdit Advanced
  6.                             the "quick editor"
  7.  
  8.  
  9.                        Version 2.07 (December 1988)
  10.  
  11.  
  12.                       R E F E R E N C E   M A N U A L
  13.  
  14.  
  15.  
  16.                                   SemWare
  17.                              730 Elk Cove Court
  18.                           Kennesaw, GA 30144-4047
  19.                               (404)  428-6416
  20.  
  21.  
  22.                      Copyright (c) 1985-1988 SemWare
  23.                             All Rights Reserved
  24.  
  25.  
  26.       This version of the documentation, software and copyright
  27.       supersedes all previous versions of QEdit.
  28.  
  29.       Specifications subject to change without notice.
  30.  
  31.  
  32.  
  33.                            _______
  34.                       ____|__     |               (TM)
  35.                    --|       |    |-------------------
  36.                      |   ____|__  |  Association of
  37.                      |  |       |_|  Shareware
  38.                      |__|   o   |    Professionals
  39.                    -----|   |   |---------------------
  40.                         |___|___|    MEMBER
  41.  
  42.  
  43.  
  44.  
  45.                                    LICENSE
  46.  
  47.  
  48.  
  49.       This version of QEdit is NOT public domain or free software, but
  50.       is being distributed as "shareware".
  51.  
  52.       QEdit is copyright (C) 1985-1988 by SemWare.
  53.  
  54.       Non-registered users of this software are granted a limited
  55.       license to make an evaluation copy for trial use on a private,
  56.       non-commercial basis, for the express purpose of determining
  57.       whether QEdit is suitable for their needs.  At the end of this
  58.       trial period, you should either register your copy or
  59.       discontinue using QEdit.
  60.  
  61.       What does all this really mean?  If you use this program, then
  62.       you should pay for your copy.  That way SemWare will be able to
  63.       provide you support and updates, and stay in business.  Plus,
  64.       registered users receive additional utilities, additional
  65.       configuration files, update notices and technical support.
  66.  
  67.       A QEdit registration entitles you to use the program on any and
  68.       all computers available to you, with the following restriction:
  69.       If other people have access to this program or may use it, then
  70.       you should purchase a site license.  See the following section
  71.       for information about site licensing or quantity discounts.
  72.  
  73.       All users are granted a limited license to copy QEdit only for
  74.       the trial use of others and subject to the above limitations.
  75.       This license does NOT include distribution or copying of this
  76.       software package:
  77.  
  78.         1. In connection with any other product or service.
  79.         2. For general use within a company or institution.
  80.         3. For any consideration or 'disk fee'.
  81.         4. For distribution in modified form; i.e., the file containing
  82.            this license information MUST be included, along with the
  83.            full QEdit documentation.
  84.  
  85.       Operators of electronic bulletin board systems (Sysops) are
  86.       encouraged to post QEdit for downloading by their users, as
  87.       long as the above conditions are met.
  88.  
  89.  
  90.  
  91.  
  92.                            ORDERING INFORMATION
  93.  
  94.       A QEdit registration licenses you to use the product on a regular
  95.       basis.  Registration includes notification of updates and
  96.       telephone support.
  97.  
  98.       Individual registrations for QEdit come in two forms.  The first,
  99.       registration only, costs $44 (plus 1.50 shipping).  When received,
  100.       we will send you the latest QEdit diskette, with documentation on
  101.       the disk. Alternatively, if you so specify, we will send you the
  102.       next update of the program, when available.  We also offer QEdit
  103.       with a printed manual.  For $54.95 (plus 3.00 shipping) we will
  104.       send you the current version of QEdit, along with a professionally
  105.       typeset bound manual, and a QEdit quick reference card.  Georgia
  106.       residents should include 4% sales tax.
  107.  
  108.  
  109.  
  110.       ORDERS OUTSIDE THE US: Please use your Mastercard or VISA when
  111.       ordering, or send a check drawn on a US bank in US dollars.  We
  112.       can accept non-US currency; however, you must include an
  113.       additional $25 to cover conversion and collection costs.  Please
  114.       include an additional $10 to cover postage on orders delivered
  115.       outside of the US.
  116.  
  117.       Educational institutions, full-time students and BBS sysops can
  118.       apply a 35% discount to all prices.  PLEASE include your
  119.       educational institution letterhead (with your title), or a
  120.       photocopy of your most recent registration slip, or the name and
  121.       number of your BBS along with any other relevant information.
  122.  
  123.  
  124. Remit to:                 SemWare                         Order Form  #8812-OF02
  125.                           Order Desk
  126.                           730 Elk Cove Ct.
  127.                           Kennesaw, GA  30144
  128.  
  129.                           QEdit version 2.07
  130.  
  131. We offer special prices/discounts on quantity orders, multiple-user
  132. licenses, and dealer pricing.  We also offer discounts to educational
  133. institutions, full-time students and bonified BBS sysops.  Please call
  134. for details.
  135.  
  136. You can also order by phone using your VISA or Mastercard.
  137. (404) 428-6416,  Mon-Fri: 9:00 a.m.- 5:00 p.m., ET ONLY.
  138.  
  139. ____ QEdit Registration ........................ @ $ 44.00 ea  $ ______
  140.      (Includes latest version of the program diskette, with
  141.      documentation on the disk.)
  142.  
  143.      Instead of sending me version 2.07, please send me the next update
  144.      when it is available. (applicable to diskette orders only) [_____]
  145.  
  146. ____ QEdit Registration with Printed Manual..... @ $ 54.95 ea  $ ______
  147.      (Includes registration, program diskette, plus our new
  148.      professionally printed, 120-page spiral bound manual.)
  149.  
  150.  
  151.                                                      Subtotal  $ ______
  152.  
  153.  
  154. ____ Georgia Residents please add Sales Tax .... @ 4%          $ ______
  155.  
  156.      Shipping via US Postal Service, prepaid:
  157. ____ USA/Canada shipping ....................... @ $  3.00 ea  $ ______
  158.  
  159. ____ Overseas shipping ......................... @ $ 10.00 ea  $ ______
  160.  
  161. ____ Purchase Orders under $100.00, add $5.00 Handling Charge  $ ______
  162.  
  163.                                              Total (U.S.Funds) $ ______
  164.                                              drawn on U.S.Bank
  165.  
  166. Payment by:   ( ) Check   ( ) MC   ( ) Visa   ( ) PO # ______________
  167.  
  168.    Name: ____________________________________________________________
  169.  
  170. Company (if purchase is for company use):____________________________
  171.  
  172. Address: ____________________________________________________________
  173.  
  174.        : ____________________________________________________________
  175.  
  176.        : ____________________________________________________________
  177.  
  178. Day Phone: _________________________ Eve: ___________________________
  179.  
  180.  Card #: _________________________________ Exp. Date: _______________
  181.  
  182. Signature of cardholder: ____________________________________________
  183.  
  184. ------------------------ User comments ------------------------------
  185. I acquired QEdit v2.07 from
  186.         [ ] - Friend                    [ ] - Software product
  187.         [ ] - Computer Club             [ ] - Computer Store
  188.         [ ] - Data Base Service         [ ] - Electronic BBS
  189.         [ ] - Other - Please Specify ________________________________
  190.  
  191. We would also appreciate any input you would care to give concerning
  192. QEdit.  If you have any ideas or comments that would make QEdit a better
  193. program, then please let us know.
  194.  
  195. We value your comments!
  196.  
  197. Comments and/or suggestions:
  198. ____________________________________________________________________
  199.  
  200. ____________________________________________________________________
  201.  
  202. ____________________________________________________________________
  203.  
  204. ____________________________________________________________________
  205.  
  206. ____________________________________________________________________
  207.  
  208. ____________________________________________________________________
  209.  
  210. ____________________________________________________________________
  211.  
  212. ____________________________________________________________________
  213.  
  214. ____________________________________________________________________
  215.  
  216. ____________________________________________________________________
  217.  
  218. ____________________________________________________________________
  219.  
  220. ____________________________________________________________________
  221.  
  222. ____________________________________________________________________
  223.  
  224.  
  225.  
  226.  
  227.  
  228.                                  DISCLAIMER
  229.  
  230.       Use of this program acknowledges this disclaimer of warranty:
  231.       "This program is supplied as is.  SemWare disclaims all
  232.       warranties, expressed or implied, including, without limitation,
  233.       the warranties of merchantability and of fitness of this program
  234.       for any purpose.  SemWare assumes no liability for damages direct
  235.       or consequential, which may result from the use of this program."
  236.  
  237.  
  238.                                  TRADEMARK
  239.  
  240.       SemWare and QEdit are trademarks of SemWare.
  241.       MS-DOS is a registered trademark of Microsoft Corporation.
  242.       PC-DOS is a registered trademark of IBM Corporation.
  243.       Compaq is a registered trademark of Compaq Computer Corporation.
  244.       Tandy 1000 is a registered trademark of Tandy Corporation.
  245.       SideKick and SuperKey are registered trademarks
  246.       of Borland International, Inc.
  247.       Wordstar is a registered trademark of MicroPro International Corporation.
  248.       Brief is a registered trademark of UnderWare, Inc.
  249.  
  250.  
  251.  
  252.  
  253.              CORPORATE SITE LICENSES AND QUANTITY PURCHASES
  254.  
  255.       All corporate, business, government or other commercial users of
  256.       QEdit must be registered.  We offer quantity discounts as well as
  257.       site licensing.
  258.  
  259.       Corporate site licensing agreements allow duplication and
  260.       distribution of specific numbers of copies within the licensed
  261.       institution.  Duplication of multiple copies is not allowed
  262.       except through execution of a licensing agreement.  Site license
  263.       fees are based upon estimated number of users.
  264.  
  265.       Note that with a site license, only one copy of the program will
  266.       be sent.  You will be responsible for distributing additional
  267.       copies.
  268.  
  269.       Please call or write for more information.
  270.  
  271.       ALL PRICES AND DISCOUNTS ARE SUBJECT TO CHANGE WITHOUT NOTICE.
  272.       Discounts are not cumulative; they apply to single orders of
  273.       like products only.  Unit prices are the same as for individual
  274.       users.
  275.  
  276.       WARNING: YOU MAY NOT USE QEdit WITHIN YOUR ORGANIZATION WITHOUT
  277.       A PRIOR PURCHASE OR LICENSE ARRANGEMENT.
  278.  
  279.  
  280.                               CUSTOM VERSIONS
  281.  
  282.       We can produce custom versions of QEdit, for your private or
  283.       commercial use (i.e., to be distributed with your software).
  284.       Give us a call.
  285.  
  286.       Need a small, fast editor to distribute with your product?  Give
  287.       us a call.  We can probably work something out.
  288.  
  289.       Please direct all inquiries to:
  290.  
  291.       SemWare
  292.       730 Elk Cove Court
  293.       Kennesaw, GA  30144-4047
  294.  
  295.       Phone: (404) 428-6416   9:00 - 5:00 EST
  296.  
  297.  
  298.  
  299.  
  300.  
  301.     Table of Contents
  302.     =========================================================================
  303.  
  304.     Acknowledgements ..............................................  ii
  305.     Introduction .................................................. iii
  306.     Features ......................................................  iv
  307.     System Requirements ...........................................   v
  308.     Installation ..................................................  vi
  309.  
  310.     Chapter 1  Users Guide for QEdit                                1-1
  311.         Quick Start ............................................... 1-2
  312.             Getting Started ....................................... 1-2
  313.             In the Editor ......................................... 1-2
  314.             Getting Out ........................................... 1-3
  315.         Menus ..................................................... 1-3
  316.         The Status Line ........................................... 1-4
  317.         Files ..................................................... 1-5
  318.             Creating New Files .................................... 1-5
  319.             Loading Existing Files ................................ 1-5
  320.             Multiple Files:  The Ring ............................. 1-6
  321.             Saving Files and Exiting  ............................. 1-8
  322.         Viewing and Getting Around in the Text .................... 1-9
  323.             Cursor Movement ....................................... 1-9
  324.                 Moving Through a File ............................. 1-9
  325.                 Moving Around on the Screen ....................... 1-12
  326.                 Moving by Lines and Characters .................... 1-13
  327.             Using Windows ......................................... 1-13
  328.                 Creating Windows .................................. 1-14
  329.                 Switching Windows ................................. 1-14
  330.                 Changing Window Size .............................. 1-14
  331.                 Closing Windows ................................... 1-15
  332.         Copying, Moving, Replacing, and Deleting text ............. 1-16
  333.             Block Commands ........................................ 1-16
  334.                 Marking and Unmarking a Block ..................... 1-16
  335.                 Manipulating Blocks Directly ...................... 1-17
  336.                 Manipulating Blocks Using Scrap Buffers ........... 1-19
  337.                 Manipulating Blocks Using Scratch Buffers ......... 1-20
  338.                 Examples of Block Commands ........................ 1-21
  339.             Non-Block Commands .................................... 1-25
  340.                 Adding Text ....................................... 1-25
  341.                 Copying Text ...................................... 1-25
  342.                 Moving Text ....................................... 1-26
  343.                 Deleting and Undeleting Text ...................... 1-27
  344.                 Replacing Text .................................... 1-29
  345.             The Kill Buffer - A Safety Net ........................ 1-30
  346.         Macros .................................................... 1-32
  347.             Creating Macros ....................................... 1-33
  348.  
  349.  
  350.             Using Macros .......................................... 1-34
  351.             Saving and Reloading Macros ........................... 1-34
  352.             Example of a Macro .................................... 1-35
  353.         Printing .................................................. 1-35
  354.             Print Formatting ...................................... 1-36
  355.             Formfeeds ............................................. 1-36
  356.         The Shell and Dos Commands ................................ 1-37
  357.         Word Processing Commands .................................. 1-38
  358.         Modes ..................................................... 1-39
  359.  
  360.     Chapter 2  Customizing QEdit                                    2-1
  361.         Initiating the Configuration Program ...................... 2-2
  362.         The Configuration Menu .................................... 2-3
  363.         Advanced Options .......................................... 2-5
  364.         Colors/Screen Options ..................................... 2-6
  365.         General Options ........................................... 2-9
  366.         The Help Screen ........................................... 2-13
  367.         Keyboard Configuration .................................... 2-13
  368.             The Keyboard Definition File .......................... 2-14
  369.             Creating a Keyboard Definition File ................... 2-16
  370.         Printer Options ........................................... 2-17
  371.         Tab Settings .............................................. 2-17
  372.  
  373.     Chapter 3  QEdit Command Reference                              3-1
  374.  
  375.     Appendix A.  List of Commands                                   A-1
  376.         By Function ............................................... A-1
  377.         Alphabetically ............................................ A-6
  378.  
  379.     Appendix B.  List of Configurable Keys                          B-1
  380.         Function Keys ............................................. B-1
  381.         Special Purpose Keys ...................................... B-2
  382.         Control Keys .............................................. B-3
  383.         Alternate Keys ............................................ B-5
  384.         Enhanced Keyboard Keys .................................... B-6
  385.  
  386.     Appendix C.  Error Messages                                     C-1
  387.         QEdit Error Messages ...................................... C-1
  388.         QCONFIG Error Messages .................................... C-3
  389.  
  390.     Appendix D.  Commonly Used Macros                               D-1
  391.  
  392.     Appendix E.  The Author                                         E-1
  393.  
  394.  
  395.  
  396.  
  397.  
  398.     Acknowledgements
  399.     =========================================================================
  400.  
  401.     Many years of work have gone into the development of this version of
  402.     QEdit.  And we had LOTS of help.  Special thanks go to:
  403.  
  404.     My wife, for her many valuable suggestions, for "proofing" this
  405.     manual, and for putting up with all the long hours (and many all
  406.     nighters) that I have spent working on QEdit.
  407.  
  408.     Gerhard Barth, who went above and beyond the call of duty to help us
  409.     track down a nasty bug in the very first version of QEdit.
  410.  
  411.     P.L. Olympia, who has gone out of his way and spent much time
  412.     promoting this program.
  413.  
  414.     Anthony M. Marcy, who developed the INLINER program, an assembler
  415.     which translates 8088 assembly language directly into Turbo Pascal
  416.     INLINE code.
  417.  
  418.     Karl Brendel, for his constant support and excellent testing.  Karl
  419.     is also the author of an excellent add-on product for QMODEM called
  420.     QFONEDIT.
  421.  
  422.     John Newlin, for his encouragement and support.  John is also the
  423.     author of SCOUT.  If you're looking for a powerful file or DOS
  424.     manager that's memory resident, then look no further.  SCOUT is
  425.     probably what you're looking for.
  426.  
  427.     Stuart Warren, for his insight, encouragement, and many valuable
  428.     programming suggestions.
  429.  
  430.     Steve Watkins, for all the many hours he spent testing and the many
  431.     "hard to find" bugs and quirks that he uncovered.
  432.  
  433.     All the folks at TurboPower software.  We're especially grateful for
  434.     TdebugPlus.  Using Turbo Pascal without the tools provided by the
  435.     TurboPower folks is just plain wasteful!
  436.  
  437.     To ALL registered users - THANK YOU - it is only through your
  438.     support that additional versions are made possible.
  439.  
  440.                                   ii
  441.  
  442.  
  443.  
  444.  
  445.     Introduction
  446.     =========================================================================
  447.  
  448.     "You can never be too rich, too thin, or have too much RAM and
  449.     Disk storage."  Ancient American proverb, ca. 1980
  450.  
  451.     This manual describes the use and operation of QEdit, a full-screen
  452.     text editor for the IBM PC and compatible computers.  The manual
  453.     includes installation instructions, a user's guide, and a reference
  454.     section which explains all of QEdit's commands.
  455.  
  456.     QEdit is a text editor as opposed to a word processor.  This means
  457.     that most of its features are geared toward creating and maintaining
  458.     program source code and other text files.  However, QEdit can also
  459.     be used like a word processor to write documents or letters since it
  460.     includes word-wrapping and paragraph reformatting capabilities.
  461.  
  462.  
  463.     QEdit was developed with these goals in mind:
  464.  
  465.     ■ FAST OPERATION - More than anything else, QEdit was designed to
  466.       operate quickly, especially in these areas:
  467.  
  468.         - Initially loading a file for editing.
  469.         - Displaying/Updating the screen.
  470.         - Moving through the editing window.
  471.         - Searching for text.
  472.         - Saving a file back to disk.
  473.  
  474.  
  475.     ■ EASE OF USE - This version of QEdit includes:
  476.  
  477.         - Optional "Pop-Down" menus.
  478.         - Customizable Help Screen.
  479.         - Complete execution from a single file (Q.EXE).
  480.         - Pop-up file directory and picker.
  481.  
  482.  
  483.     ■ COMPACT PROGRAM SIZE - Every effort was made to keep the program
  484.       size as compact as possible.  Even though memory is getting
  485.       cheaper all the time, we didn't want QEdit to require any more
  486.       memory than absolutely necessary.
  487.  
  488.                                   iii
  489.  
  490.  
  491.  
  492.  
  493.     Features
  494.     =========================================================================
  495.  
  496.     These are just some of the many features you will enjoy while using
  497.     QEdit:
  498.  
  499.     ■ It is very fast!
  500.  
  501.     ■ It is customizable.  QEdit can be easily configured the way you
  502.       like it.  This includes the meaning of ALL special keys on the
  503.       keyboard (Alt, Ctrl, and function keys; <Home>, <PgUp>, etc.),
  504.       colors, screen appearance, and many other options.
  505.  
  506.     ■ It utilizes all available memory.  With QEdit you can edit files
  507.       as large as your computer's memory will allow.
  508.  
  509.     ■ It allows true multi-file editing.  The number of files you can
  510.       edit is limited only by available memory.
  511.  
  512.     ■ It enables you to view files through up to eight "windows".  You
  513.       can have multiple views of the same file or view a different file
  514.       in each window.
  515.  
  516.     ■ It provides up to 99 scratch buffers for cut-and-paste or template
  517.       operations.
  518.  
  519.     ■ It allows you to exit to DOS (or a DOS shell) temporarily and use
  520.       DOS commands from within the editor.
  521.  
  522.     ■ It is easy to use.  You can use the optional "Pop-Down" menus to
  523.       access QEdit's commands, and there is a Help Screen which you can
  524.       customize for your own needs.
  525.  
  526.     ■ It supports both character and line Blocks.
  527.  
  528.     ■ It allows you to create macros which will execute a series of
  529.       commands and keystrokes by pressing a single key.
  530.  
  531.     ■ It provides wordwrap and paragraph reformat capabilities.
  532.  
  533.     ■ It saves deleted words, lines, and Blocks in a deletion buffer for
  534.       later recall.
  535.  
  536.     ■ It provides "C mode", which utilizes automatic indentation for C
  537.       language programming.
  538.  
  539.     ■ It locates matching braces and parentheses, a useful feature for
  540.       programming.
  541.  
  542.     ■ It will load multiple files from the DOS command line, with or
  543.       without wildcard characters.
  544.  
  545.     ■ It allows you to specify up to six default file extensions for use
  546.       when loading files and determining tab settings.
  547.  
  548.                                   iv
  549.  
  550.  
  551.     ■ It allows you to execute command line compilers from within QEdit,
  552.       using its macro capability.
  553.  
  554.     ■ It provides line drawing to create diagrams and tables.
  555.  
  556.     ■ It supports enhanced (101 key) keyboards.
  557.  
  558.     ■ It supports up to 200-column and 100-line screens.
  559.  
  560.     ■ It is compact.  Even with all these features, QEdit requires less
  561.       than 50k of disk space.
  562.  
  563.  
  564.  
  565.     System Requirements
  566.     =========================================================================
  567.  
  568.     QEdit will run on the IBM PS/2, PC/AT, PC/XT, PC, PC/Jr, and on IBM
  569.     compatible computers including the Compaq, NCR, Tandy, and WYSE
  570.     PC's.  MINIMUM requirements are:
  571.  
  572.     ■ 128 KB of memory (although QEdit can utilize up to 640 KB if it
  573.       is available).
  574.  
  575.     ■ PC-DOS 2.0 or greater or MS-DOS 2.0 or greater.
  576.  
  577.     ■ One diskette drive.
  578.  
  579.     ■ Either a color or a monochrome monitor with 80-column display.
  580.  
  581.     ■ 60 KB of disk space.
  582.  
  583.     ■ Q.EXE, the editor program itself.  No other files are necessary for
  584.       operating QEdit.
  585.  
  586.                                   v
  587.  
  588.  
  589.  
  590.  
  591.     Installation
  592.     =========================================================================
  593.  
  594.     Before installing QEdit, you should review the contents of the
  595.     READ.ME file on your QEdit distribution diskette.  This file
  596.     contains important information (usage information, new features,
  597.     changes, etc.) that became available after this manual was printed.
  598.     You should carefully review the READ.ME file before using QEdit.
  599.  
  600.     The READ.ME file also contains a complete list of the files included
  601.     on the distribution diskette.  A partial list is included here:
  602.  
  603.     Q.EXE           QEdit.  No other files are necessary for proper
  604.                     operation of QEdit.
  605.  
  606.     QCONFIG.EXE     The QEdit configuration program.  This program
  607.                     allows you to customize QEdit.
  608.  
  609.     QCONFIG.DAT     The default QEdit Keyboard Definition file. Used
  610.                     by QCONFIG.EXE.
  611.  
  612.     QHELP.TXT       The default QEdit Help text.  Used by QCONFIG.EXE.
  613.  
  614.  
  615.     QEdit is simple to install.  But first, be sure to make a backup
  616.     copy of the distribution diskette.
  617.  
  618.     Once you have made your backup copy, simply copy Q.EXE to the disk
  619.     and/or subdirectory where you would like to use it.  If you are
  620.     using a hard disk, then you probably want to put it somewhere that
  621.     is accessible via the "path".  For example, on our system, we keep
  622.     many of our executable programs in a subdirectory called TOOLS.
  623.  
  624.                                        ┌─────────────────────────────────┐
  625.                                        │QEdit Tip:                       │
  626.                                        │ Please note that one of the     │
  627.                                        │ MAJOR features of QEdit is      │
  628.                                        │ configurability.  You can       │
  629.                                        │ customize the colors, the keys, │
  630.                                        │ the on-screen appearance of the │
  631.                                        │ editor, and many other          │
  632.                                        │ functions.                      │
  633.                                        │                                 │
  634.                                        │ By spending just a small amount │
  635.                                        │ of time reviewing Chapter 2 on  │
  636.                                        │ configuration, you can benefit  │
  637.                                        │ greatly through customizing the │
  638.                                        │ editor to your personal         │
  639.                                        │ preferences.                    │
  640.                                        └─────────────────────────────────┘
  641.  
  642.     If you will be customizing QEdit (Refer to Chapter 2 for complete
  643.     information on customizing QEdit), then you may wish to create a
  644.     special directory and copy the files Q.EXE, QCONFIG.EXE,
  645.     QCONFIG.DAT, and QHELP.TXT to that directory.
  646.  
  647.                                   vi
  648.  
  649.  
  650.  
  651.  
  652.     Chapter 1. Users Guide For QEdit
  653.     =========================================================================
  654.  
  655.     Quick Start
  656.     ─────────────────────────────────────────────────────────────────────────
  657.  
  658.     With QEdit you can edit any text file with a few simple commands.
  659.     The next three sections briefly describe the quickest way possible
  660.     to load, edit, and save a file.
  661.  
  662.  
  663.     Getting Started
  664.  
  665.     Using QEdit is simple and straightforward.
  666.  
  667.     To initiate QEdit, type "Q <Enter>".  The Editor will respond with
  668.     a prompt for the name of the file to be edited.
  669.  
  670.     ┌─────────────────────────────────────────────────────────────────┐
  671.     │  File(s) to edit: <Esc = abort>                                 │
  672.     │                                                                 │
  673.     └─────────────────────────────────────────────────────────────────┘
  674.  
  675.     Enter the filename.  The filename may include full path designation.
  676.  
  677.                                        ┌─────────────────────────────────┐
  678.                                        │QEdit Tip:                       │
  679.                                        │  At any "File to edit" prompt,  │
  680.                                        │  you may use wildcard characters│
  681.                                        │  (* or ?) to obtain a list of   │
  682.                                        │  matching files in the          │
  683.                                        │  directory.                     │
  684.                                        └─────────────────────────────────┘
  685.  
  686.     You may optionally include the filename on the DOS command line in
  687.     order to bypass this prompt.  For example, from the DOS command line,
  688.     type:
  689.                    "Q filename <Enter>"
  690.  
  691.  
  692.     In the Editor
  693.  
  694.     Once you are in QEdit, the cursor movement keys (Left, Right, Up,
  695.     Down, Home, End, ...) allow you to move around in the text.
  696.  
  697.     To obtain a help screen, simply press <F1>.  Pressing <F1> again
  698.     returns you to the text.
  699.  
  700.     To obtain a menu of QEdit commands, press <Esc>.  You may then use
  701.     the cursor movement keys to position the cursor bar over the desired
  702.     command.  Pressing <Enter> will execute the command.
  703.  
  704.                                   1-2
  705.  
  706.  
  707.                                        ┌─────────────────────────────────┐
  708.                                        │ QEdit Tip:                      │
  709.                                        │   Pressing <Esc> will abort     │
  710.                                        │   any editor prompt.            │
  711.                                        └─────────────────────────────────┘
  712.  
  713.  
  714.     Getting Out
  715.  
  716.     The easiest way to get out of QEdit and save all the work you have
  717.     done is to enter <Alt F> <G>.
  718.  
  719.  
  720.     Menus
  721.     ─────────────────────────────────────────────────────────────────────────
  722.  
  723.     QEdit provides an easy-to-use "Pop-Down" style menu system.  The
  724.     menu system is very helpful while learning to use the editor.  It is
  725.     also handy for executing seldom used commands.
  726.  
  727.     To access the menus and execute a command:
  728.  
  729.     1.  Press <Esc>.  The main menu will be displayed at the top of
  730.         the screen.  The main menu consists of a list of sub-menu items.
  731.  
  732.     2.  Select a sub-menu item.  You may do this by moving the cursor bar
  733.         to the desired item and pressing <Enter> or by typing the capital
  734.         letter of the desired item.
  735.  
  736.     3.  Execute a command.  This is done in the same manner as selecting
  737.         the sub-menu items.
  738.  
  739.     Here is an example of the "Pop-Down" style menu system.  This User
  740.     is about to execute the "Copy block" command.
  741.  
  742.     ┌─────────────────────────────────────────────────────────────────┐
  743.     │File  Window  Block  Search  Print  Macro  Editing  Other  Quit  │
  744.     └─────────────┬──────────────────┬────────────────────────────────┘
  745.                   │ mark block Begin │
  746.                   │ mark block End   │
  747.                   │▒Copy block▒▒▒▒▒▒▒│
  748.                   │ Move block       │
  749.                   │ Delete block     │
  750.                   │ Unmark           │
  751.                   │ mark Line        │
  752.                   └──────────────────┘
  753.  
  754.     You can execute many QEdit commands using the menus.  As you become
  755.     more familiar with the editor, you may wish to use the <Ctrl>,
  756.     <Alt>, and function keys, instead of the menus, to execute commands
  757.     more quickly.  A cross reference of all QEdit commands can be found
  758.     in Appendix A.
  759.  
  760.                                   1-3
  761.  
  762.  
  763.  
  764.     The Status Line
  765.     ─────────────────────────────────────────────────────────────────────────
  766.  
  767.     At the top of the editing screen is the Status Line.  The Status
  768.     Line constantly displays information regarding the file you are
  769.     currently editing.
  770.  
  771.     The Status Line is shown below with a description of the information
  772.     displayed.
  773.  
  774.     ┌──────────────────────────────────────────────────────────────────────┐
  775.     │L 15   C 15   IAW R B  411K     *c:\qedit\qedit.doc                   │
  776.     └──┬──────┬────┬┬┬─┬─┬───┬───────┬───────┬─────────────────────────────┘
  777.        │      │    │││ │ │   │       │       │
  778.        │      │    │││ │ │   │       │       └──── The path and name of the
  779.        │      │    │││ │ │   │       │             file you are editing
  780.        │      │    │││ │ │   │       │
  781.        │      │    │││ │ │   │       └──── *) Indicates file has been changed
  782.        │      │    │││ │ │   │
  783.        │      │    │││ │ │   └──── Amount of available memory
  784.        │      │    │││ │ │
  785.        │      │    │││ │ └──── B) Indicates Box Drawing mode is ON
  786.        │      │    │││ │
  787.        │      │    │││ └──── R) Indicates macro recording is ON
  788.        │      │    │││
  789.        │      │    ││└──── W) Indicates WordWrap mode is ON
  790.        │      │    ││
  791.        │      │    │└──── A) Indicates AutoIndent mode is ON
  792.        │      │    │
  793.        │      │    └──── I) Indicates Insert mode is ON
  794.        │      │
  795.        │      └──── The current cursor column number
  796.        │
  797.        └──── The current cursor line number
  798.  
  799.  
  800.     For more information on Insert, AutoIndent, WordWrap, and Box
  801.     Drawing, refer to the "Modes" section in this chapter. For more
  802.     information on macro recording, refer to the "Macros" section in
  803.     this chapter.
  804.  
  805.                                        ┌─────────────────────────────────┐
  806.                                        │ QEdit Tip:                      │
  807.                                        │   The Status Line may be config-│
  808.                                        │   ured to appear at the bottom  │
  809.                                        │   of the screen.  Refer to the  │
  810.                                        │   "Colors/Screen Options"       │
  811.                                        │   section of Chapter 2 for more │
  812.                                        │   information.                  │
  813.                                        └─────────────────────────────────┘
  814.  
  815.                                   1-4
  816.  
  817.  
  818.  
  819.     Files
  820.     ─────────────────────────────────────────────────────────────────────────
  821.  
  822.     Creating New Files
  823.  
  824.     There are three different ways to create new files, ready for editing.
  825.  
  826.     1. From the DOS command line, enter <Q> followed by one or more new
  827.        filenames.  Each filename must be separated by a space. For
  828.        example, typing:
  829.  
  830.                    "Q file1 b:file2 \dir1\file3 <Enter>"
  831.  
  832.        will create "file1" in the current directory, "file2" on disk
  833.        drive B, and "file3" in the directory "dir1".
  834.  
  835.                                        ┌─────────────────────────────────┐
  836.                                        │ QEdit Tip:                      │
  837.                                        │   When specifying file names    │
  838.                                        │   to QEdit, you may use full    │
  839.                                        │   path designations if desired. │
  840.                                        └─────────────────────────────────┘
  841.  
  842.     2. From the DOS command line, type "Q <Enter>".  QEdit will
  843.        respond with the prompt:
  844.  
  845.        ┌─────────────────────────────────────────────────────────────────┐
  846.        │  File(s) to edit: <Esc = abort>                                 │
  847.        │                                                                 │
  848.        └─────────────────────────────────────────────────────────────────┘
  849.  
  850.        Enter one or more new filenames, each separated by a space.
  851.  
  852.     3. From within the editor, enter the EditFile <Alt E> command. The
  853.        above prompt will appear.  Again, you may enter one or more new
  854.        filenames, each separated by a space.
  855.  
  856.  
  857.     Loading Existing Files
  858.  
  859.     Loading existing files works exactly like creating new files (in the
  860.     previous section) with two exceptions:
  861.  
  862.     ■ The filename(s) specified must exist on disk.
  863.  
  864.     ■ The filename(s) may contain wildcard characters (*, ?).
  865.  
  866.     QEdit can be configured to respond to wildcarded filename entries in
  867.     one of two ways:
  868.  
  869.     1. Load all matching files into the editor.
  870.  
  871.                                   1-5
  872.  
  873.  
  874.     2. Show all the matching filenames in a "pick" listing. You can then
  875.        use the cursor keys to find the file you want and press <Enter>
  876.        to load it into the editor.
  877.  
  878.     QEdit can also be configured to use default file extensions, such as
  879.     "doc" and "pas" when entering filenames.  For more information on
  880.     configuring these options, refer to the "General Options" section of
  881.     Chapter 2.
  882.  
  883.  
  884.     Multiple Files: The Ring
  885.  
  886.     QEdit is a true multi-file editor.  It allows as many files as will
  887.     fit into memory to be loaded at the same time.  All of these files
  888.     can then be edited by simply switching back and forth between them
  889.     without having to save and load each file individually. Switching
  890.     between files is accomplished very quickly and easily.
  891.  
  892.     A simple explanation of how QEdit handles multiple files will help
  893.     you in manipulating and editing multiple files.
  894.  
  895.     QEdit maintains all loaded files in a "ring".  As we describe each
  896.     of the commands used to manipulate the files in the ring, refer to
  897.     the illustration below.
  898.  
  899.     ┌──────────────────────────────────────────────────────────────┐
  900.     │              ┌────┐              ┌────┐                      │
  901.     │              │    │              │▒▒▒▒│                      │
  902.     │      ┌─────> │ A  │ <───<Ctrl KP>│▒B▒▒│<Alt N>               │
  903.     │      │       │    │              │▒▒▒▒│      │               │
  904.     │      │       └────┘              └────┘      │               │
  905.     │      v         ^                 <Alt E>     v               │
  906.     │    ┌────┐      │                   │       ┌────┐            │
  907.     │    │    │      │                   │       │    │            │
  908.     │    │ F  │ <────┼───────────────────┼─────> │ C  │            │
  909.     │    │    │      │                   │       │    │            │
  910.     │    └────┘      │                   │       └────┘            │
  911.     │      ^         v                   v         ^               │
  912.     │      │       ┌────┐              ┌────┐      │               │
  913.     │      │       │    │              │    │      │               │
  914.     │      └─────> │ E  │ <──────────> │ D  │ <────┘               │
  915.     │              │    │              │    │                      │
  916.     │              └────┘              └────┘                      │
  917.     │                                                              │
  918.     │                      The "Ring"                              │
  919.     └──────────────────────────────────────────────────────────────┘
  920.  
  921.     In the ring we see that six files have been loaded into the editor.
  922.     You can, of course, load many more files - as many as your
  923.     computer's memory will allow.
  924.  
  925.                                   1-6
  926.  
  927.  
  928.     Assume the file currently being edited is file "B".  You may then
  929.     move from one file to another in any of the following ways:
  930.  
  931.     ■ Enter the NextFile <Alt N> command.
  932.       You will now be editing the next file in the ring, file "C".
  933.  
  934.     ■ Enter the PrevFile <Ctrl KP> command.
  935.       You will now be editing the previous file in the ring, file "A".
  936.  
  937.     ■ Enter the EditFile <Alt E> command.
  938.       The editor will prompt for a filename.  You may enter the name of
  939.       any file in the ring.  The editor will make the entered file the
  940.       current one for editing.
  941.  
  942.     You may, at any time, add files to the ring or discard files from
  943.     the ring.  If you add a new file to the ring using the EditFile
  944.     command, it will become the current file and the old current file
  945.     will become the previous file.  If you delete a file from the ring
  946.     the previous file will become the current file.
  947.                                                                            
  948.                                        ┌─────────────────────────────────┐
  949.                                        │ QEdit Tip:                      │
  950.                                        │   When loading files, be aware  │
  951.                                        │   that QEdit will not load two  │
  952.                                        │   copies of the same file.  If  │
  953.                                        │   you issue the EditFile command│
  954.                                        │   for a file already loaded,    │
  955.                                        │   that file will become the     │
  956.                                        │   new current file.             │
  957.                                        └─────────────────────────────────┘
  958.  
  959.                                   1-7
  960.  
  961.  
  962.  
  963.     Saving Files and Exiting
  964.  
  965.     QEdit provides several different ways to save files, discard files,
  966.     and exit the editor.  A set of five basic commands provides assorted
  967.     combinations of saving, discarding, and exiting in order to suit
  968.     individual preferences.
  969.  
  970.     We recommend selecting one or two methods with which you feel most
  971.     comfortable and using them consistently.
  972.  
  973.     The table below summarizes these commands and their effects.
  974.  
  975. ┌──────────────────────────────────────────────────────────────────────────────┐
  976. │Command for Single        Command for Multiple                                │
  977. │File or Current File      Files                                               │
  978. │--------------------      --------------------                                │
  979. │Exit      <Ctrl KD>       GExit     <Alt X>                X         X    X(a)│
  980. │                                                                              │
  981. │File      <Ctrl KX>       GFile     <Alt F><G>        X              X    X(a)│
  982. │                                                                              │
  983. │PQuit     <Ctrl KQ>       GPQuit    <Alt Q><Q>                  X    X    X(a)│
  984. │                                                                              │
  985. │Quit (b)                                                             X    X   │
  986. │                                                                              │
  987. │SaveFile  <Ctrl KS>       GSave     <Alt Y>           X                       │
  988. │                                                                              │
  989. │                                                      │    │    │    │    │   │
  990. │         Edited File(s) are Saved Unconditionally  ───┘    │    │    │    │   │
  991. │                                                           │    │    │    │   │
  992. │             User Prompted to Save Edited Files (Y/N)  ────┘    │    │    │   │
  993. │                                                                │    │    │   │
  994. │                User Warned That File Changes May Be Lost  ─────┘    │    │   │
  995. │                                                                     │    │   │
  996. │                            File(s) are Discarded From Editor  ──────┘    │   │
  997. │                                                                          │   │
  998. │                                         The Editor is Terminated  ───────┘   │
  999. │                                                                              │
  1000. │    (a) The Exit, File, and PQuit commands can be configured to terminate     │
  1001. │        or not terminate the editor.  Refer to the "General Options" section  │
  1002. │        of Chapter 2 for more information.                                    │
  1003. │                                                                              │
  1004. │    (b) USE WITH CAUTION!                                                     │
  1005. └──────────────────────────────────────────────────────────────────────────────┘
  1006.  
  1007.                                   1-8
  1008.  
  1009.  
  1010.     Viewing and Getting Around in the Text
  1011.     ─────────────────────────────────────────────────────────────────────────
  1012.  
  1013.     QEdit is quite versatile in allowing you to move around in the text.
  1014.     With simple keystrokes you can either move a few characters or lines
  1015.     at a time or move from one end of the file to another.  You can go
  1016.     to specific lines in the file or go to each occurrence of a
  1017.     particular string of characters.  And with QEdit's windows, you can
  1018.     view up to eight files at a time or have multiple views of the same
  1019.     file.
  1020.  
  1021.     As you will see, there are quite a few commands in QEdit for moving
  1022.     around in your text.  If you are not already familiar with these
  1023.     types of commands, try them out.  You will probably find some new
  1024.     commands that will be useful for your applications of QEdit.
  1025.  
  1026.  
  1027.     Cursor Movement
  1028.     ─────────────────────────────────────────────────────────────────────────
  1029.  
  1030.     Moving Through a File
  1031.  
  1032.     QEdit provides several commands which enable you to move about in a
  1033.     file.
  1034.  
  1035.     ■ BegFile <Ctrl PgUp> and EndFile <Ctrl PgDn>
  1036.       As their names imply, these commands move the cursor to the
  1037.       beginning or end of the current file.  BegFile positions the
  1038.       cursor at column one on the first line of the file.  EndFile
  1039.       positions the cursor after the last non-blank character on the
  1040.       last line of the file.
  1041.  
  1042.     ■ PageUp <PgUp> and PageDown <PgDn>
  1043.       PageUp scrolls the text toward the top of the file, one page-full,
  1044.       less one line, at a time.  PageDown scrolls the text toward the
  1045.       end of the file, one page-full, less one line, at a time.
  1046.  
  1047.     ■ HalfPgUp and HalfPgDn
  1048.       These commands work exactly like the PageUp and PageDown commands,
  1049.       except that they scroll only one-half page at a time.
  1050.  
  1051.                                        ┌─────────────────────────────────┐
  1052.                                        │ QEdit Tip:                      │
  1053.                                        │   All QEdit commands, including │
  1054.                                        │   those without default key     │
  1055.                                        │   assignments, can be assigned  │
  1056.                                        │   as the user desires, to       │
  1057.                                        │   almost any key.  Refer to     │
  1058.                                        │   the "Keyboard Configuration"  │
  1059.                                        │   section of Chapter 2 for more │
  1060.                                        │   information.                  │
  1061.                                        └─────────────────────────────────┘
  1062.  
  1063.                                   1-9
  1064.  
  1065.  
  1066.  
  1067.     ■ ScrollUp <Ctrl W> and LineUp <Ctrl E>
  1068.       These commands scroll the text one line at a time toward the
  1069.       beginning of the file.
  1070.  
  1071.       The ScrollUp command will cause the cursor to remain on the same
  1072.       line of text until it reaches the bottom of the screen, while the
  1073.       LineUp command will cause the cursor to remain stationary on the
  1074.       screen.
  1075.  
  1076.     ■ ScrollDown <Ctrl Z> and LineDown <Ctrl X>
  1077.       These commands scroll the text one line at a time toward the end
  1078.       of the file.
  1079.  
  1080.       The ScrollDown command will cause the cursor to remain on the same
  1081.       line of text until it reaches the top of the screen, while the
  1082.       LineDown command will cause the cursor to remain stationary on the
  1083.       screen.
  1084.  
  1085.     ■ GotoLine <Ctrl J>
  1086.       Upon entering the GotoLine command, QEdit will prompt with:
  1087.  
  1088.       ┌──────────────────────────┐
  1089.       │line number: <Esc = abort>│
  1090.       │                          │
  1091.       └──────────────────────────┘
  1092.  
  1093.       By typing a line number and <Enter>, QEdit will "jump" the
  1094.       cursor to the specified line number.  An easy way to move about
  1095.       quickly in your text is to keep track of critical positions by
  1096.       noting their line number, which is displayed on the Status Line,
  1097.       and then using this command to "jump" to those positions.
  1098.  
  1099.  
  1100.     ■ GotoBlockBeg <Ctrl QB> and GotoBlockEnd <Ctrl QK>
  1101.       These commands move the cursor to the beginning or to the end of
  1102.       the currently marked Block.  If the marked Block is in another
  1103.       file, QEdit will make that file the current file and then move you
  1104.       to the beginning or end of the Block.  For more information on
  1105.       using marked Blocks, refer to the "Block Commands" section in this
  1106.       chapter.
  1107.  
  1108.     ■ PrevPosition <Ctrl QP>
  1109.       This command can come in very handy.  It moves you to the cursor's
  1110.       previous position.  Although it would not be of much use if you
  1111.       had only moved a character or two, it can be useful for larger
  1112.       jumps of the cursor.
  1113.  
  1114.       For example, perhaps you are in the middle of a file and want to
  1115.       check something at the very beginning of the file.  To get to the
  1116.       beginning, you would simply enter BegFile <Ctrl PageUp>.  After
  1117.       you look at the beginning, you want to get back to where you were
  1118.       previously.  You could use PageDown, but that could be tedious,
  1119.       especially if your file is large.  The easiest way would be to
  1120.       enter PrevPosition, and with a single keystroke, you are
  1121.       immediately back where you started.  Note: PrevPosition can only
  1122.       take you back to the cursor's immediately previous position.
  1123.  
  1124.                                   1-10
  1125.  
  1126.       If there are intervening keystrokes that move the cursor,
  1127.       PrevPosition will move you back to the most recent location of the
  1128.       cursor.
  1129.  
  1130.     ■ Find <Ctrl QF> and RepeatFind <Ctrl L>
  1131.       These commands will search for a specific string of characters in
  1132.       the file.  Upon entering the Find command, QEdit will prompt for
  1133.       the string of characters for which to search.
  1134.  
  1135.       ┌─────────────────────────────────────────────────────────────────┐
  1136.       │Search for: <Esc = Abort>                                        │
  1137.       │                                                                 │
  1138.       └─────────────────────────────────────────────────────────────────┘
  1139.  
  1140.       Enter the desired string of characters and press <Enter>.
  1141.  
  1142.       QEdit will then prompt for the search options to use.
  1143.  
  1144.       ┌──────────────────────────────────────────────────────┐
  1145.       │Options [IWB] (Ignore, Words, Backward) <Esc = Abort> │
  1146.       │I                                                     │
  1147.       └──────────────────────────────────────────────────────┘
  1148.  
  1149.       Enter the letter(s) corresponding to the option(s) you want and
  1150.       press <Enter>.  The available options are:
  1151.  
  1152.         [I] = Ignore the case (capital or lowercase) of the search
  1153.               string.  For example, "Hello" would match "hello" if this
  1154.               option is chosen.  This option is set ON by default.
  1155.  
  1156.         [W] = Search for whole words only.  For example, when this option
  1157.               is chosen, the word "sent" will match only the actual word
  1158.               "sent".  Otherwise, any other words that contain the
  1159.               string (such as "sentence" or "absent") would also match.
  1160.  
  1161.         [B] = Search backward from the current cursor position.  When you
  1162.               choose "B", QEdit will search backward from the cursor
  1163.               position toward the beginning of the file.  Otherwise, it
  1164.               will search from the cursor position toward the end of the
  1165.               file.
  1166.  
  1167.       Once the Find command is executed the cursor will be placed at the
  1168.       first occurrence of the search string found in the text.  To
  1169.       locate subsequent occurrences of the search string, simply enter
  1170.       the RepeatFind command.
  1171.  
  1172.       If you want to search for a string and replace it with another
  1173.       string, refer to the "Replacing Text" section in this chapter.
  1174.  
  1175.     ■ Match <Alt F3>
  1176.       This is a specialized search command.  It acts only on the
  1177.       characters ( ), { }, and [ ].  With the cursor placed on one of
  1178.       these characters, enter the Match command.  QEdit will locate the
  1179.       logical matching character of the pair.  This command can be
  1180.       useful for programming in languages where complicated expressions
  1181.       are grouped using these characters.
  1182.  
  1183.                                   1-11
  1184.  
  1185.  
  1186.  
  1187.     Moving Around on the Screen
  1188.  
  1189.     These commands affect the cursor position within the current
  1190.     screen of displayed text.
  1191.  
  1192.     ■ BegScreen <Ctrl Home> and EndScreen <Ctrl End>
  1193.       These commands move you to the first or last line of the screen
  1194.       (or current window if you have windows open).  The cursor's column
  1195.       position does not change.
  1196.  
  1197.     ■ BegLine <Home> and EndLine <End>
  1198.       You are probably already familiar with these commands.  BegLine
  1199.       moves the cursor to the beginning, or column one, of the current
  1200.       cursor line. EndLine moves the cursor to the last non-blank
  1201.       character of the current cursor line.
  1202.  
  1203.     ■ ScreenLeft <Alt F5> and ScreenRight <Alt F6>
  1204.       These commands scroll the entire text to the left or right one
  1205.       column at a time.  You can change the number of columns which are
  1206.       shifted each time using the QEdit configuration program.  Refer to
  1207.       the "Colors/Screen Options" section of Chapter 2 for more
  1208.       information.
  1209.  
  1210.     ■ WordLeft <Ctrl Cursor Left> and WordRight <Ctrl Cursor Right>
  1211.       These commands move the cursor to the first character of the
  1212.       previous or following word in the text.
  1213.  
  1214.     ■ MakeCtrofScreen <Shift F5>, MakeTopofScreen <F5>, and MakeBotofScreen
  1215.       These three commands change the position of the cursor line on the
  1216.       screen (or window, if you have windows open).  They can be useful
  1217.       if you prefer to work at the bottom or top of the screen or if
  1218.       you want to keep the text surrounding your cursor line in view.
  1219.  
  1220.       The MakeCtrofScreen command scrolls the text on the screen (either
  1221.       up or down) until the cursor line is the center line of the
  1222.       screen.
  1223.  
  1224.       The MakeTopofScreen command scrolls the text upward until the
  1225.       cursor line is the top line of the screen.
  1226.  
  1227.       The MakeBotofScreen command scrolls the text downward until the
  1228.       cursor line is the last line of the screen.
  1229.  
  1230.                                   1-12
  1231.  
  1232.  
  1233.  
  1234.     Moving By Lines and Characters
  1235.  
  1236.     These commands enable you to move in short increments through the
  1237.     text.
  1238.  
  1239.     ■ CursorLeft <Cursor Left> and CursorRight <Cursor Right>
  1240.       These commands move the cursor one column to the right or left on
  1241.       the cursor line.
  1242.  
  1243.       When you use CursorLeft, the cursor will stop when it reaches the
  1244.       left edge of the screen, unless the text has been scrolled to the
  1245.       left.  In that case it scrolls the text to the right one column at
  1246.       a time until it reaches column one.
  1247.  
  1248.       When you use CursorRight and the cursor reaches the right edge of
  1249.       the screen, it will begin to scroll the text to the left.  It will
  1250.       stop scrolling when it reaches the maximum line length.
  1251.  
  1252.     ■ CursorUp <Cursor Up> and CursorDown <Cursor Down>
  1253.       These commands move the cursor up or down in the file one line at
  1254.       a time.  The cursor's column position does not change.
  1255.  
  1256.  
  1257.     Using Windows
  1258.     ─────────────────────────────────────────────────────────────────────────
  1259.  
  1260.     QEdit provides the ability to view different areas of files (either
  1261.     multiple files or the same file) at the same time, through the use
  1262.     of windows.  A window is a portion of the screen that allows you to
  1263.     view text.  You can divide your screen into as many as eight
  1264.     horizontal windows.  You can then view as many as eight different
  1265.     files through these windows or have multiple views of a single
  1266.     file. This capability can be quite helpful for comparing text,
  1267.     copying text, and moving text.
  1268.  
  1269.     An example of a screen split into three windows is shown below.
  1270.  
  1271.     ┌──────────────────────────────────────────────────────────────────────┐
  1272.     │ L 1    C 1    IAW         411K     *c:\file1                         │
  1273.     │                                                                      │
  1274.     │ This window is a view of file number 1 at line number 1.             │
  1275.     │ This file is being edited with Insert, AutoIndent, and WordWrap      │
  1276.     │ modes all ON.  This file has been updated.                           │
  1277.     │                                                                      │
  1278.     │                                                                      │
  1279.     │                                                                      │
  1280.     │                                                                      │
  1281.     │ L 483  C 12   IAW         411K     *c:\file1                         │
  1282.     │                                                                      │
  1283.     │ This window is a view of file number 1 at line number 483.           │
  1284.     │                                                                      │
  1285.     │                                                                      │
  1286.     │                                                                      │
  1287.     │                                                                      │
  1288.     │ L 15   C 15   I           411K      c:\file2                         │
  1289.     │               ▄                                                      │
  1290.     │ This window is a view of file number 2.                              │
  1291.     │ This file is being edited with Insert mode ON, while AutoIndent and  │
  1292.     │ WordWrap modes are OFF.  This file has not been updated.             │
  1293.     │                                                                      │
  1294.     └──────────────────────────────────────────────────────────────────────┘
  1295.  
  1296.                                   1-13
  1297.  
  1298.  
  1299.  
  1300.     Creating Windows
  1301.  
  1302.     To create a window, use the HorizontalWindow <Ctrl OH> command. The
  1303.     screen will be split into two halves, or windows, each window having
  1304.     its own Status Line.  The cursor will reside in the newly created
  1305.     window, making it the current window.
  1306.  
  1307.     If only one file is being edited, the newly created window will
  1308.     simply be an additional view of the same file.  QEdit will not load
  1309.     more than one copy of the same file.
  1310.  
  1311.     If multiple files are being edited, the newly created window will be
  1312.     a view of the next file in the ring.  (Refer to the "Multiple Files"
  1313.     section in this chapter.)  If desired, you can configure QEdit to
  1314.     prompt for the name of the file to be viewed in the new window
  1315.     instead of the editor automatically selecting the next file in the
  1316.     ring.  Refer to the "General Options" section of Chapter 2 for more
  1317.     information.
  1318.  
  1319.     Once the screen has been split into windows, entering the
  1320.     HorizontalWindow command again will affect the current window. All
  1321.     other windows will remain unchanged.
  1322.  
  1323.  
  1324.     Switching Windows
  1325.  
  1326.     When multiple windows are opened, editing will only take place in
  1327.     the current window (the window containing the cursor).  For editing
  1328.     text in other windows, two commands are provided to switch from one
  1329.     window to another.
  1330.  
  1331.     ■ The PrevWindow <Ctrl OP> command will move the cursor to the
  1332.       window above the current window.  If the current window is at the
  1333.       top of the screen, the cursor will move to the last window on the
  1334.       screen.
  1335.  
  1336.     ■ The NextWindow <Ctrl ON> command will move the cursor to the
  1337.       window below the current window.  If the current window is at the
  1338.       bottom of the screen, the cursor will move to the first window on
  1339.       the screen.
  1340.  
  1341.  
  1342.     Changing Window Size
  1343.  
  1344.     You can change the size of any of the windows on the screen with the
  1345.     commands below. 
  1346.  
  1347.     ■ The GrowWindow <Ctrl OG> command allows you to increase the size
  1348.       of the current window.  Upon entering this command, QEdit will
  1349.       prompt you to increase the size of the window by using the cursor
  1350.       up and cursor down keys.  The cursor up key will increase the size
  1351.       of the current window one line at a time toward the top of the
  1352.       screen.  The cursor down key will increase the size of the current
  1353.       window one line at a time toward the bottom of the screen.
  1354.  
  1355.                                   1-14
  1356.  
  1357.  
  1358.     ■ The ShrinkWindow <Ctrl OS> command allows you to decrease the size
  1359.       of the current window.   A window can be as small as 3 lines,
  1360.       including its Status Line.  Upon entering this command, QEdit will
  1361.       prompt you to decrease the size of the window by using the cursor
  1362.       up and cursor down keys.  The cursor up key will decrease the size
  1363.       of the current window one line at a time by moving the bottom of
  1364.       the window toward the top of the screen.  The cursor down key will
  1365.       decrease the size of the current window one line at a time by
  1366.       moving the top of the window toward the bottom of the screen.
  1367.  
  1368.                                        ┌─────────────────────────────────┐
  1369.                                        │ QEdit Tip:                      │
  1370.                                        │   The GrowWindow and Shrink-    │
  1371.                                        │   Window commands may be entered│
  1372.                                        │   successively, without pressing│
  1373.                                        │   <Esc> in between.             │
  1374.                                        └─────────────────────────────────┘
  1375.  
  1376.  
  1377.     ■ The ZoomWindow <Ctrl OZ> command will cause the current window to
  1378.       fill the entire screen, as all other windows disappear.  To
  1379.       restore the screen with all windows, simply press <Ctrl OZ> again.
  1380.       Be careful not to confuse this command with the OneWindow command
  1381.       (see below).  OneWindow fills the screen with the current window
  1382.       (like ZoomWindow does), but it also closes all windows except the
  1383.       current one.  ZoomWindow leaves the other windows intact, even
  1384.       though they are hidden from view.
  1385.  
  1386.  
  1387.     Closing Windows
  1388.  
  1389.     There are two commands to close windows.
  1390.  
  1391.     ■ The CloseWindow <Ctrl OC> command closes the current window.  The
  1392.       current window will disappear and the cursor will be placed in the
  1393.       window above the closed window, making it the new current window.
  1394.       When the closed window is at the top of the screen, the window
  1395.       below the closed window will become the new current window.
  1396.  
  1397.     ■ The OneWindow <Ctrl OO> command closes all windows except the
  1398.       current window.  The current window will fill the entire screen.
  1399.  
  1400.     Note that closing a window does not discard files from the
  1401.     editor.
  1402.  
  1403.                                   1-15
  1404.  
  1405.  
  1406.  
  1407.     Copying, Moving, Replacing, and Deleting Text
  1408.     ─────────────────────────────────────────────────────────────────────────
  1409.  
  1410.  
  1411.     Block Commands
  1412.     ─────────────────────────────────────────────────────────────────────────
  1413.  
  1414.     In this section, we will see how to mark and manipulate Blocks.  A
  1415.     Block is some portion of the text file which has been specifically
  1416.     delineated using QEdit's Block marking commands.  We will see how to
  1417.     manipulate Blocks both directly and through the use of intermediate
  1418.     storage areas known as buffers.
  1419.  
  1420.     QEdit contains a rich set of Block commands.  There are commands to
  1421.     mark whole lines or an arbitrary "stream" of characters.  There are
  1422.     commands to copy, move, shift, and delete Blocks.  These commands
  1423.     are very useful for transferring text from one file to another.
  1424.     There are also cut-and-paste commands, as well as commands to move
  1425.     Blocks to and from named Scratch Buffers.
  1426.  
  1427.  
  1428.     Marking and Unmarking a Block
  1429.  
  1430.     Before you can manipulate a Block, you must first "mark" or outline
  1431.     a Block.  There are three ways of marking a Block in QEdit.  The one
  1432.     you choose will depend on the editing situation and what you find
  1433.     most comfortable to use.
  1434.  
  1435.     ■ MarkLine <Alt L>
  1436.       This command allows you to mark a Block in whole line increments.
  1437.       In other words, the Block will contain complete lines only and no
  1438.       portions of lines.  To use this command place the cursor anywhere
  1439.       on the first line of the text you wish to mark and press <Alt L>.
  1440.       (Notice that the line is immediately marked.)  Now, move the
  1441.       cursor (the Block will "follow" the cursor) to the last line of
  1442.       text to be marked and press <Alt L> again.  You now have a marked
  1443.       Block, ready for manipulation.
  1444.  
  1445.  
  1446.     ■ DropAnchor <Alt A>
  1447.       This command allows you to mark a Block one character at a time.
  1448.       In other words, the Block will contain a stream of characters
  1449.       (which can span over multiple lines).  To use this command place
  1450.       the cursor over the first character of the text you wish to mark
  1451.       and press <Alt A>.  Then begin moving the cursor toward the end of
  1452.       the text to be marked.  Notice that the Block "follows" the cursor
  1453.       position.  Once the cursor is placed over the last character to be
  1454.       marked, press <Alt A> again.  You now have a marked Block, ready
  1455.       for manipulation.
  1456.  
  1457.                                   1-16
  1458.  
  1459.  
  1460.                                        ┌─────────────────────────────────┐
  1461.                                        │ QEdit Tip:                      │
  1462.                                        │   When using the MarkLine and   │
  1463.                                        │   DropAnchor commands, it is not│
  1464.                                        │   necessary to mark the end of  │
  1465.                                        │   the Block.  QEdit will assume │
  1466.                                        │   the end of the Block to be the│
  1467.                                        │   current cursor position for   │
  1468.                                        │   DropAnchor and the current    │
  1469.                                        │   cursor line for MarkLine.     │
  1470.                                        │   Marking the end of the Block  │
  1471.                                        │   is only necessary when moving │
  1472.                                        │   or copying text within the    │
  1473.                                        │   same file.                    │
  1474.                                        └─────────────────────────────────┘
  1475.  
  1476.     ■ MarkBlockBegin <Ctrl KB> and MarkBlockEnd <Ctrl KK>
  1477.       This is another method of marking a Block one character at a time.
  1478.       To mark a Block with this command, place the cursor over the first
  1479.       character of the text you wish to mark and press <Ctrl KB>.  Then
  1480.       position the cursor one character past the end of the text that is
  1481.       to be marked and press <Ctrl KK>.  The Block is now marked and
  1482.       ready for manipulation.
  1483.  
  1484.     ■ UnmarkBlock <Alt U>
  1485.       Entering the UnmarkBlock command causes the currently marked Block
  1486.       to be unmarked.
  1487.  
  1488.     QEdit allows you to mark one Block at a time.  If you mark a Block
  1489.     and then go elsewhere in the file and attempt to mark another Block,
  1490.     QEdit will simply extend the first Block by including all the text
  1491.     between the original Block and the current cursor position.  If you
  1492.     mark a Block in one file and then go to another file and mark a
  1493.     Block, QEdit will automatically unmark the Block in the first file.
  1494.  
  1495.     Also, if you mix types of Block marking, by entering MarkLine
  1496.     followed by DropAnchor or vice-versa, QEdit will mark the Block
  1497.     according to the last command entered.
  1498.  
  1499.  
  1500.     Manipulating Blocks Directly
  1501.  
  1502.     QEdit provides several ways to manipulate a marked Block. The
  1503.     following commands act directly on a marked Block.
  1504.  
  1505.                                        ┌─────────────────────────────────┐
  1506.                                        │ QEdit Tip:                      │
  1507.                                        │   When Copying or Moving Blocks:│
  1508.                                        │                                 │
  1509.                                        │   Blocks marked using the Drop- │
  1510.                                        │   Anchor and MarkBlockBegin/End │
  1511.                                        │   commands will always be       │
  1512.                                        │   inserted beginning at the     │
  1513.                                        │   current cursor position.      │
  1514.                                        │                                 │
  1515.                                        │   Blocks marked using the Mark- │
  1516.                                        │   Line command will be inserted │
  1517.                                        │   at either the line before or  │
  1518.                                        │   the line after the current    │
  1519.                                        │   cursor line.  Refer to the    │
  1520.                                        │   "General Options" section of  │
  1521.                                        │   Chapter 2 for more            │
  1522.                                        │   information.                  │
  1523.                                        └─────────────────────────────────┘
  1524.  
  1525.                                   1-17
  1526.  
  1527.  
  1528.  
  1529.     ■ CopyBlock <Alt C>
  1530.       This command makes a copy of the marked Block and inserts it where
  1531.       you decide.  You can insert this copy of the Block at some other
  1532.       place in the same file or in another file.  The original Block of
  1533.       text, from which you made the copy, is not affected.
  1534.  
  1535.       To use this command, first mark the Block as described above.
  1536.       Next, move the cursor to the position in the file where you wish
  1537.       to insert the marked text.  (Or, if you have multiple files loaded
  1538.       and wish to copy text from one file to another, use the NextFile,
  1539.       PrevFile or EditFile commands to get a new current file and
  1540.       likewise position the cursor.)  Now enter the CopyBlock <Alt C>
  1541.       command.  The Block will be inserted at the new position.  You may
  1542.       notice, after you use CopyBlock, that the newly inserted Block of
  1543.       text is now marked and the original Block is unmarked.  To unmark
  1544.       the copied Block, enter the UnmarkBlock command.
  1545.  
  1546.       QEdit provides an easy method for copying the same Block
  1547.       repeatedly. Refer to the Copy and Paste commands in the following
  1548.       section for more information.
  1549.  
  1550.  
  1551.     ■ MoveBlock <Alt M>
  1552.       This command works exactly like CopyBlock with one exception: Upon
  1553.       entering the MoveBlock <Alt M> command, the originally marked
  1554.       Block is deleted from the file.
  1555.  
  1556.       As with the CopyBlock command, you can move a Block to another
  1557.       part of the same file or from one file to another.
  1558.  
  1559.       QEdit provides an easy method for deleting a Block from its
  1560.       original position and inserting it repeatedly at other positions.
  1561.       Refer to the Cut and Paste commands in the following section for
  1562.       more information.
  1563.  
  1564.  
  1565.     ■ DeleteBlock <Alt G>.
  1566.       This command simply deletes a marked Block of text from the file.
  1567.       To use this command, first mark a Block of text to be deleted,
  1568.       then enter the DeleteBlock command.  The marked text will be
  1569.       deleted from the file.  (Deleted Blocks will be placed in the Kill
  1570.       buffer. Refer to "The Kill Buffer" section in this chapter for
  1571.       more information.)
  1572.  
  1573.                                   1-18
  1574.  
  1575.  
  1576.  
  1577.     ■ ShiftLeft <Shift F7> and ShiftRight <Shift F8>
  1578.       These commands allow the User to shift text contained in a Block
  1579.       to the left or right. To use these commands, first mark a Block.
  1580.       Now enter ShiftLeft or ShiftRight.  The entire marked Block of
  1581.       text will be shifted one column to the left or right respectively.
  1582.       If there is no marked Block of text or the cursor is outside of
  1583.       the marked Block, the current cursor line will be shifted. This
  1584.       command is very useful for changing indentation for portions of
  1585.       text or source code.
  1586.  
  1587.  
  1588.     Manipulating Blocks Using Scrap Buffers
  1589.  
  1590.     QEdit provides an extremely helpful device for quickly manipulating
  1591.     Blocks of text.  This device consists of a Scrap Buffer and three
  1592.     QEdit commands which act on the Scrap Buffer.
  1593.  
  1594.     The Scrap Buffer is a temporary holding area for marked Blocks of
  1595.     text.  The commands Cut, Copy, and Paste are solely responsible for
  1596.     placing text into the Scrap Buffer and copying text from the Scrap
  1597.     Buffer.
  1598.  
  1599.     When you issue a Copy or Cut command (we will discuss how to use
  1600.     these in the following section ), the marked Block is placed into
  1601.     the Scrap Buffer.  The next time you Copy or Cut a Block into the
  1602.     Scrap Buffer, the previous contents of the Scrap Buffer are deleted
  1603.     and replaced with the new Block.
  1604.  
  1605.     You can repeatedly use the Paste command as many times as needed
  1606.     to insert a copy of the Block held in the Scrap Buffer at multiple
  1607.     positions in your file or files.  The Paste command does not purge
  1608.     the contents of the Scrap Buffer.
  1609.  
  1610.  
  1611.  
  1612.     ■ Copy <grey +> and Paste <grey *>
  1613.       To copy a section of text from its present position and insert it
  1614.       somewhere else:
  1615.  
  1616.       1. Mark the text using the Block marking commands.
  1617.  
  1618.       2. Enter Copy <grey +>.  This places a copy of the marked text
  1619.          into the Scrap Buffer.
  1620.  
  1621.       3. If you want to insert the text somewhere else within the same
  1622.          file, use the cursor movement commands to place the cursor
  1623.          where you wish to insert the text.
  1624.  
  1625.       4. If you want to insert the text in another file, switch to that
  1626.          file using the NextFile, PrevFile, or EditFile command to
  1627.          access that file.  Then, likewise place the cursor at the
  1628.          desired position.
  1629.  
  1630.                                   1-19
  1631.  
  1632.  
  1633.       5. Enter Paste <grey *> to insert the text.
  1634.  
  1635.       Since Paste leaves the contents of the Scrap Buffer intact, you
  1636.       can make multiple insertions in the same or different files.
  1637.       Simply move the cursor to the file and position where you wish to
  1638.       make additional insertions and enter Paste <grey *>.  Please note
  1639.       that the next time you issue a Cut or Copy command, the previous
  1640.       contents of the Scrap Buffer will be discarded.
  1641.  
  1642.  
  1643.     ■ Cut <grey -> and Paste <grey *>
  1644.       Cut and Paste work exactly like Copy and Paste except that Cut
  1645.       will delete the marked Block from the file.  You can still make
  1646.       multiple insertions of the text using the Paste Command.
  1647.  
  1648.                                        ┌─────────────────────────────────┐
  1649.                                        │ QEdit Tip:                      │
  1650.                                        │   QEdit can be configured to    │
  1651.                                        │   have the Cut and Copy commands│
  1652.                                        │   act on the current cursor line│
  1653.                                        │   if no Block is marked.        │
  1654.                                        │   Refer to the "Advanced        │
  1655.                                        │   Options" section of Chapter 2 │
  1656.                                        │   for more information.         │
  1657.                                        └─────────────────────────────────┘
  1658.  
  1659.  
  1660.     Manipulating Blocks Using Scratch Buffers
  1661.  
  1662.     A Scratch Buffer is a special type of buffer to which you assign a
  1663.     name.  QEdit allows you to create and name up to 99 Scratch Buffers
  1664.     for each editing session.  These can be useful if you have several
  1665.     different Blocks of text that you want to insert in multiple
  1666.     locations.  The commands StoreScrbuff <Ctrl BS>, AppendScrbuff
  1667.     <Ctrl BA>, and GetScrbuff <Ctrl BL> are used to place text in, and
  1668.     retrieve text from, a Scratch Buffer.  Whenever you issue one of
  1669.     these commands, QEdit will ask you for the name of the Scratch
  1670.     Buffer.  The contents of all Scratch Buffers are discarded when the
  1671.     editor is terminated.
  1672.  
  1673.     ■ StoreScrbuff <Ctrl BS> and AppendScrbuff <Ctrl BA>
  1674.  
  1675.       To place a Block of text into a named buffer:
  1676.  
  1677.       1. Mark the Block.
  1678.  
  1679.       2. If you want to create a new Scratch Buffer containing the
  1680.          marked Block, enter StoreScrbuff <Ctrl BS>.  (This command is
  1681.          also used if you wish to replace the current contents of a
  1682.          Scratch Buffer with the marked Block.)  If you want to append
  1683.          the marked Block to the current contents of the Scratch Buffer,
  1684.          enter AppendScrbuff <Ctrl BA>.
  1685.  
  1686.                                   1-20
  1687.  
  1688.  
  1689.       3. QEdit will prompt for the name of the Scratch Buffer.
  1690.  
  1691.          ┌─────────────────────────────────────────────────────────────────┐
  1692.          │Store (Append) to buffer: <Esc = abort>                          │
  1693.          │                                                                 │
  1694.          └─────────────────────────────────────────────────────────────────┘
  1695.  
  1696.       4. Enter a name.  It is best to use a name which reflects the
  1697.          contents of the buffer and is easily remembered.
  1698.  
  1699.       The Block is now stored in a Scratch Buffer under the assigned
  1700.       name.
  1701.  
  1702.       ■ GetScrbuff <Ctrl BL>
  1703.         To retrieve the contents of a named Scratch Buffer and insert it
  1704.         at the current cursor position:
  1705.  
  1706.         1. Position the cursor where you wish the contents of the named
  1707.            Scratch Buffer to be inserted.
  1708.  
  1709.         2. Enter GetScrbuff <Ctrl BL>.  QEdit will prompt for the name
  1710.            of the Scratch Buffer to be retrieved.
  1711.  
  1712.            ┌─────────────────────────────────────────────────────────────────┐
  1713.            │Get from buffer: <Esc = abort>                                   │
  1714.            │                                                                 │
  1715.            └─────────────────────────────────────────────────────────────────┘
  1716.  
  1717.         3. Enter the name of the desired Scratch Buffer.
  1718.  
  1719.         4. Repeat the above steps whenever you want to insert the
  1720.            contents of a Scratch Buffer into your text.
  1721.  
  1722.  
  1723.     Examples of Block Commands
  1724.  
  1725.     This section contains examples of commonly used Block Commands.
  1726.  
  1727.     ■ Copying or moving a Block within the same file.
  1728.  
  1729.       1. Position the cursor at the beginning of the Block to be copied
  1730.          or moved.
  1731.  
  1732.       2. Enter DropAnchor <Alt A> to mark a stream of characters or
  1733.          MarkLine <Alt L> to mark whole lines.
  1734.  
  1735.       3. Position the cursor at the end of the Block to be copied or moved.
  1736.  
  1737.       4. Enter DropAnchor or MarkLine again to mark the end of the
  1738.          Block.
  1739.  
  1740.       5. Move the cursor to the location in the file where you want to
  1741.          insert the marked Block.
  1742.  
  1743.                                   1-21
  1744.  
  1745.  
  1746.       6. Enter CopyBlock <Alt C> or MoveBlock <Alt M>.
  1747.  
  1748.       7. Enter UnmarkBlock <Alt U> to unmark the Block.
  1749.  
  1750.       The Block has now been copied or moved.
  1751.  
  1752.  
  1753.     ■ Copying or moving a Block to another file.
  1754.  
  1755.       1. Position the cursor at the beginning of the Block to be copied
  1756.          or moved.
  1757.  
  1758.       2. Enter DropAnchor <Alt A> to mark a stream of characters or
  1759.          MarkLine <Alt L> to mark whole lines.
  1760.  
  1761.       3. Position the cursor at the end of the Block to be copied or moved.
  1762.  
  1763.       4. Switch to the "target" file using the file commands EditFile,
  1764.          NextFile, or PrevFile.
  1765.  
  1766.       5. Move the cursor to the location in the file where you want to
  1767.          insert the marked Block.
  1768.  
  1769.       6. Enter CopyBlock <Alt C> or MoveBlock <Alt M>.
  1770.  
  1771.       7. Enter UnmarkBlock <Alt U> to unmark the Block.
  1772.  
  1773.       The Block has now been copied or moved.
  1774.  
  1775.  
  1776.     ■ Copying or moving a Block for multiple insertions in the same file.
  1777.  
  1778.       If you want to insert the same Block at several positions within a
  1779.       file, follow these steps:
  1780.  
  1781.       1. Position the cursor at the beginning of the Block to be copied
  1782.          or moved.
  1783.  
  1784.       2. Enter DropAnchor <Alt A> to mark a stream of characters or
  1785.          MarkLine <Alt L> to mark whole lines.
  1786.  
  1787.       3. Position the cursor at the end of the Block to be copied or moved.
  1788.  
  1789.       4. If you want to leave the Block in its original position and
  1790.          insert copies of it at other locations, then enter Copy <grey +>.
  1791.  
  1792.                                   1-22
  1793.  
  1794.  
  1795.          If you want to delete the Block from its original position and
  1796.          insert copies of it at other locations, then enter Cut <grey ->.
  1797.  
  1798.          The Block is now stored in the Scrap Buffer.
  1799.  
  1800.       5. Move the cursor to the location in the file where you want to
  1801.          insert the Block.
  1802.  
  1803.       6. Enter Paste <grey *>.
  1804.  
  1805.       The Block is now inserted.  Repeat steps 5 and 6 for each additional
  1806.       insertion.
  1807.  
  1808.  
  1809.     ■ Copying or moving a Block for multiple insertions in more than one
  1810.       file.
  1811.  
  1812.       If you want to insert the same Block at several positions in more
  1813.       than one file, follow these steps:
  1814.  
  1815.       1. Position the cursor at the beginning of the Block to be copied
  1816.          or moved.
  1817.  
  1818.       2. Enter DropAnchor <Alt A> to mark a stream of characters or
  1819.          MarkLine <Alt L> to mark whole lines.
  1820.  
  1821.       3. Position the cursor at the end of the Block to be copied or moved.
  1822.  
  1823.       4. If you want to leave the Block in its original position and
  1824.          insert copies of it at other locations, then enter Copy <grey +>.
  1825.  
  1826.          If you want to delete the Block from its original position and
  1827.          insert copies of it at other locations, then enter Cut <grey ->.
  1828.  
  1829.          The Block is now stored in the Scrap Buffer.
  1830.  
  1831.       5. Switch to the "target" file using the file commands EditFile,
  1832.          NextFile, or PrevFile.
  1833.  
  1834.       6. Move the cursor to the location in the file where you want to
  1835.          insert the Block.
  1836.  
  1837.       7. Enter Paste <grey *>.
  1838.  
  1839.       The Block is now inserted.  Repeat steps 5-7 for each additional
  1840.       insertion.
  1841.  
  1842.                                   1-23
  1843.  
  1844.  
  1845.  
  1846.     ■ Copying multiple Blocks for insertion in one or more files.
  1847.  
  1848.       If you have several Blocks that you want to insert in several
  1849.       different files, follow these steps:
  1850.  
  1851.       1. Position the cursor at the beginning of the first Block.
  1852.  
  1853.       2. Enter DropAnchor <Alt A> to mark a stream of characters or
  1854.          MarkLine <Alt L> to mark whole lines.
  1855.  
  1856.       3. Position the cursor at the end of the first Block.
  1857.  
  1858.       4. Enter AppendScrbuff <Ctrl BA> if you want to append to an
  1859.          existing Scratch Buffer.  Otherwise, enter StoreScrbuff
  1860.          <Ctrl BS> to create or overwrite an existing Scratch Buffer.
  1861.  
  1862.       5.  QEdit will prompt for the name of the buffer.  Enter a name.
  1863.           (It is best to use a name which reflects the contents of the
  1864.           buffer and is easily remembered).
  1865.  
  1866.           The Block is now stored in a Scratch Buffer under the assigned
  1867.           name.  Repeat steps 1-5 for each additional Block you want to
  1868.           store.
  1869.  
  1870.       6. Switch to the "target" file using the file commands EditFile,
  1871.          NextFile, or PrevFile.
  1872.  
  1873.       7. Move the cursor to the location in the file where you want to
  1874.          insert a Block.
  1875.  
  1876.       8. Enter GetScrbuff <Ctrl BL>.  QEdit will prompt for the name of
  1877.          the Scratch Buffer.  Enter the name of the desired Scratch
  1878.          Buffer for insertion.
  1879.  
  1880.       Repeat steps 6 through 8 for each insertion of a stored Block.
  1881.  
  1882.                                   1-24
  1883.  
  1884.  
  1885.  
  1886.     Non-Block Commands
  1887.     ─────────────────────────────────────────────────────────────────────────
  1888.  
  1889.     In addition to QEdit's array of Block commands, there are also many
  1890.     commands for manipulating your text which do not depend on marked
  1891.     Blocks.  This section explains each of these non-Block commands in
  1892.     detail.
  1893.  
  1894.  
  1895.     Adding Text
  1896.  
  1897.     ■ AddLine <F2>
  1898.       As its name implies, this command inserts a blank line in the
  1899.       text.  The line is added immediately below the current cursor line.
  1900.       The cursor is moved to the new line.  The cursor column does not
  1901.       change.
  1902.  
  1903.     ■ InsertLine <Alt F2>
  1904.       This command inserts a blank line in the text above the cursor
  1905.       line.  The cursor remains on the new line and the cursor column
  1906.       does not change.
  1907.  
  1908.     ■ Literal <Ctrl P>
  1909.       The Literal command is used to insert control characters into the
  1910.       text.  To use this command enter <Ctrl P> followed by a control
  1911.       character.  The control character will be inserted into the text.
  1912.       For example, to insert a formfeed character (ASCII 12) in the
  1913.       text, enter <Ctrl P> <Ctrl L>.
  1914.  
  1915.     ■ ToggleBoxDraw <Shift F1>
  1916.       This is a specialized command which is really a mode of operation
  1917.       that can be switched ON or OFF.  If switched ON, the cursor
  1918.       movement keys (up, down, right, left) can be used to "draw" lines
  1919.       in the text.  This can be very useful for creating graphs and
  1920.       tables.  To switch Box Drawing mode ON, enter <Shift F1>.  To
  1921.       switch OFF, enter <Shift F1> again.
  1922.  
  1923.     ■ ToggleEnterMatching <Esc><O><E>
  1924.       This is also a specialized command which is really a mode of
  1925.       operation that can be switched ON or OFF.  If switched ON, QEdit
  1926.       will automatically insert into the text a corresponding right-hand
  1927.       ")" or "]" each time a left-hand "(" or "[" is entered.  To switch
  1928.       Enter Matching mode ON, enter <Esc><O><E>.  To switch OFF, enter
  1929.       <Esc><O><E> again.
  1930.  
  1931.  
  1932.     Copying Text
  1933.  
  1934.     ■ GetPrev <Ctrl - (dash)>
  1935.       This command copies the character directly above the cursor onto
  1936.       the cursor line.  To get an idea of how this command works, place
  1937.       the cursor at the beginning of any line which has text on the line
  1938.       immediately above it.
  1939.  
  1940.                                   1-25
  1941.  
  1942.  
  1943.       Now press <Ctrl - (dash)> and hold it down. The cursor will move
  1944.       to the right while copying the the characters from the line above.
  1945.  
  1946.     ■ DupLine <F4>
  1947.       This command simply makes a copy of the current cursor line and
  1948.       inserts this copy on the line immediately below the cursor line.
  1949.       The cursor is placed on the new line.
  1950.  
  1951.     ■ Copy <grey +> and Paste <grey *>
  1952.       Refer to the "Block Commands" section in this chapter for a
  1953.       complete explanation of these commands.  The commands are included
  1954.       here because, if desired, the User can configure QEdit so that
  1955.       these commands act on the current cursor line in the same manner
  1956.       in which they act on Blocks.  For more information on how to
  1957.       configure this option, refer to the "Advanced Options" section of
  1958.       Chapter 2.
  1959.  
  1960.  
  1961.     Moving Text
  1962.  
  1963.     ■ Align
  1964.       This command lines up the left-most character of the cursor line
  1965.       with the left-most character of the line above it.  This allows
  1966.       you to align portions of text which require a common left margin.
  1967.       This command also moves the cursor down one line; thus, large
  1968.       portions of text can be aligned very quickly by entering this
  1969.       command and holding the command key down.
  1970.  
  1971.     ■ JoinLine  <Alt J>
  1972.       This command will delete the line below the current cursor line
  1973.       and append it to the end of the cursor line.
  1974.  
  1975.       If the cursor is positioned on or before the last non-blank
  1976.       character of the line, the line below will be appended immediately
  1977.       following the last non-blank character.
  1978.  
  1979.       If the cursor is positioned beyond the last non-blank character of
  1980.       the line, the line below will be appended beginning at the current
  1981.       cursor position.
  1982.  
  1983.       If the line below the cursor line is blank, the blank line will be
  1984.       deleted.
  1985.  
  1986.     ■ SplitLine <Alt S>
  1987.       This command will delete all text on and to the right of the
  1988.       cursor on the cursor line and will insert this text on a new line
  1989.       immediately below the cursor line.  The cursor position will not
  1990.       change.
  1991.  
  1992.     ■ Return <Enter>
  1993.       Before reading the explanation of the Return command, it may be
  1994.       helpful to review the discussion of Insert mode in the
  1995.       "Modes" section in this chapter.
  1996.  
  1997.                                   1-26
  1998.  
  1999.  
  2000.       If the editor is in Insert mode, this command performs like the
  2001.       SplitLine command; that is, all text on and to the right of the
  2002.       cursor on the cursor line will be deleted and inserted on a new
  2003.       line immediately below the cursor line.  The cursor, however, will
  2004.       be placed on the new line.
  2005.  
  2006.       If the editor is not in Insert mode, this command will simply
  2007.       place the cursor at the beginning of the line below the cursor
  2008.       line.  No text will be affected.
  2009.  
  2010.       If the editor is in AutoIndent mode, the cursor will be placed at
  2011.       the left margin instead of at the beginning of the line.
  2012.  
  2013.                                        ┌─────────────────────────────────┐
  2014.                                        │ QEdit Tip:                      │
  2015.                                        │   QEdit can be configured so    │
  2016.                                        │   that the Return command does  │
  2017.                                        │   not split lines in Insert     │
  2018.                                        │   mode.                         │
  2019.                                        │   Refer to the "Advanced        │
  2020.                                        │   Options" section of Chapter 2 │
  2021.                                        │   for more information.         │
  2022.                                        └─────────────────────────────────┘
  2023.  
  2024.     ■ Cut <grey -> and Paste <grey *>
  2025.       Refer to the "Block Commands" section in this chapter for a
  2026.       complete explanation of these commands.  The commands are included
  2027.       here because, if desired, the User can configure QEdit so that
  2028.       these commands act on the current cursor line in the same manner
  2029.       in which they act on Blocks.  For more information on how to
  2030.       configure this option, refer to the "Advanced Options" section of
  2031.       Chapter 2.
  2032.  
  2033.     ■ ShiftLeft <Shift F7> and ShiftRight <Shift F8>
  2034.       Refer to the "Block Commands" section in this chapter for a
  2035.       complete explanation of these commands.  The commands are included
  2036.       here because, if there is no marked Block in the text, these
  2037.       commands will act on the current cursor line.
  2038.  
  2039.  
  2040.     Deleting And Undeleting Text
  2041.  
  2042.     ■ Backspace <Backspace> and DelLtWord <Ctrl Backspace>
  2043.       If Insert mode is ON, the Backspace command deletes the character
  2044.       to the left of the cursor.  The text to the right of the cursor is
  2045.       pulled behind the cursor as it moves to the left.  If the cursor
  2046.       is in column one and you enter Backspace, the cursor line is
  2047.       appended to the line immediately above.
  2048.  
  2049.       If Insert mode is OFF, the Backspace command works the same as
  2050.       above except the text to the right of the cursor is not pulled
  2051.       behind the cursor as it moves left.
  2052.  
  2053.       The DelLtWord command is a backspace for "words".  It works just
  2054.       like the Backspace command, except that it deletes all characters
  2055.       from the cursor to the beginning of the previous word.
  2056.  
  2057.                                   1-27
  2058.  
  2059.  
  2060.     ■ DelCh <Del> and DelRtWord <Ctrl T>
  2061.       DelCh will delete the character at the cursor position and pull
  2062.       the text to the right of the cursor, one column to the left.
  2063.  
  2064.       If the cursor position is to the right of the last non-blank
  2065.       character on the cursor line, the line immediately below will be
  2066.       appended to the cursor line.
  2067.  
  2068.       The DelRtWord command is a character delete for "words".  It
  2069.       works just like the DelCh command, except that it deletes
  2070.       all characters from the cursor to the beginning of the following
  2071.       word.
  2072.  
  2073.     ■ DelToEol <F6>
  2074.       This command deletes the character at the cursor position and all
  2075.       text to the right of the cursor on the current cursor line.  The
  2076.       cursor position does not change.
  2077.  
  2078.     ■ DelLine <Alt D>
  2079.       This command deletes the current cursor line from the text. All
  2080.       text below the deleted line is shifted up one line.
  2081.  
  2082.     ■ UndoCursorline  <Ctrl QL>
  2083.       This command allows you to reverse any changes you have made to
  2084.       the cursor line.  This can be helpful if you accidentally delete
  2085.       or change part of a line, or you just change your mind and want
  2086.       the cursor line back the way it was.  This command must be issued
  2087.       before the cursor is moved from the current cursor line and before
  2088.       any file or window commands are entered.  Changes made using the
  2089.       FindReplace command cannot be reversed with this command.
  2090.  
  2091.     ■ UnKill <Ctrl U>
  2092.       This command allows you to retrieve text that has been deleted by
  2093.       the DeleteBlock, DelLine, DelRtWord, or DelToEol commands.  Refer
  2094.       to "The Kill Buffer" section in this chapter for a complete
  2095.       explanation on the use of this command.
  2096.  
  2097.                                   1-28
  2098.  
  2099.  
  2100.  
  2101.     Replacing Text
  2102.     
  2103.     QEdit provides the ability to search for specific strings of
  2104.     characters throughout your text and then replace all, some, or none
  2105.     of them with another string of characters.  (If you want to search
  2106.     for strings of characters without replacing them, use the Find
  2107.     command which is described in the "Moving Through a File" section in
  2108.     this chapter.)
  2109.  
  2110.     ■ FindReplace <Ctrl QA>
  2111.       This command will search for a specific string of characters in
  2112.       the current file, and optionally, replace it with another string
  2113.       of characters.
  2114.  
  2115.       Upon entering the FindReplace command, QEdit will prompt for the
  2116.       string of characters for which to search.
  2117.  
  2118.       ┌─────────────────────────────────────────────────────────────────┐
  2119.       │Search For: <Esc = Abort>                                        │
  2120.       │                                                                 │
  2121.       └─────────────────────────────────────────────────────────────────┘
  2122.  
  2123.       Enter the desired string of characters and press <Enter>.
  2124.  
  2125.       QEdit will then prompt for a new string of characters (to replace
  2126.       the old string).
  2127.  
  2128.       ┌─────────────────────────────────────────────────────────────────┐
  2129.       │Change to: <Esc = Abort>                                         │
  2130.       │                                                                 │
  2131.       └─────────────────────────────────────────────────────────────────┘
  2132.  
  2133.       Enter the new string of characters and press <Enter>.
  2134.  
  2135.       QEdit will then prompt for the search options you wish to use.
  2136.  
  2137.       ┌───────────────────────────────────────────────────────────────┐
  2138.       │Options [IWBN] (Ignore, Words, Backward, No Ask) <Esc = Abort> │
  2139.       │I                                                              │
  2140.       └───────────────────────────────────────────────────────────────┘
  2141.  
  2142.       Enter the letter(s) corresponding to the option(s) you want and
  2143.       press <Enter>.  The available options are:
  2144.  
  2145.         [I] = Ignore the case (capital or lowercase) of the search
  2146.               string.  For example, "Hello" would match "hello" when this
  2147.               option is chosen.  This option is set ON by default.
  2148.  
  2149.         [W] = Search for whole words only.  For example, when this option
  2150.               is chosen, the word "sent" will match only the actual word
  2151.               "sent".  Otherwise, any other words that contain the
  2152.               string (such as "sentence" or "absent") would also match.
  2153.  
  2154.         [B] = Search backward from the current cursor position.  If you
  2155.               choose "B", QEdit will search backward from the cursor
  2156.               position toward the beginning of the file.  Otherwise, it
  2157.               will search from the cursor position toward the end of the
  2158.               file.
  2159.  
  2160.                                   1-29
  2161.  
  2162.  
  2163.         [N] = Find and replace without prompting.  If you choose "N",
  2164.               QEdit will find and replace every occurrence of the search
  2165.               string, without asking you if you want to replace each
  2166.               individual occurrence.
  2167.  
  2168.       If you select the "No Ask" option, QEdit will find and replace
  2169.       every occurrence of the search string with no further User
  2170.       intervention.  If you do not select the "No Ask" option, QEdit will
  2171.       prompt at every occurrence of the search string with:
  2172.  
  2173.       ┌───────────────────────────────────────┐
  2174.       │  Replace (Yes/No/Only/Global/Quit):   │
  2175.       └───────────────────────────────────────┘
  2176.  
  2177.       Valid responses are:
  2178.  
  2179.            <Y>es    - Replace the search string with the new string
  2180.                       and continue to the next occurrence.
  2181.            <N>o     - Do not replace the search string, but continue
  2182.                       to the next occurrence.
  2183.            <O>nly   - Replace the search string with the new string
  2184.                       and quit.
  2185.            <G>lobal - Replace the search string with the new string
  2186.                       and replace all other occurrences with no
  2187.                       further prompts.
  2188.            <Q>uit   - Abort the FindReplace process.
  2189.  
  2190.  
  2191.     ■ RepeatFind <Ctrl L>
  2192.       This command will reissue the previous Find or FindReplace command
  2193.       using the same character strings and options.
  2194.  
  2195.  
  2196.     The Kill Buffer - A Safety Net
  2197.     ─────────────────────────────────────────────────────────────────────────
  2198.  
  2199.     QEdit maintains a temporary storage area for deleted text.  This
  2200.     provides the User a safeguard against incorrectly or inadvertently
  2201.     deleting text.  This recovery mechanism is automatically in effect
  2202.     when QEdit is running.  No action is required from the User until
  2203.     there is a need to recover deleted text.
  2204.  
  2205.     The temporary storage area is called the Kill Buffer.  QEdit will
  2206.     place into the Kill Buffer text which has been deleted by these
  2207.     commands:
  2208.  
  2209.                         DeleteBlock  <Alt G>
  2210.                         DelLine      <Alt D>
  2211.                         DelRtWord    <Ctrl T>
  2212.                         DelToEol     <F6>
  2213.  
  2214.                                   1-30
  2215.  
  2216.  
  2217.     To understand how the Kill Buffer works and how text is recovered
  2218.     from the Kill Buffer, refer to the illustration below.
  2219.  
  2220.  
  2221.                              The Kill Buffer
  2222.  
  2223.            Entry    Command
  2224.            Number   Entered      Buffer Contents             top
  2225.           ┌───────┬────────────┬────────────────────────────────┐
  2226.           │  4    │ DelToEol   │ part of this line was deleted. │
  2227.           ├───────┼────────────┼────────────────────────────────┤
  2228.           │  3    │ DelRtWord  │ (1 word deleted)               │
  2229.           ├───────┼────────────┼────────────────────────────────┤
  2230.           │  2    │ DelLine    │ This entire line was deleted.  │
  2231.           ├───────┼────────────┼────────────────────────────────┤
  2232.           │  1    │ DelLine    │ This entire line was deleted.  │
  2233.           ├───────┼────────────┼────────────────────────────────┤
  2234.           │ empty │            │                                │
  2235.           ├───────┼────────────┼────────────────────────────────┤
  2236.           │ empty │            │                                │
  2237.           └───────┴────────────┴────────────────────────────────┘
  2238.                                                            bottom
  2239.  
  2240.  
  2241.     Each time one of the text deletion commands is used, a new entry is
  2242.     made in the Kill Buffer.  In the above example, four deletion
  2243.     commands have been issued.  The text from these four commands has
  2244.     been stored in the Kill Buffer from top to bottom. In other words,
  2245.     when the DelToEol command was issued (entry #4), the first three
  2246.     entries were pushed toward the bottom of the Kill Buffer and the
  2247.     newly deleted text was entered at the top.
  2248.  
  2249.     In the example, the Kill Buffer has enough room for six entries. When
  2250.     a seventh entry is made, the oldest entry, or entry number one, will
  2251.     be discarded from the Kill Buffer.  Once discarded from the Kill
  2252.     Buffer, that text can no longer be recovered.
  2253.  
  2254.     To recover deleted text, the UnKill <Ctrl U> command is used.  Each
  2255.     time the UnKill command is issued the most recent entry (the
  2256.     "top" entry of the Kill Buffer) is retrieved and restored to the
  2257.     file.  This entry is then deleted from the Kill Buffer, and all
  2258.     remaining entries move toward the top of the buffer by one position.
  2259.     In the example, the first time the UnKill command is issued, entry
  2260.     #4 will be recovered.  Next, entry #3 will be recovered, and so on.
  2261.     Thus, recovering deleted text follows the rule of LIFO (last in -
  2262.     first out).  The last entry of deleted text will be the first one
  2263.     recovered and the first entry of deleted text will be the last one
  2264.     recovered.
  2265.  
  2266.                                   1-31
  2267.  
  2268.  
  2269.     Here are some additional items of which to be aware regarding the
  2270.     Kill Buffer and its uses.
  2271.  
  2272.     ■ A separate Kill Buffer is maintained for each file loaded into
  2273.       QEdit.  The Kill Buffer for each file exists only as long as the
  2274.       file is loaded.
  2275.  
  2276.     ■ The default size of the Kill Buffer is 30 entries.  This may be
  2277.       changed using the QEdit configuration program. Refer to the
  2278.       "General Options" section of Chapter 2 for more information.
  2279.  
  2280.     ■ The text deleted using the DelLine, DelRtWord, and DelToEol
  2281.       commands will take up one entry in the Kill Buffer each time the
  2282.       commands are executed.  The text deleted using the DeleteBlock
  2283.       command will take up as many entries as there are lines in the
  2284.       Block.
  2285.  
  2286.       It is important to note that regardless of how large the Kill
  2287.       Buffer is configured to be, it may be possible to mark and delete
  2288.       a Block in the file which is larger than the buffer.  If this
  2289.       situation arises, QEdit will save the deleted text in the Kill
  2290.       Buffer from the bottom up.  For example, if a marked Block is 200
  2291.       lines long and five lines too large for the Kill Buffer, then the top
  2292.       five lines of the Block will not be loaded into the Kill Buffer.
  2293.  
  2294.     ■ When issuing the UnKill command to recover deleted text, deleted
  2295.       lines will be inserted immediately before the current cursor line,
  2296.       and deleted words will be inserted immediately before the current
  2297.       cursor position.
  2298.  
  2299.  
  2300.     Macros
  2301.     ─────────────────────────────────────────────────────────────────────────
  2302.  
  2303.     A macro is a series of commands and/or keystrokes which are assigned
  2304.     to a single key.  If you find that you are repeatedly entering the
  2305.     same series of commands and keystrokes (for example, a row of
  2306.     asterisks, three Returns, and then a Tab), using macros will allow
  2307.     you to easily assign these to a single key, such as <Shift F6>.
  2308.     Then, the next time you wish to enter a row of asterisks, three
  2309.     Returns, and a Tab, you will only have to press <Shift F6>.
  2310.  
  2311.     Creating, using, and saving macros for later use is both quick and
  2312.     simple.  By taking a few minutes to review the following sections,
  2313.     you should be able to save plenty of time and keystrokes in your
  2314.     future editing with the help of macros.
  2315.  
  2316.                                   1-32
  2317.  
  2318.  
  2319.  
  2320.     Creating Macros
  2321.  
  2322.     Once you have decided to assign a series of commands and keystrokes
  2323.     to a single key, creating the macro is simply a matter of entering
  2324.     this series while QEdit "records" the macro.
  2325.  
  2326.     To create a macro follow these steps:
  2327.  
  2328.     1. Position the text and cursor to where you will begin entering the
  2329.        series of commands and keys.  (You may want to practice your
  2330.        series once or twice before actually recording the macro.)
  2331.  
  2332.     2. Enter the MacroRecord <Ctrl M> command.  An "R" will appear on
  2333.        the Status Line to indicate macro recording is ON.  The following
  2334.        message will appear:
  2335.  
  2336.        ┌────────────────────────────────────────────────────────┐
  2337.        │Assign to what key: (Enter for "scrap", Escape to Abort)│
  2338.        └────────────────────────────────────────────────────────┘
  2339.  
  2340.     3. Enter the key to which you want to assign the series of commands
  2341.        and keystrokes.  There are two requirements here.  The key must be
  2342.        a "configurable" key.  A list of all configurable keys is contained
  2343.        in Appendix B.  Also, the key cannot have a command already
  2344.        assigned to it.
  2345.  
  2346.        You may assign the macro to a "scrap" or temporary area by simply
  2347.        pressing <Enter>.  The scrap area will hold your macro until
  2348.        another macro is recorded.
  2349.  
  2350.     4. Enter the series of commands and keystrokes to be assigned. Note
  2351.        that the "R" still appears on the Status Line.
  2352.  
  2353.     5. Enter the MacroRecord <Ctrl M> command again.  Macro recording is
  2354.        now OFF.  The "R" no longer appears on the the Status Line.  The
  2355.        macro is now created and assigned to the key specified in step 3.
  2356.  
  2357.                                   1-33
  2358.  
  2359.  
  2360.  
  2361.     Using Macros
  2362.  
  2363.     To use your macro, simply position the text and cursor properly and
  2364.     press the key to which you assigned the macro, or use the
  2365.     ExecuteScrap <Ctrl Enter> command to retrieve the latest macro from
  2366.     the scrap area. If the macro does not behave as you expected
  2367.     (perhaps you inadvertently hit an extraneous key while recording),
  2368.     simply repeat the above steps.  Your old macro assignment will be
  2369.     replaced with the new one.
  2370.  
  2371.                                        ┌─────────────────────────────────┐
  2372.                                        │ QEdit Tip:                      │
  2373.                                        │   Be aware of modes, especially │
  2374.                                        │   Insert mode, when recording   │
  2375.                                        │   and using macros.  Macros     │
  2376.                                        │   recorded with Insert mode ON  │
  2377.                                        │   and then used with Insert mode│
  2378.                                        │   OFF (and vice-versa) may      │
  2379.                                        │   behave very strangely.        │
  2380.                                        └─────────────────────────────────┘
  2381.  
  2382.  
  2383.     Saving and Reloading Macros
  2384.  
  2385.     Normally, macros created using this process are lost once the editor
  2386.     is terminated.  QEdit, however, provides an easy method of saving
  2387.     your macros so that they may be reloaded for use in any future
  2388.     editing session.
  2389.  
  2390.     Macros can be saved in a binary disk file.  You specify the name of
  2391.     this file.  Once macros have been created, enter the MacroWrite
  2392.     <Esc><M><W> command.  QEdit will prompt with:
  2393.  
  2394.     ┌─────────────────────────────────────────────────────────────────┐
  2395.     │Macro file to write: <Esc = abort>                               │
  2396.     │                                                                 │
  2397.     └─────────────────────────────────────────────────────────────────┘
  2398.  
  2399.     Enter the name of the file to contain your macros.  The macros will
  2400.     be saved under the given filename.  You may notice that this file
  2401.     now appears in the current DOS directory.  Macros assigned to the
  2402.     scrap area cannot be saved.
  2403.  
  2404.     In a future editing session, if you wish to reuse your previously
  2405.     defined macros, you need only reload the macro file.  To do this
  2406.     enter the MacroRead <Esc><M><R> command.  QEdit will prompt with:
  2407.  
  2408.     ┌─────────────────────────────────────────────────────────────────┐
  2409.     │Macro file to read: <Esc = abort>                                │
  2410.     │                                                                 │
  2411.     └─────────────────────────────────────────────────────────────────┘
  2412.  
  2413.     Enter the name of the previously saved macro file.  Your macros will
  2414.     be reloaded.  You may then use them in the same manner as before.
  2415.  
  2416.     The QEdit configuration program provides an alternate method of
  2417.     creating macros.  Refer to the "Keyboard Configuration" section of
  2418.     Chapter 2 for more information.
  2419.  
  2420.                                   1-34
  2421.  
  2422.  
  2423.  
  2424.     Example of a Macro
  2425.  
  2426.     To create a macro which will insert a formfeed character (ASCII
  2427.     12) at column one of the current cursor line, do the following:
  2428.  
  2429.     1. Position the cursor in the text where you would like to insert
  2430.        the formfeed character.
  2431.  
  2432.     2. Enter MacroRecord <Ctrl M>.
  2433.  
  2434.     3. Press <Alt F1> to assign the macro to this key.
  2435.  
  2436.     4. Press the following series of keys:
  2437.            <Home>     (for the BegLine command)
  2438.            <Ctrl P>   (for the Literal command)
  2439.            <Ctrl L>   (a formfeed character)
  2440.  
  2441.     5. Enter MacroRecord <Ctrl M>.  The macro is now created and
  2442.        assigned to the <Alt F1> key.
  2443.  
  2444.     Now, whenever you enter <Alt F1>, the cursor will be moved to column
  2445.     one and a formfeed character will be inserted, just as if you had
  2446.     typed it in from the keyboard.
  2447.  
  2448.  
  2449.     Printing
  2450.     ─────────────────────────────────────────────────────────────────────────
  2451.  
  2452.     QEdit allows you to print either your entire current file or a
  2453.     portion of the current file.
  2454.  
  2455.     To print the entire current file, simply enter the PrintAll
  2456.     <Alt P><A> command.  The entire current file will be printed.
  2457.  
  2458.     To print a portion of the current file, first mark the portion of
  2459.     the file to be printed using the Block marking commands.  (Refer to
  2460.     the "Block Commands" section in this chapter.)  Next, enter the
  2461.     PrintBlock <Alt P><B> command.  Only the marked Block portion of the
  2462.     file will be printed.
  2463.  
  2464.                                   1-35
  2465.  
  2466.  
  2467.  
  2468.     Print Formatting
  2469.  
  2470.     Two commands are provided for setting the left margin and the page
  2471.     size.  (The left margin and page size may also be specified using
  2472.     the configuration program.  Refer to the "Printer Options" section
  2473.     of Chapter 2 for more information.)
  2474.  
  2475.     ■ SetPrintLeftMargin <Alt P><L>
  2476.       This command specifies the number of blank spaces to be used as a
  2477.       left margin. QEdit will prompt with:
  2478.  
  2479.       ┌──────────────────────────────────────────┐
  2480.       │Printer left margin [0..80]: <Esc = Abort>│
  2481.       │0                                         │
  2482.       └──────────────────────────────────────────┘
  2483.  
  2484.       Enter the left margin length from zero to 80.
  2485.  
  2486.     ■ SetPrintPageSize <Alt P><P>
  2487.       This command specifies the the number of lines to be printed on
  2488.       each page. QEdit will prompt with:
  2489.  
  2490.       ┌─────────────────────────────────────────┐
  2491.       │Printer page size [0..400]: <Esc = Abort>│
  2492.       │0                                        │
  2493.       └─────────────────────────────────────────┘
  2494.  
  2495.       Enter a page size from zero to 400.  A zero will instruct QEdit
  2496.       to print continuously without page breaks.
  2497.  
  2498.  
  2499.     Formfeeds
  2500.  
  2501.     QEdit will automatically send a formfeed character (ASCII 12) to the
  2502.     printer at the end of each page.  A page is determined by the page
  2503.     size as explained in the section above.
  2504.  
  2505.     At times you may find it desirable to insert formfeed characters
  2506.     directly into your text.  For example, you want the page size for
  2507.     your text to be 55 lines, which you have set using the
  2508.     SetPrintPageSize command, but there is a 15-line table in the text
  2509.     that should appear on a page by itself.  To accomplish this, simply
  2510.     insert formfeed characters immediately before and after the table.
  2511.  
  2512.     To insert a formfeed character in the text, enter the Literal
  2513.     <Ctrl P> command followed by a formfeed <Ctrl L> character. If you
  2514.     need to insert formfeed characters into your text repeatedly, you
  2515.     may want to use a macro.  An example of a macro to insert formfeed
  2516.     characters can be found in the "Macros" section in this chapter.
  2517.  
  2518.     It is also possible, from within QEdit, to send a formfeed character
  2519.     to the printer, causing the printer to eject a page.  To do this,
  2520.     simply enter the PrintEject <Alt P><F> command.
  2521.  
  2522.                                   1-36
  2523.  
  2524.  
  2525.  
  2526.     The Shell and Dos commands
  2527.     ─────────────────────────────────────────────────────────────────────────
  2528.  
  2529.     (For the following discussion, "Dos" is a QEdit command, while
  2530.     "DOS" refers to the computer's operating system.)
  2531.  
  2532.     QEdit provides two very helpful commands that allow you to interact
  2533.     with DOS from within the editor.  The commands, Shell and Dos, allow
  2534.     you to perform most functions that you would normally execute from
  2535.     the DOS command line, then return you to your original position in
  2536.     the editor.
  2537.  
  2538.     ■ Shell <F9>
  2539.       This command should be used when executing multiple DOS commands.
  2540.       Upon entering the Shell command, control will be passed to DOS.
  2541.       The DOS prompt will appear on the screen, just as if no other
  2542.       programs were running.  You may now enter most DOS commands.
  2543.       (Some exceptions are noted below.)  Once you have entered all the
  2544.       desired DOS commands, simply type "exit <Enter>" and control
  2545.       will be passed back to QEdit.  You will be positioned in the file
  2546.       exactly where you were when the Shell command was entered.
  2547.  
  2548.     ■ Dos <Alt F9>
  2549.       This command should be used when executing a single DOS command.
  2550.       Upon entering this command, QEdit will prompt with:
  2551.  
  2552.       ┌───────────────────────────────────────────────────────────────┐
  2553.       │Execute what: <Esc = Abort>                                    │
  2554.       │                                                               │
  2555.       └───────────────────────────────────────────────────────────────┘
  2556.  
  2557.       You may now enter almost any DOS command.  (Some exceptions are
  2558.       noted below.)  Once the DOS command has completed, pressing any
  2559.       key will pass control back to QEdit.
  2560.  
  2561.     You should not execute any TSR programs (programs that terminate but
  2562.     remain resident in your computer) from the Shell or Dos commands.
  2563.     For example, the DOS PRINT and GRAPHICS commands are TSR programs.
  2564.  
  2565.     If you mistakenly execute a TSR program from QEdit's Shell or Dos
  2566.     command, the computer's memory allocation scheme will probably
  2567.     become fragmented, and as a result, QEdit's available memory may
  2568.     become severely limited.  You should save your files, terminate
  2569.     QEdit, and then reboot the computer.
  2570.  
  2571.                                   1-37
  2572.  
  2573.  
  2574.  
  2575.     Word Processing Commands
  2576.     ─────────────────────────────────────────────────────────────────────────
  2577.  
  2578.     QEdit has all the features you need to do basic word processing.  In
  2579.     addition to the commands which enable you to view and edit your text
  2580.     (discussed in previous sections), QEdit provides word-wrapping and
  2581.     paragraph reformatting capabilities.
  2582.  
  2583.  
  2584.     ■ The right margin
  2585.       To benefit from the word-wrap and paragraph reformatting features
  2586.       of QEdit, an appropriate right margin must first be set.  The
  2587.       default setting is column 60.  This may be changed using the
  2588.       configuration program.  (Refer to the "General Options" section of
  2589.       Chapter 2 for instructions on how to change the right margin
  2590.       setting.)  This value of the right margin will be used each time
  2591.       the editor is initiated.
  2592.  
  2593.       QEdit provides the ability to change the right margin setting
  2594.       temporarily while the editor is running without affecting the
  2595.       permanent setting.  To change the right margin setting temporarily,
  2596.       enter the SetRmargin <Ctrl OR> command.  QEdit will prompt with:
  2597.  
  2598.       ┌────────────────────────────────────┐
  2599.       │right margin [1..300]: <Esc = abort>│
  2600.       │60                                  │
  2601.       └────────────────────────────────────┘
  2602.  
  2603.       Enter the desired column number for the right margin.  The new
  2604.       setting will be in effect until the SetRmargin command is entered
  2605.       again or the next time the editor is initiated.
  2606.  
  2607.  
  2608.     ■ WordWrap
  2609.       WordWrap is a QEdit mode which can be switched ON and OFF
  2610.       using the ToggleWordwrap <Ctrl OW> command.  When switched ON,
  2611.       this mode will cause the cursor to advance automatically to the
  2612.       next line when text is being entered.
  2613.  
  2614.       The cursor will advance to the next line based on the right
  2615.       margin, which is set using the SetRmargin <Ctrl OR> command.  Once
  2616.       the cursor reaches the right margin and a non-blank character is
  2617.       typed, the cursor, along with the word (i.e., any continuous
  2618.       string of non-blank characters) currently being typed, will be
  2619.       advanced to the next line.
  2620.  
  2621.       The cursor will not advance to the next line if the current line
  2622.       does not contain at least one space.
  2623.  
  2624.                                   1-38
  2625.  
  2626.  
  2627.  
  2628.     ■ Paragraph Reformatting
  2629.       The WrapPara <Alt B> command will reformat text from the current
  2630.       cursor position to the next blank line or the end of the file.
  2631.  
  2632.       The right-hand side of the text will be reformatted based on the
  2633.       right margin.  The right margin is set using the SetRmargin
  2634.       <Ctrl OR> command.
  2635.  
  2636.       The left-hand side of the text will be reformatted based on
  2637.       AutoIndent mode.  If AutoIndent mode is switched OFF, the left
  2638.       margin will be column one.  If AutoIndent mode is switched ON, the
  2639.       first non-blank character on the line immediately AFTER the cursor
  2640.       line will be used for the left margin.  Using the line AFTER the
  2641.       cursor line allows for special indentation for the first line of a
  2642.       paragraph.
  2643.  
  2644.  
  2645.     Modes
  2646.     ─────────────────────────────────────────────────────────────────────────
  2647.  
  2648.     QEdit uses modes to affect the operation of the editor.  In general,
  2649.     a QEdit mode is a state during which certain commands or keystrokes
  2650.     behave differently.  Following is an explanation of all the QEdit
  2651.     modes.
  2652.  
  2653.     ■ Insert mode
  2654.       Insert mode can be switched ON and OFF by pressing the <Ins> key.
  2655.       When Insert mode is ON, an "I" will appear on the Status Line.  The
  2656.       following table describes the commands and keystrokes which are
  2657.       affected by Insert mode.
  2658.  
  2659.  
  2660.       Command/
  2661.       Keystroke       Insert ON                     Insert OFF
  2662.       ────────────    ──────────────────────        ──────────────────────
  2663.       Characters,     Shift text to right           Overwrite existing
  2664.       Space           of cursor, one column         text.
  2665.                       to the right.
  2666.  
  2667.       Backspace       Deletes character/word        Deletes character/word
  2668.                       to left of cursor.            to left of cursor.
  2669.                       Text to right of cursor       Text to right of cursor
  2670.                       shifts left one column.       does not shift.
  2671.  
  2672.       Return          Splits line at cursor         Does not split line.
  2673.                       position.  Cursor moves       Cursor moves to next
  2674.                       to next line.                 line.
  2675.  
  2676.       TabLt,          Tabs cursor and shifts        Tabs cursor only.
  2677.       TabRt           text same number of
  2678.                       positions.
  2679.  
  2680.                                   1-39
  2681.  
  2682.  
  2683.  
  2684.     ■ AutoIndent mode
  2685.       AutoIndent mode is switched ON and OFF using the ToggleIndent
  2686.       <Ctrl QI> command.  This mode, when ON, positions the cursor at
  2687.       the current left margin (This is not the same as the print left
  2688.       margin.) whenever the <Enter> key is pressed.  The current left
  2689.       margin is determined by the first non-blank character on the
  2690.       immediately preceding line.  The following table describes the
  2691.       commands and keystrokes which are affected by AutoIndent mode.
  2692.  
  2693.  
  2694.       Command/
  2695.       Keystroke       AutoIndent ON                 AutoIndent OFF
  2696.       ────────────    ──────────────────────        ──────────────────────
  2697.  
  2698.       Return         Cursor positioned below        Cursor positioned at
  2699.                      first non-blank character      column one.
  2700.                      of previous line.
  2701.  
  2702.       WrapPara       When reformatting, the left    A left margin of zero is
  2703.                      margin is determined from      used when reformatting.
  2704.                      the first non-blank
  2705.                      character on the line
  2706.                      immediately following the
  2707.                      cursor line.
  2708.  
  2709.  
  2710.     ■ C mode
  2711.       This mode is specifically for "C" language programming.  It is
  2712.       switched ON and OFF using the configuration program.  (Refer to
  2713.       the "General Options" section of Chapter 2 for information on
  2714.       switching C mode ON and OFF.)  C mode is only in effect when
  2715.       AutoIndent mode is also ON.
  2716.  
  2717.       C Mode, when switched ON, affects files with a ".h" or ".c" file
  2718.       extension.  When the current cursor line contains a "{" and the
  2719.       <Enter> key is pressed, QEdit issues a normal Return followed by
  2720.       a TabRt command.  Additionally, when a "}" character is entered,
  2721.       QEdit first issues a TabLt command and then enters the "}"
  2722.       character.
  2723.  
  2724.  
  2725.     ■ WordWrap mode
  2726.       WordWrap mode is switched ON and OFF using the ToggleWordwrap
  2727.       <Ctrl OW> command.  When switched ON, this mode will cause the
  2728.       cursor to advance to the next line automatically when text is
  2729.       being entered.
  2730.  
  2731.       The cursor will advance to the next line based on the right
  2732.       margin, which is set using the SetRmargin <Ctrl OR> command. Once
  2733.       the cursor reaches the right margin and a non-blank character is
  2734.       typed, the cursor, along with the word (i.e., any continuous
  2735.       string of non-blank characters) currently being typed, will be
  2736.       advanced to the next line.
  2737.  
  2738.       The cursor will not advance to the next line if the current line
  2739.       does not contain at least one space.
  2740.  
  2741.                                   1-40
  2742.  
  2743.  
  2744.  
  2745.     ■ BackUp mode
  2746.       BackUp mode is switched ON and OFF using the ToggleBakups
  2747.       <Esc><O><B> command.  When BackUp Mode is switched ON, QEdit will
  2748.       create a backup copy (using the .bak file extension) for any file
  2749.       that is edited and saved.  The backup copy of the file is an image
  2750.       of the file before it was last edited and saved.  When BackUp mode
  2751.       is OFF, no backup files will be created.
  2752.  
  2753.  
  2754.     ■ MacroRecord mode
  2755.       MacroRecord mode is switched ON and OFF using the MacroRecord
  2756.       <Ctrl M> command.  This mode, when ON, records and assigns a
  2757.       series of commands and keystrokes to a designated key (or scrap
  2758.       area).  This creates a macro.  For a complete explanation of
  2759.       macros and their use, refer to the "Macros" section in this
  2760.       chapter.
  2761.  
  2762.  
  2763.     ■ EnterMatching mode
  2764.       EnterMatching mode is switched ON and OFF using the
  2765.       ToggleEnterMatching <Esc><O><E> command.  If switched ON, QEdit
  2766.       will automatically insert into the text a corresponding right-hand
  2767.       ")" or "]" each time a left-hand "(" or "[" is entered.
  2768.  
  2769.     ■ Box Drawing mode
  2770.       Box Drawing mode is switched ON and OFF using the ToggleBoxDraw
  2771.       <Shift F1> command.  If switched ON, the cursor movement keys (up,
  2772.       down, right, left) can be used to "draw" lines in the text.  This
  2773.       can be very useful for creating charts and tables.  All of the
  2774.       diagrams found in this manual were created using Box Drawing.
  2775.  
  2776.  
  2777.     ■ Smart Tabs mode
  2778.       Smart Tabs mode is switched ON and OFF using the ToggleSmartTabs
  2779.       <Ctrl QT> command.  If switched ON, the tab right (or left) key
  2780.       will align the cursor with the first character of the next (or
  2781.       previous) word on the line immediately above the current cursor
  2782.       line.
  2783.  
  2784.  
  2785.     ■ Physical Tab Expansion mode
  2786.       Physical Tab Expansion mode is switched ON and OFF using the
  2787.       ToggleTabsExpand <Alt V> command.  If switched ON, physical tab
  2788.       characters (ASCII 9's) found in a file will be expanded into
  2789.       spaces according to the Physical Tab Width set in the
  2790.       configuration program. (Refer to the "Tab Settings" section of
  2791.       Chapter 2 for more information.) If switched OFF, physical tabs
  2792.       will be displayed on the screen.
  2793.  
  2794.  
  2795.     ■ Physical Tab Insertion mode
  2796.       Physical Tab Insertion mode is switched ON and OFF using the
  2797.       ToggleTabsOut <Alt I> command.  If switched ON, continuous spaces
  2798.       in a line of text will be replaced with physical tabs (ASCII 9's)
  2799.       according to the Physical Tab Width set in the configuration
  2800.       program.  (Refer to the "Tab Settings" section of Chapter 2 for
  2801.       more information.)
  2802.  
  2803.                                   1-41
  2804.  
  2805.  
  2806.  
  2807.  
  2808.     Chapter 2. Customizing QEdit
  2809.     =========================================================================
  2810.  
  2811.     QEdit provides a configuration capability which allows the User to
  2812.     customize the editor to suit individual preferences.  There are a
  2813.     wide range of options which may be customized including key
  2814.     assignments, color, tab settings, and printer options.
  2815.  
  2816.     Of course, customizing QEdit is not a requirement.  If you like the
  2817.     editor exactly the way it is, it will not be necessary to use the
  2818.     configuration program.
  2819.  
  2820.     The configuration program is QCONFIG.EXE and is included on the
  2821.     distribution diskette, along with the other QEdit software. The
  2822.     configuration program customizes QEdit by actually modifying the
  2823.     editor program itself - Q.EXE.
  2824.  
  2825.                                        ┌─────────────────────────────────┐
  2826.                                        │ QEdit Tip:                      │
  2827.                                        │   Before running the            │
  2828.                                        │   configuration program, make   │
  2829.                                        │   a backup copy of the original │
  2830.                                        │   QEdit distribution disk.      │
  2831.                                        └─────────────────────────────────┘
  2832.  
  2833.  
  2834.     Initiating the Configuration Program
  2835.     ─────────────────────────────────────────────────────────────────────────
  2836.  
  2837.     To initiate the configuration program, type "qconfig <Enter>" from
  2838.     the DOS command line.  The program will request the name of the
  2839.     editor program to customize with the prompt:
  2840.  
  2841.     ┌────────────────────────────────────────────────────────────────┐
  2842.     │   Enter program name to config, <CR> for Q.EXE :               │
  2843.     └────────────────────────────────────────────────────────────────┘
  2844.  
  2845.     Simply press <Enter>, unless you have previously renamed the
  2846.     editor or if the editor is located in another directory.
  2847.  
  2848.     If you have renamed the editor, enter the appropriate filename and
  2849.     press <Enter>.  If the editor is located in another directory,
  2850.     enter the full pathname and press <Enter>.
  2851.  
  2852.     The program will then request an optional new name for the
  2853.     customized editor with the prompt:
  2854.  
  2855.     ┌────────────────────────────────────────────────────────────────┐
  2856.     │   Enter new name for Q.EXE, <CR> for Q.EXE :                   │
  2857.     └────────────────────────────────────────────────────────────────┘
  2858.  
  2859.     If you wish to name the newly customized program something besides
  2860.     Q.EXE, enter the new filename and press <Enter>.  Otherwise, simply
  2861.     press <Enter>.
  2862.  
  2863.     If the file to be customized could not be located on disk, this
  2864.     error message will be displayed:
  2865.  
  2866.     ┌────────────────────────────────────────────────────────────────┐
  2867.     │FATAL ERROR: Q.EXE not found                                    │
  2868.     └────────────────────────────────────────────────────────────────┘
  2869.  
  2870.                                   2-2
  2871.  
  2872.  
  2873.     Check the editor's filename and/or path for accuracy.
  2874.  
  2875.     If the version numbers of the editor and the configuration program
  2876.     are not the same, this error message will be displayed:
  2877.  
  2878.     ┌────────────────────────────────────────────────────────────────┐
  2879.     │FATAL ERROR: patch area not found                               │
  2880.     └────────────────────────────────────────────────────────────────┘
  2881.  
  2882.     Try reloading the QEdit software from the distribution disk
  2883.     (i.e., Q.EXE and QCONFIG.EXE).
  2884.  
  2885.  
  2886.     The Configuration Menu
  2887.     ─────────────────────────────────────────────────────────────────────────
  2888.  
  2889.     The configuration program will display a menu from which to select
  2890.     the desired functions for customization.
  2891.  
  2892.     ┌────────────────────────────────────────────────────────────────┐
  2893.     │   Configuration choices.                                       │
  2894.     │   Choose One of the Following by pressing the indicated Key:   │
  2895.     │                                                                │
  2896.     │   A)dvanced options                                            │
  2897.     │   C)olors/screen                                               │
  2898.     │   G)eneral options                                             │
  2899.     │   H)elp install                                                │
  2900.     │   K)eys                                                        │
  2901.     │   P)rinter options                                             │
  2902.     │   Q)uit                                                        │
  2903.     │   S)ave changes and quit                                       │
  2904.     │   T)ab settings                                                │
  2905.     └────────────────────────────────────────────────────────────────┘
  2906.  
  2907.     Following is a brief explanation of these menu items.  They will
  2908.     each be discussed in detail in this chapter.
  2909.  
  2910.     A)dvanced options
  2911.         Contains a variety of configurable options, including those
  2912.         related to video display, DOS memory, and editor menus.
  2913.  
  2914.     C)olors/screen
  2915.         Allows you to change colors of various editor displays when
  2916.         using a color monitor.
  2917.  
  2918.     G)eneral options
  2919.         A miscellaneous category of options.
  2920.  
  2921.     H)elp install
  2922.         Allows you to create your own Help Screen.
  2923.  
  2924.                                   2-3
  2925.  
  2926.  
  2927.     K)eys
  2928.         Allows you to reassign editor commands to different keys.
  2929.  
  2930.     P)rinter options
  2931.         Allows you to set options for printing text, such as page size.
  2932.  
  2933.     Q)uit
  2934.         Terminates the program.  You will first be prompted to save or
  2935.         not to save changes.
  2936.  
  2937.     S)ave changes and quit
  2938.         After you have made all of the desired changes, press <S> to
  2939.         save the changes and terminate the program.
  2940.  
  2941.     T)ab settings
  2942.         Allows you to set the physical and cursor tab widths.
  2943.  
  2944.  
  2945.     Choose the category that you wish to customize by pressing the first
  2946.     letter of the corresponding menu item.  You will be prompted for a
  2947.     response to each option within the category.  Each configuration
  2948.     option will be displayed along with its current value.  (The Keys
  2949.     and Help install categories, however, work a little differently in
  2950.     that they request a filename.)
  2951.  
  2952.     For each option displayed, you may enter a new value. If you do not
  2953.     wish to change the current value, simply press <Enter>.  After you
  2954.     have reviewed all options in a category, you will be returned to
  2955.     the main menu where you may select another category.
  2956.  
  2957.     Once you have completed customizing, you may save all the changes
  2958.     you have made by pressing <S> at the main menu prompt.  Your changes
  2959.     will be made permanent (that is, effective the next time you execute
  2960.     the editor), and the configuration program will be terminated.
  2961.  
  2962.     If you decide that you do not want to save your changes, press <Q>.
  2963.     The prompt "Save Changes (Y/N)?" will be displayed.  Simply press <N>.
  2964.     No changes will be saved and the configuration program will be
  2965.     terminated.
  2966.  
  2967.                                   2-4
  2968.  
  2969.  
  2970.  
  2971.     Advanced Options
  2972.     ─────────────────────────────────────────────────────────────────────────
  2973.  
  2974.     This section contains a list of the Advanced Options which can be
  2975.     customized using the configuration program. The configuration
  2976.     program prompt, the default value, and a description are given for
  2977.     each option.
  2978.  
  2979.     ■ Test for presence of EGA or VGA adapters (Y/N)? [Y] :
  2980.         For Concurrent PC-DOS (a Digital Research version of DOS) users
  2981.         only, this option should be set to <N>.
  2982.  
  2983.     ■ Should QEdit change the cursor size (Y/N)? [Y] :
  2984.         By default, QEdit uses a small cursor when Insert mode is OFF
  2985.         and a medium cursor when Insert mode is ON.  Selecting <N> will
  2986.         tell QEdit not to change the cursor size.
  2987.  
  2988.     ■ Fast screen updating with "flicker" OK (CGA's only)(Y/N)? [N] :
  2989.         It may be helpful to review the "snow" checking option in the
  2990.         "Colors/Screen Options" section in this chapter before reading
  2991.         further.
  2992.  
  2993.         If your system has a Color/Graphics Adapter card and you are not
  2994.         happy with the "snow" option set to <Y> (screen updates too
  2995.         slowly) or set to <N> (too much "snow"), try setting this option
  2996.         to <Y>.
  2997.  
  2998.     ■ Number of rows on physical screen [25..100] [25] :
  2999.         If your adapter supports more than a 25-line screen, you can
  3000.         specify that number here.  NOTE that this option is NOT meant
  3001.         for EGA or VGA extended modes.  QEdit handles this
  3002.         automatically.  This option is for other non-standard adapters
  3003.         which allow more than 25 lines on the screen.
  3004.  
  3005.     ■ Do you want the Return command to split lines in insert mode
  3006.       (Y/N)? [Y] :
  3007.         Normally, the Return command splits the current line at the
  3008.         cursor when pressed in Insert mode. This means that the part of
  3009.         the line following the cursor will be inserted on a new line.
  3010.         If Insert mode is OFF, the Return command will simply place the
  3011.         cursor at the beginning of the next line.
  3012.  
  3013.         If you select <N> for this option, the Return command will
  3014.         always act as if Insert mode is OFF.  Return will move the
  3015.         cursor to the beginning of the next line with no effect on the
  3016.         text.
  3017.  
  3018.     ■ Should Cut and Copy use current line if no block marked(Y/N)? [N] :
  3019.         If a block is not marked, and you execute the Cut or Copy
  3020.         command, the current cursor line will be affected if you enter
  3021.         <Y> for this option.
  3022.  
  3023.                                   2-5
  3024.  
  3025.  
  3026.     ■ Amount of memory to reserve from DOS (in paragraphs)
  3027.       [0,8..32767]  [0] :
  3028.         COMMAND.COM normally occupies the high end of DOS memory. If a
  3029.         program uses all available DOS memory, then COMMAND.COM can be
  3030.         overlayed and will have to be reloaded when the application is
  3031.         finished.  This really is not a problem on a hard disk system,
  3032.         as the reload takes a very short time.  On a diskette based
  3033.         system, the delay can be somewhat annoying.  Specifying a value
  3034.         of 1400 should keep COMMAND.COM from having to be reloaded on
  3035.         any DOS version through 3.3.  Please note that this will deny
  3036.         QEdit of an additional 22k of memory.
  3037.  
  3038.     ■ Code generated by ALT numeric keypad  [0] :
  3039.         The <Alt> numeric keypad can be used to enter just about any of
  3040.         the characters in the IBM PC character set.  Characters are
  3041.         entered by holding down the <Alt> key and pressing the decimal
  3042.         number(s) that represents that character.  On IBM PC's this
  3043.         action returns a scan code of 0.  A small number of compatible
  3044.         PC's return a different scan code.  If your PC returns a
  3045.         different scan code for the <Alt> numeric keypad, enter it here.
  3046.  
  3047.     ■ Do you want the ESCAPE command to invoke the menus (Y/N)? [Y] :
  3048.         By default, the Escape command displays the "Pop-Down" menus,
  3049.         when executed outside of the menus or any QEdit prompts.  If you
  3050.         do NOT want the Escape command to do this, select <N> for this
  3051.         option.
  3052.  
  3053.     ■ Do you want to invoke the editor at a specified line number
  3054.       (Y/N)? [N] :
  3055.         If you choose <Y>, QEdit will position the cursor at a specified
  3056.         line number in a file when the file is loaded into the editor.
  3057.         For example, to load "file1" at line number 125, simply type
  3058.         "q file1 125 <Enter>" from the DOS command line or "file1 125"
  3059.         at any QEdit "file to edit" prompt.
  3060.  
  3061.  
  3062.     Colors/Screen Options
  3063.     ─────────────────────────────────────────────────────────────────────────
  3064.  
  3065.     This section contains a list of the Screen and Screen Color Options
  3066.     which can be customized using the configuration program. The
  3067.     configuration program prompt, the default value, and a description
  3068.     are given for each option.
  3069.  
  3070.     ■ Statusline position: "T" for top, "B" for bottom  [T] :
  3071.         The Status Line may be positioned at the top or at the bottom
  3072.         line of the screen.
  3073.  
  3074.     ■ Do you want the display "boxed" (Y/N)? [N] :
  3075.         The editing screen may be completely enclosed in a box.
  3076.  
  3077.                                   2-6
  3078.  
  3079.  
  3080.     ■ Do you want the original screen restored upon termination (Y/N)? [Y] :
  3081.         QEdit can optionally restore the original screen upon exiting
  3082.         the program.  Be aware that selecting this option takes up 4k of
  3083.         memory.  But it is very handy after long uninterrupted editing
  3084.         sessions to see what you were doing before you started.
  3085.  
  3086.     ■ Do you want "snow" checking (Y/N)? [Y] :
  3087.         If QEdit determines that your system has a Color/Graphics
  3088.         Adapter card (CGA), the editor will not write to the screen at
  3089.         full speed in order to avoid "snow" (a sparkling appearance on
  3090.         the screen that results from updating the screen too quickly).
  3091.  
  3092.         If you have a COMPAQ, ZENITH, or other color adapter that allows
  3093.         full speed screen updating without "snow", you should select
  3094.         <N>. Also, if you would rather have fast screen updating in
  3095.         spite of the "snow", select <N>.  For yet another method of
  3096.         handling "snow", refer to the "Fast Screen Updating" option in
  3097.         the "Advanced Options" section in this chapter.
  3098.  
  3099.         This option has no effect on  monochrome and true EGA/VGA cards.
  3100.  
  3101.     ■ Number of columns to scroll horizontally for screen lt/rt
  3102.       commands [1..400] [1] :
  3103.         This is the number of columns that QEdit should scroll when you
  3104.         enter the ScreenLeft or ScreenRight commands.
  3105.  
  3106. ┌────────────────────────────────────────────────────────────────────────────────┐
  3107. │Attribute chart/guide. [0..127]                                                 │
  3108. │                                                                                │
  3109. │[  0][  1][  2][  3][  4][  5][  6][  7][  8][  9][ 10][ 11][ 12][ 13][ 14][ 15]│
  3110. │[ 16][ 17][ 18][ 19][ 20][ 21][ 22][ 23][ 24][ 25][ 26][ 27][ 28][ 29][ 30][ 31]│
  3111. │[ 32][ 33][ 34][ 35][ 36][ 37][ 38][ 39][ 40][ 41][ 42][ 43][ 44][ 45][ 46][ 47]│
  3112. │[ 48][ 49][ 50][ 51][ 52][ 53][ 54][ 55][ 56][ 57][ 58][ 59][ 60][ 61][ 62][ 63]│
  3113. │[ 64][ 65][ 66][ 67][ 68][ 69][ 70][ 71][ 72][ 73][ 74][ 75][ 76][ 77][ 78][ 79]│
  3114. │[ 80][ 81][ 82][ 83][ 84][ 85][ 86][ 87][ 88][ 89][ 90][ 91][ 92][ 93][ 94][ 95]│
  3115. │[ 96][ 97][ 98][ 99][100][101][102][103][104][105][106][107][108][109][110][111]│
  3116. │[112][113][114][115][116][117][118][119][120][121][122][123][124][125][126][127]│
  3117. │                                                                                │
  3118. │Select attributes from the chart above.                                         │
  3119. └────────────────────────────────────────────────────────────────────────────────┘
  3120.  
  3121.  
  3122.     The chart above is for use with the following Screen Color Options.
  3123.     Enter a number, in response to each option, based on the color in
  3124.     which the number appears on the chart.
  3125.  
  3126.                                   2-7
  3127.  
  3128.  
  3129.     If you have a monochrome screen, many of the values in the chart
  3130.     will appear to be the same color.  However, you will still have the
  3131.     options of normal, highlighted, underlined, and reverse video. If you
  3132.     have a color monitor you can take advantage of a wider array of
  3133.     options.
  3134.  
  3135.     ■ Blocked Text [112]:
  3136.         The color used for marked Blocks.
  3137.  
  3138.     ■ Error msgs [112]:
  3139.         The color used for warning and error messages.
  3140.  
  3141.     ■ Text Area [7]:
  3142.         The color used for normal text (the editing screen).
  3143.  
  3144.     ■ Status Line [9]:
  3145.         The color used for the Status Line.
  3146.  
  3147.     ■ Cursor Line [15]:
  3148.         The color used for the cursor line.  Reverts to normal when a
  3149.         block is marked.
  3150.  
  3151.     ■ Messages [15]:
  3152.         The color used for QEdit messages.
  3153.  
  3154.     ■ Hi-lited items [9]:
  3155.         The color used for "found" search strings when using the Find
  3156.         and FindReplace commands.
  3157.  
  3158.     ■ EOF line/indicator [15]:
  3159.         The color used for the "end of file" line.
  3160.  
  3161.     ■ Help screen [112]:
  3162.         The color used for the Help Screen.
  3163.  
  3164.     ■ Box borders [15]:
  3165.         The color used for box borders.
  3166.  
  3167.     ■ PopUp windows [15]:
  3168.         The color used for the background of the "Pop-Down" menus.
  3169.  
  3170.     ■ Menu items [15]:
  3171.         The color used for items within menus.
  3172.  
  3173.     ■ Selected Menu items [112]:
  3174.         The color used for selected items within menus.
  3175.  
  3176.                                   2-8
  3177.  
  3178.  
  3179.  
  3180.     General Options
  3181.     ─────────────────────────────────────────────────────────────────────────
  3182.  
  3183.     This section contains a list of the General Options which can be
  3184.     customized using the configuration program.  The configuration
  3185.     program prompt, the default value, and a description are given for
  3186.     each option.
  3187.  
  3188.     ■ Do you want the DelCh command to join lines if at EOL (Y/N)? [Y] :
  3189.         If you want the DelCh command to be restricted so that it only
  3190.         works on the current line, then select <N> for this option.  If
  3191.         you select <Y>, the command will work across line breaks.  This
  3192.         means that if you issue DelCh at the end of the line, the
  3193.         following line will be joined to the end of the cursor line
  3194.         (just as if you had issued a JoinLine command).
  3195.  
  3196.     ■ Do you want the PQuit, Exit, and File commands to return to
  3197.       "EditFile" prompt (Y/N)? [Y] :
  3198.         If only 1 file is being edited, QEdit can either terminate or
  3199.         ask for another file to edit whenever the PQuit, Exit, or File
  3200.         commands are executed.  Enter <N> to terminate.
  3201.  
  3202.     ■ Do you want the editor to start in Wordwrap Mode (Y/N)? [N] :
  3203.  
  3204.     ■ Default right margin for Wordwrap [1..512] [60] :
  3205.  
  3206.     ■ Do you want the editor to start in Insert Mode (Y/N)? [Y] :
  3207.  
  3208.     ■ Do you want the editor to start in Autoindent Mode (Y/N)? [Y] :
  3209.  
  3210.     ■ Load wildcarded filespecs from the command line (Y/N)? [Y] :
  3211.         When QEdit encounters a wildcarded file specification (* or ?)
  3212.         from the DOS command line, it will do one of two things
  3213.         depending on this option setting.  If you select <Y>, the editor
  3214.         will load every file that matches the wildcarded specification.
  3215.         (For example, if you entered "q *.doc", QEdit would load all
  3216.         files with the extension ".doc"). However, if you select <N>,
  3217.         QEdit will display a "Pop-Down" menu list of all the files which
  3218.         match the wildcarded specification.  You can then choose the file
  3219.         you want to edit by using the cursor keys and pressing <Enter>.
  3220.  
  3221.     ■ Load wildcarded filespecs from inside the editor (Y/N)? [N] :
  3222.         This option is similar to the previous one, except that it
  3223.         refers to the EditFile command rather than the DOS command line
  3224.         used at startup.  If you use a wildcard character with EditFile
  3225.         it will either load all matching files, or show you a list of
  3226.         matching files, depending on your choice for this option.
  3227.         Select <Y> to load all matching files and <N> to display a list of
  3228.         matching files.
  3229.  
  3230.                                   2-9
  3231.  
  3232.  
  3233.     ■ Do you want the editor to start in "enter matching" mode (Y/N)? [N] :
  3234.         When ON, the double quote, parenthesis, and square bracket
  3235.         keys all automatically enter the matching character when the
  3236.         left character is entered.  For example, typing the '[' key
  3237.         automatically enters a ']' immediately following.
  3238.  
  3239.     ■ Use CMODE for .c and .h files (Y/N)? [Y] :
  3240.         C mode is included primarily for editing C Language programs.  C
  3241.         mode is only in effect when AutoIndent mode is also ON.  When C
  3242.         mode is active, <Enter> typed on a line containing a '{' does a
  3243.         normal return and then issues a TabRt command.  Subsequently,
  3244.         when a '}' is typed, a TabLt command is issued.
  3245.  
  3246.     ■ Default number of deleted lines to keep per file [0..300] [30] :
  3247.         QEdit saves a certain number of deleted lines and blocks, which
  3248.         can later be recalled using the UnKill command.  This option
  3249.         allows you to select the maximum number of lines QEdit can save
  3250.         for every edited file.
  3251.  
  3252.     ■ Remove trailing blanks from edited lines (Y/N)? [Y] :
  3253.         When you edit a line of text, QEdit can either remove trailing
  3254.         blanks from that line or leave it as is.  For most purposes,
  3255.         the remove option is preferable, as it will generally create
  3256.         smaller files.
  3257.  
  3258.     ■ Delete white space after words with DelRtWord command (Y/N)? [Y] :
  3259.         If you enter the DelRtWord command, it deletes the "word" to the
  3260.         right of the cursor.  This option causes DelRtWord to
  3261.         delete the blank space which follows the word as well.
  3262.  
  3263.     ■ Terminate files with a Control Z (Y/N)? [N] :
  3264.         MS/PC-DOS versions 2.0 thru 3.3 do NOT require an end of file
  3265.         terminator (the exact size of the file is stored in the
  3266.         directory).  However, some programs that were directly
  3267.         translated from their CP/M versions still require the Control Z
  3268.         end of file marker.  If you have one of these programs for which
  3269.         you are creating text files, you should select <Y> for this
  3270.         option.
  3271.  
  3272.     ■ Do you want "backups" of saved files (Y/N)? [Y] :
  3273.         Select <Y> if you want a backup file (an image of the file
  3274.         before you did any editing) with the .bak extension saved each
  3275.         time you save a file.
  3276.  
  3277.     ■ Prompt for filename on open window (Y/N)? [N] :
  3278.         If you enter the HorizontalWindow command, QEdit can either
  3279.         prompt you for the name of the file you want to load into the
  3280.         new window or load the next file in the ring into the new
  3281.         window (in the latter case, if only one file is being edited
  3282.         another window for the same file is opened).
  3283.  
  3284.         To have QEdit prompt you for a filename, select <Y>.  To have it
  3285.         load the next file in the ring, select <N>.
  3286.  
  3287.                                   2-10
  3288.  
  3289.  
  3290.     ■ Close window when a file is quit (Y/N)? [Y] :
  3291.         If you enter any command which discards a file from the editor
  3292.         whenever more than one window is open, QEdit can either load
  3293.         the next file in the ring into that window or close that
  3294.         window.
  3295.  
  3296.         To have QEdit close the window, select <Y>.  To have it load the
  3297.         next file in the ring, select <N>.
  3298.  
  3299.     ■ Display End Of File marker (Y/N)? [Y] :
  3300.         QEdit can optionally display a line at the end of the file in
  3301.         the following format:
  3302.  
  3303.                    <*** End of File ***>
  3304.  
  3305.     ■ Insert line blocks ABOVE the cursor line (Y/N)? [N] :
  3306.         Line blocks can either be inserted (with the Paste, CopyBlock,
  3307.         or MoveBlock command) above or below the current cursor line.
  3308.  
  3309.     ■ Default Find options [IWB] [I]:
  3310.         Select the default search options when using the Find command.
  3311.         The options are:
  3312.  
  3313.         I - Ignore Case.  The Find command will ignore lower and upper
  3314.             case when searching for a matching string.
  3315.  
  3316.         W - Words Only.  The Find command will search for matching
  3317.             strings which are whole words only.  For example, with the
  3318.             "W" option on, searching for the string "not", QEdit would
  3319.             ignore strings such as "cannot", "notes", etc. and only
  3320.             identify occurrences of the string "not" delimited by
  3321.             spaces.
  3322.  
  3323.         B - Backwards Search.  This option causes the Find command to
  3324.             begin with the current cursor position and search backwards
  3325.             toward the beginning of the file.
  3326.  
  3327.         Note that even when these options are not selected as defaults,
  3328.         they can still be selected from within the editor whenever the
  3329.         Find command is executed.
  3330.  
  3331.     ■ Default FindReplace options [IWBN] [I]:
  3332.  
  3333.         Select the default search and replace options when using the
  3334.         FindReplace command.  The options are:
  3335.  
  3336.         I - Ignore Case.  The FindReplace command will ignore lower and
  3337.             upper case when searching for a matching string.
  3338.  
  3339.                                   2-11
  3340.  
  3341.  
  3342.         W - Words Only.  The FindReplace command will search for
  3343.             matching strings which are whole words only.  For example,
  3344.             with the "W" option on, searching for the string "not",
  3345.             QEdit would ignore strings such as "cannot", "notes", etc.
  3346.             and only identify occurrences of the string "not" delimited
  3347.             by spaces.
  3348.  
  3349.         B - Backwards Search.  This option causes the FindReplace
  3350.             command to begin with the current cursor position and search
  3351.             backwards toward the beginning of the file.
  3352.  
  3353.         N - No Prompting.  The FindReplace command will not prompt when
  3354.             it identifies a matching string; instead, all occurrences of
  3355.             the search string will be replaced with the new string.
  3356.  
  3357.         Note that even when these options are not selected as defaults,
  3358.         they can still be selected from within the editor whenever the
  3359.         FindReplace command is executed.
  3360.  
  3361.     ■ Default file extension number 1 [.pas]:
  3362.  
  3363.     ■ Default file extension number 2 [.inc]:
  3364.  
  3365.     ■ Default file extension number 3 [.asm]:
  3366.  
  3367.     ■ Default file extension number 4 [.c]:
  3368.  
  3369.     ■ Default file extension number 5 [.h]:
  3370.  
  3371.     ■ Default file extension number 6 [.doc]:
  3372.  
  3373.         Six default file extensions are provided to save keystrokes each
  3374.         time a filename to edit is entered.  These file extensions are
  3375.         used whenever QEdit is executed with a filename from the command
  3376.         line or whenever the EditFile command is entered.
  3377.  
  3378.         When using QEdit, if the filename entered does not have a period
  3379.         (and does not include the DOS wildcard characters) and that
  3380.         file does NOT exist as named, QEdit appends the first default
  3381.         file extension to the name and tries to load that file.  If that
  3382.         file exists, then QEdit loads it for editing.  If it does not
  3383.         exist, QEdit will repeat the process with the other default file
  3384.         extensions.  If no files were found, then QEdit will create a
  3385.         new file as originally named.
  3386.  
  3387.                                   2-12
  3388.  
  3389.  
  3390.  
  3391.     The Help Screen
  3392.     ─────────────────────────────────────────────────────────────────────────
  3393.  
  3394.     QEdit allows you to create a customized one page Help Screen, which
  3395.     may be displayed at any time from within the editor by entering the
  3396.     QuickHelp <F1> command.
  3397.  
  3398.     Of course, you may prefer to use the default Help Screen which is
  3399.     already loaded into QEdit.  In that case no action is required.
  3400.     However, if you want to design and use your own Help Screen, simply
  3401.     follow these steps:
  3402.  
  3403.     1. Create an 80 x 25 (80 columns by 25 lines) text file (you can use
  3404.        QEdit to create this file) and list all of the information that
  3405.        should appear on the screen when the QuickHelp command is
  3406.        entered.  We suggest that you list less frequently used commands
  3407.        in this file, while leaving out more familiar commands such as
  3408.        cursor movement and paging.
  3409.  
  3410.     2. Run QCONFIG.EXE and select option <H> from the menu.
  3411.  
  3412.     3. You will be prompted for the name of the Help file just created.
  3413.        Enter that name.
  3414.  
  3415.     That is all there is to it!  The next time you enter QuickHelp from
  3416.     within QEdit, your customized Help Screen will be displayed.
  3417.  
  3418.  
  3419.     Keyboard Configuration
  3420.     ─────────────────────────────────────────────────────────────────────────
  3421.  
  3422.     QEdit provides the extremely helpful capability of assigning editor
  3423.     commands (and strings of characters) to almost any key you prefer.
  3424.  
  3425.     This allows you to assign frequently used commands to keys which are
  3426.     most convenient for your use or you may wish to reassign commands
  3427.     completely to emulate another text editor or word processor with
  3428.     which you are already familiar.
  3429.  
  3430.     By taking a few minutes to review this section, your future text
  3431.     editing may become significantly smoother and more comfortable as a
  3432.     result of customizing your keyboard to suit your individual
  3433.     preferences.
  3434.  
  3435.                                   2-13
  3436.  
  3437.  
  3438.  
  3439.     The Keyboard Definition File
  3440.  
  3441.     QEdit uses the Keyboard Definition file to customize the keyboard.
  3442.     This file contains a list of all the keys to which commands may be
  3443.     assigned.  Supplied with QEdit is a Keyboard Definition file called
  3444.     QCONFIG.DAT which contains the default settings for the keyboard.
  3445.     Other files are supplied which emulate certain common word
  3446.     processors.  WordStar command keys can be emulated using the
  3447.     WSKEY.DAT Keyboard Definition file.  Brief command keys can be
  3448.     emulated using the BRIEF.DAT Keyboard Definition file.
  3449.  
  3450.     The Keyboard Definition file consists of a list of configurable keys
  3451.     and the commands or macros which are assigned to them.  The
  3452.     configurable keys are on the left side of the file with the commands
  3453.     or macros assigned to the keys on the right.  Blank lines and lines
  3454.     starting with an asterisk "*" are ignored. The QCONFIG.DAT file, as
  3455.     well as Appendix B, contains a complete list of configurable keys.
  3456.  
  3457.     Control keys are specified with a "^".  For example:
  3458.  
  3459.         ^f1 or ^F1 specifies Control F1
  3460.         ^c  or ^C  specifies Control C
  3461.         ^PgUp      specifies Control PgUp
  3462.  
  3463.     Alternate keys are specified with a "@".  For example:
  3464.  
  3465.         @f1 or @F1 specifies Alt F1
  3466.         @c  or @C  specifies Alt C
  3467.         @PgUp      specifies Alt PgUp
  3468.  
  3469.     Shift keys are specified with a "#".  For example:
  3470.  
  3471.         #f1 or #F1 specifies Shift F1
  3472.  
  3473.     The format of a line in the Keyboard Definition file is simply the
  3474.     keystroke followed by the command.  For example:
  3475.  
  3476.         f1                      QuickHelp
  3477.         #f5                     MakeCtrofScreen
  3478.         @f2                     InsertLine
  3479.         cursorup                CursorUp
  3480.         ^cursorleft             WordLeft
  3481.         backspace               Backspace
  3482.         ^backspace              DelLtWord
  3483.         @a                      DropAnchor
  3484.         ^a                      WordLeft
  3485.  
  3486.                                   2-14
  3487.  
  3488.  
  3489.                                    ┌─────────────────────────────────┐
  3490.                                    │ QEdit Tip:                      │
  3491.                                    │   The configuration program     │
  3492.                                    │   ignores the case of the       │
  3493.                                    │   command, as well as any       │
  3494.                                    │   underscores that may be       │
  3495.                                    │   embedded.  This means that    │
  3496.                                    │   InsertLine, insert_line, and  │
  3497.                                    │   Insert_Line all refer to the  │
  3498.                                    │   same command.                 │
  3499.                                    │                                 │
  3500.                                    │   Also, the order of the keys   │
  3501.                                    │   does not matter.  The         │
  3502.                                    │   configurable keys may be      │
  3503.                                    │   put in any order desired.     │
  3504.                                    └─────────────────────────────────┘
  3505.  
  3506.     There is also a provision for assigning commands to a "twokey". A
  3507.     twokey consists of two distinct keystrokes, such as <Ctrl B>
  3508.     immediately followed by <A>.  To assign a command to a twokey, enter
  3509.     both keystrokes of the twokey in the first column (keystroke column)
  3510.     separated by an underline.
  3511.  
  3512.     For example, to assign the Exit command to the twokey,
  3513.     <Ctrl F1> <F2>, enter the following into the Keyboard Definition
  3514.     file:
  3515.  
  3516.         ^f1_f2     Exit
  3517.  
  3518.     Through the use of macros, multiple commands and/or text may be
  3519.     assigned to any configurable key (Macros, however, cannot be
  3520.     assigned to twokeys).  To define a macro, specify MacroBegin as the
  3521.     first command, followed by any combination of text and QEdit
  3522.     commands, each separated by a space.  Text should be enclosed in
  3523.     single or double quotes.  The commands and/or text must all fit on
  3524.     one line, not exceeding 255 characters in length.
  3525.  
  3526.     Example:
  3527.  
  3528.         f1  MacroBegin EditFile 'help.dat' Return
  3529.  
  3530.     This macro would load the file 'help.dat'.  Note that the Return
  3531.     command is issued after the text.  This is required to terminate the
  3532.     QEdit prompt.
  3533.  
  3534.     Example:
  3535.  
  3536.         @t  MacroBegin GSave Dos 'tpc ' CurrentFilename Return
  3537.  
  3538.     Now, when you press <Alt T>, all changed files will be saved and the
  3539.     Turbo Pascal compiler will be invoked on the current file.
  3540.  
  3541.     Example (the following must appear on 1 line in the Keyboard
  3542.     Definition file):
  3543.  
  3544.         @f1     MacroBegin EditFile 'errors.lst' Return Quit Dos
  3545.                 'tcc ' CurrentFilename ' >errors.lst' Return Return
  3546.                 HorizontalWindow EditFile 'errors.lst' Return
  3547.  
  3548.                                   2-15
  3549.  
  3550.  
  3551.     This macro will run the Turbo C compiler on the current file, saving
  3552.     the results to a file called "errors.lst", and loading that file
  3553.     into another window after the compile is finished.
  3554.  
  3555.     Additional examples can be found in Appendix D.  In general, any
  3556.     commonly used sequence of commands (or a useful, but complicated
  3557.     sequence of commands for that matter) is a good candidate for a
  3558.     macro.
  3559.  
  3560.  
  3561.     Creating a Keyboard Definition File
  3562.  
  3563.     To customize the keyboard using the default Keyboard Definition
  3564.     file, QCONFIG.DAT, no action is required.  QEdit is distributed with
  3565.     this Keyboard Definition file already loaded.
  3566.  
  3567.     To customize the keyboard using one of the supplied word processor
  3568.     emulation Keyboard Definition files, skip to step number 6 below.
  3569.  
  3570.     To create your own Keyboard Definition file, do the following:
  3571.  
  3572.     1. Load the file QCONFIG.DAT into QEdit (from the DOS command line
  3573.        type "q qconfig.dat <Enter>").
  3574.  
  3575.     2. Rename the file using the ChangeFilename command <Alt O>.
  3576.  
  3577.     3. Browse through the file using the Cursor Up and Down keys. Notice
  3578.        that the left side of the file contains a list of all
  3579.        configurable keys.  To the right of each key is the command or
  3580.        macro currently assigned to the key.  Some keys have no commands
  3581.        assigned.
  3582.  
  3583.     4. Change the commands assigned to the keys to suit your particular
  3584.        needs.  For more information on how to assign keys, refer to The
  3585.        Keyboard Definition file section above.
  3586.  
  3587.     5. Save the file and exit QEdit by pressing <Alt X>.
  3588.  
  3589.     6. Run QCONFIG.EXE and select option <K> from the menu.
  3590.  
  3591.     7. You will be prompted for the name of the Keyboard Definition
  3592.        file.  Enter the name of the Keyboard Definition file you wish to
  3593.        load.  If you are creating your own file, enter the new name
  3594.        chosen in step 2.
  3595.  
  3596.     8. Your key assignments will be incorporated into the editor
  3597.        program, Q.EXE.  The QCONFIG menu will again appear. Press <S> to
  3598.        save your changes and terminate the program.
  3599.  
  3600.     9. Run the editor to insure that your key assignments function as
  3601.        desired.
  3602.  
  3603.                                   2-16
  3604.  
  3605.  
  3606.  
  3607.     Printer Options
  3608.     ─────────────────────────────────────────────────────────────────────────
  3609.  
  3610.     This section contains a list of the Printer Options which can be
  3611.     customized using the configuration program.  The configuration
  3612.     program prompt, the default value, and a description are given for
  3613.     each option.
  3614.  
  3615.     ■ Default left margin for printing [0..80] [0]:
  3616.         This is the number of spaces QEdit skips before printing each
  3617.         line. If you do not want QEdit to skip any spaces at the
  3618.         beginning of each line, select zero.
  3619.  
  3620.     ■ Default page size for printing [0..400] [0]:
  3621.         QEdit will send a formfeed character to the printer after
  3622.         printing this number of lines.  If you do NOT want QEdit
  3623.         to send formfeeds (continuous printing), select zero.
  3624.  
  3625.     ■ Add formfeed after printing (Y/N)? [Y] :
  3626.         Should QEdit send a formfeed when printing is complete?  If you
  3627.         select <Y>, your forms should be correctly lined up in
  3628.         preparation for the next printing operation.
  3629.  
  3630.  
  3631.     Tab Settings
  3632.     ─────────────────────────────────────────────────────────────────────────
  3633.  
  3634.     This section contains a list of all Tab Setting Options which can be
  3635.     customized using the configuration program.  The configuration
  3636.     program prompt, the default value, and a description are given for
  3637.     each option.
  3638.  
  3639.     ■ Default physical tab width [2,4, or 8] [8]:
  3640.         Some word processors and text editors use and embed physical tab
  3641.         characters (ASCII 9's) into text files.  While QEdit does not use
  3642.         physical tab characters, it will handle files created by other
  3643.         editors containing physical tab characters.  When QEdit
  3644.         displays such a file, it expands physical tab characters found
  3645.         in the file and translates them on the screen to spaces. If, for
  3646.         example, you set the physical tab width at 8, and there is a
  3647.         physical tab character in column 12, QEdit would expand the tab
  3648.         character so that spaces from column 12 to column 16 would be
  3649.         displayed on the screen.
  3650.  
  3651.     ■ Default Cursor tab width [2..12] [8]:
  3652.         This is the tab width that QEdit uses when you enter the TabRt
  3653.         and TabLt commands.
  3654.  
  3655.     ■ Default file extension number 1 for default tabs [.pas]:
  3656.       Physical tab width for above [2]:
  3657.       Cursor tab width for above [2]:
  3658.  
  3659.                                   2-17
  3660.  
  3661.  
  3662.     ■ Default file extension number 2 for default tabs [.inc]:
  3663.       Physical tab width for above [2]:
  3664.       Cursor tab width for above [2]:
  3665.  
  3666.     ■ Default file extension number 3 for default tabs [.asm]:
  3667.       Physical tab width for above [8]:
  3668.       Cursor tab width for above [8]:
  3669.  
  3670.     ■ Default file extension number 4 for default tabs [.c]:
  3671.       Physical tab width for above [4]:
  3672.       Cursor tab width for above [4]:
  3673.  
  3674.     ■ Default file extension number 5 for default tabs [.h]:
  3675.       Physical tab width for above [4]:
  3676.       Cursor tab width for above [4]:
  3677.  
  3678.     ■ Default file extension number 6 for default tabs [.doc]:
  3679.       Physical tab width for above [8]:
  3680.       Cursor tab width for above [8]:
  3681.  
  3682.         QEdit allows you to set default physical and cursor tab widths
  3683.         for up to six different file extensions.  When a file is loaded
  3684.         that matches one of these extensions, these defaults are used.
  3685.         Otherwise, the defaults set in the first two Tab Settings are
  3686.         used.
  3687.  
  3688.                                   2-18
  3689.  
  3690.  
  3691.  
  3692.  
  3693.     Chapter 3. QEdit Command Reference
  3694.     =========================================================================
  3695.  
  3696.     This chapter contains a description for each of the QEdit commands.
  3697.     Where appropriate, the default key assignments are provided.
  3698.     Additionally, <Esc> sequences are given for those commands which can
  3699.     be accessed through the "Pop-Down" menus.
  3700.  
  3701.     To assign commands which do not have a default assignment or to
  3702.     change existing key assignments, refer to the "Keyboard
  3703.     Configuration" section of Chapter 2 for instructions.
  3704.  
  3705.  
  3706.     AddLine             <F2> or <Esc><E><A>
  3707.     ─────────────────────────────────────────────────────────────────────────
  3708.  
  3709.     Adds a blank line after the cursor line, placing the cursor on the
  3710.     newly created line.  The cursor column does not change.
  3711.  
  3712.  
  3713.     Align
  3714.     ─────────────────────────────────────────────────────────────────────────
  3715.  
  3716.     Aligns the text on the cursor line with the text on the line
  3717.     immediately before the cursor line and then positions the cursor on
  3718.     the next line.  The cursor column does not change.  If the cursor is
  3719.     on line one, or the previous line is blank, or the cursor line is
  3720.     blank, this command will only move the cursor to the next line.
  3721.  
  3722.  
  3723.     AppendScrbuff       <Ctrl BA>
  3724.     ─────────────────────────────────────────────────────────────────────────
  3725.  
  3726.     Appends the currently marked Block to the end of the named Scratch
  3727.     Buffer.  The existing contents of the named Scratch Buffer are not
  3728.     lost. If the named Scratch Buffer does not exist, a new Scratch
  3729.     Buffer will be created.
  3730.  
  3731.  
  3732.     Backspace           <Backspace>
  3733.     ─────────────────────────────────────────────────────────────────────────
  3734.  
  3735.     If Insert mode is ON:
  3736.      Deletes the character to the left of the cursor.  The text to the
  3737.      right of, and including the cursor position, shifts left one
  3738.      position. If the cursor is in column one, the cursor line is
  3739.      appended to the end of the preceding line.
  3740.  
  3741.     If Insert mode is OFF:
  3742.      Deletes the character to the left of the cursor.  The text to the
  3743.      right of the cursor does NOT close in or shift.  If the cursor is
  3744.      in column one, however, the cursor line will still be appended to
  3745.      the end of the previous line.
  3746.  
  3747.                                   3-2
  3748.  
  3749.  
  3750.  
  3751.     BegFile             <Ctrl PgUp>
  3752.     ─────────────────────────────────────────────────────────────────────────
  3753.  
  3754.     Positions the cursor at column one on the first line of the current
  3755.     file.
  3756.  
  3757.  
  3758.     BegLine             <Home>
  3759.     ─────────────────────────────────────────────────────────────────────────
  3760.  
  3761.     Positions the cursor at column one of the current cursor line.
  3762.  
  3763.  
  3764.     BegScreen           <Ctrl Home>
  3765.     ─────────────────────────────────────────────────────────────────────────
  3766.  
  3767.     Positions the cursor at the top line of the current window.  The
  3768.     cursor column does not change.
  3769.  
  3770.  
  3771.     ChangeFilename      <Alt O> or <Alt F><C> or <Esc><F><C>
  3772.     ─────────────────────────────────────────────────────────────────────────
  3773.  
  3774.     Changes the name of the current file.  QEdit will prompt for the new
  3775.     name.  If the file already exists, you will be required to confirm
  3776.     that you still want to rename the file.  This command will have no
  3777.     effect on disk files, until the renamed file is saved.
  3778.  
  3779.  
  3780.     CloseWindow         <Ctrl OC> or <Esc><W><C>
  3781.     ─────────────────────────────────────────────────────────────────────────
  3782.  
  3783.     Closes the current window, unless it is the only window which is
  3784.     open, in which case the command has no effect.
  3785.  
  3786.  
  3787.     Copy                <grey +>
  3788.     ─────────────────────────────────────────────────────────────────────────
  3789.  
  3790.     Copies the marked Block into the Scrap Buffer.  The Block is then
  3791.     unmarked.  If no Block is marked, the cursor line is copied into the
  3792.     Scrap Buffer.  The copying of the cursor line, when a Block is not
  3793.     marked, is configurable.  Refer to the "Advanced Options" section of
  3794.     Chapter 2 for more information.
  3795.  
  3796.  
  3797.     CopyBlock           <Alt C> or <Esc><B><C>
  3798.     ─────────────────────────────────────────────────────────────────────────
  3799.  
  3800.     Copies the marked Block to the cursor position.  If the Block is a
  3801.     line Block, it is copied either before or after the cursor line,
  3802.     depending on the configuration setting  (Refer to the "General
  3803.     Options" section of Chapter 2 for more information).  If the Block
  3804.     is a character Block, it is inserted immediately before the
  3805.     character on which the cursor is positioned.  The new Block is
  3806.     marked.
  3807.  
  3808.                                   3-3
  3809.  
  3810.  
  3811.  
  3812.     CurrentFilename
  3813.     ─────────────────────────────────────────────────────────────────────────
  3814.  
  3815.     Returns the name of the currently edited file, as if it had been
  3816.     typed at the keyboard.  This command is useful for manipulation of
  3817.     files from within macros.  It may only be used in response to QEdit
  3818.     prompting for a filename.
  3819.  
  3820.  
  3821.     CursorDown          <Cursor Down>
  3822.     ─────────────────────────────────────────────────────────────────────────
  3823.  
  3824.     Moves the cursor downward in the file to the next line.
  3825.  
  3826.  
  3827.     CursorLeft          <Cursor Left>
  3828.     ─────────────────────────────────────────────────────────────────────────
  3829.  
  3830.     Moves the cursor one character to the left.  When the cursor reaches
  3831.     the left edge of the screen, it stops, unless the text has been
  3832.     scrolled left, in which case the text scrolls right one position.
  3833.  
  3834.  
  3835.     CursorRight         <Cursor Right>
  3836.     ─────────────────────────────────────────────────────────────────────────
  3837.  
  3838.     Moves the cursor one character to the right.  When the cursor
  3839.     reaches the right end of the screen, the text starts scrolling left
  3840.     until the cursor reaches the maximum line length.
  3841.  
  3842.  
  3843.     CursorUp            <Cursor Up>
  3844.     ─────────────────────────────────────────────────────────────────────────
  3845.  
  3846.     Moves the cursor upward in the file to the previous line.
  3847.  
  3848.  
  3849.     Cut                 <grey ->
  3850.     ─────────────────────────────────────────────────────────────────────────
  3851.  
  3852.     Copies the marked Block into the Scrap Buffer.  The Block is then
  3853.     deleted from the file being edited.  If no Block is marked, the
  3854.     cursor line is cut into the Scrap Buffer.  The cutting of the cursor
  3855.     line, when a Block is not marked, is configurable.  Refer to the
  3856.     "Advanced Options" section of Chapter 2 for more information.
  3857.  
  3858.                                   3-4
  3859.  
  3860.  
  3861.  
  3862.     DelCh               <Del>
  3863.     ─────────────────────────────────────────────────────────────────────────
  3864.  
  3865.     Deletes the character at the current cursor position.  The line to
  3866.     the right of the cursor shifts left one position.  If the cursor
  3867.     position is past the last character on the line, the next line is
  3868.     appended to the cursor line.  The "joining" of the next line when
  3869.     the cursor is past the last character on the line is configurable.
  3870.     Refer to the "General Options" section of Chapter 2 for more
  3871.     information.
  3872.  
  3873.  
  3874.     DeleteBlock         <Alt G> or <Esc><B><D>
  3875.     ─────────────────────────────────────────────────────────────────────────
  3876.  
  3877.     Deletes the currently marked Block.  If there is not a Block marked
  3878.     in the current file, this command has no effect.
  3879.  
  3880.  
  3881.     DelLine             <Alt D> or <Esc><E><D>
  3882.     ─────────────────────────────────────────────────────────────────────────
  3883.  
  3884.     Deletes the cursor line.  The line following the cursor line becomes
  3885.     the new cursor line.
  3886.  
  3887.  
  3888.     DelLtWord           <Ctrl Backspace>
  3889.     ─────────────────────────────────────────────────────────────────────────
  3890.  
  3891.     Deletes the "word" to the left of the cursor.  If the cursor is in
  3892.     column one, the cursor line is appended to the end of the preceding
  3893.     line.
  3894.  
  3895.  
  3896.     DelRtWord           <Ctrl T>
  3897.     ─────────────────────────────────────────────────────────────────────────
  3898.  
  3899.     Deletes the "word" to the right of the cursor.  If the cursor
  3900.     position is past the last character on the line, the next line is
  3901.     appended to the cursor line.
  3902.  
  3903.  
  3904.     DelToEol            <F6> or <Esc><E><E>
  3905.     ─────────────────────────────────────────────────────────────────────────
  3906.  
  3907.     Deletes text on the cursor line, from the cursor position to the end
  3908.     of line.
  3909.  
  3910.  
  3911.     Dos                 <Alt F9>
  3912.     ─────────────────────────────────────────────────────────────────────────
  3913.  
  3914.     QEdit prompts for a command, which is passed to DOS for execution.
  3915.     After the command is executed by DOS, control is returned to QEdit.
  3916.     If you want to execute a series of commands in DOS, you should use
  3917.     the Shell command, described later in this chapter.
  3918.  
  3919.                                   3-6
  3920.  
  3921.  
  3922.                                        ┌─────────────────────────────────┐
  3923.                                        │ QEdit Tip:                      │
  3924.                                        │   You should NOT execute any    │
  3925.                                        │   TSR (terminate and stay       │
  3926.                                        │   resident) commands here.      │
  3927.                                        │   These include the DOS print   │
  3928.                                        │   and graph commands and        │
  3929.                                        │   memory-resident programs      │
  3930.                                        │   such as Sidekick and Superkey.│
  3931.                                        └─────────────────────────────────┘
  3932.  
  3933.  
  3934.     DropAnchor          <Alt A>
  3935.     ─────────────────────────────────────────────────────────────────────────
  3936.  
  3937.     This command is used to mark a character Block.  Initially executing
  3938.     this command will mark one end of a Block at the cursor position.
  3939.     As the cursor is moved, the Block will "grow" with it.  Executing
  3940.     this command again will mark the other end of the Block at the
  3941.     cursor position.  If DropAnchor is executed in a file that already
  3942.     contains a character Block, the Block is extended to the current
  3943.     cursor position.
  3944.  
  3945.  
  3946.     DupLine             <F4>
  3947.     ─────────────────────────────────────────────────────────────────────────
  3948.  
  3949.     Makes a copy of the current cursor line and inserts the copy
  3950.     immediately following the cursor line.  The cursor is moved to the
  3951.     new line.
  3952.  
  3953.  
  3954.     EditFile            <Alt E> or <Alt F><L> or <Esc><F><L>
  3955.     ─────────────────────────────────────────────────────────────────────────
  3956.  
  3957.     The editor prompts for the name(s) of the additional file(s) to be
  3958.     edited.  Wildcard characters (* or ?) are permissible, as are
  3959.     multiple filenames.  The editor will not load multiple copies of the
  3960.     same file.  If you issue the EditFile command using the name of a
  3961.     file that has already been loaded, QEdit will simply make that file
  3962.     the current file.
  3963.  
  3964.  
  3965.     EndFile             <Ctrl PgDn>
  3966.     ─────────────────────────────────────────────────────────────────────────
  3967.  
  3968.     Positions the cursor on the last line of the file immediately
  3969.     following the last non-blank character.  If the last line of the
  3970.     file is blank, the cursor is positioned in column one.
  3971.  
  3972.  
  3973.     EndLine             <End>
  3974.     ─────────────────────────────────────────────────────────────────────────
  3975.  
  3976.     Positions the cursor immediately following the last non-blank
  3977.     character on the cursor line.
  3978.  
  3979.  
  3980.     EndScreen           <Ctrl End>
  3981.     ─────────────────────────────────────────────────────────────────────────
  3982.  
  3983.     The cursor is positioned on the last line of the current window.  The
  3984.     cursor column does not change.
  3985.  
  3986.  
  3987.     Escape              <Esc>
  3988.     ─────────────────────────────────────────────────────────────────────────
  3989.  
  3990.     If executed while editing, the "Pop-Down" menus are displayed.
  3991.     Otherwise, this command aborts any editor prompt.
  3992.  
  3993.  
  3994.     ExecuteScrap        <Ctrl Enter>
  3995.     ─────────────────────────────────────────────────────────────────────────
  3996.  
  3997.     Plays back the latest macro that was created using the MacroRecord
  3998.     command.
  3999.  
  4000.  
  4001.     Exit                <Ctrl KD>
  4002.     ─────────────────────────────────────────────────────────────────────────
  4003.  
  4004.     Conditionally discards the current file.  If the file has not been
  4005.     modified, the file is discarded without prompting.  If the file has
  4006.     been modified, the editor prompts with "Save Changes (Y/N)?".
  4007.     Pressing <Y> will save and then discard the file.  Pressing <N> will
  4008.     discard the file without saving any changes.
  4009.  
  4010.     QEdit can be configured, when only a single file is being edited and
  4011.     the Exit command is issued, to either terminate or prompt for
  4012.     another file to edit.  Refer to the "General Options" section of
  4013.     Chapter 2 for more information.
  4014.  
  4015.  
  4016.     File                <Ctrl KX> or <Alt F><F> or <Esc><F><F>
  4017.     ─────────────────────────────────────────────────────────────────────────
  4018.  
  4019.     Saves and then discards the current file.
  4020.  
  4021.     QEdit can be configured, when only a single file is being edited and
  4022.     the File command is issued, to either terminate or prompt for
  4023.     another file to edit.  Refer to the "General Options" section of
  4024.     Chapter 2 for more information.
  4025.  
  4026.                                   3-7
  4027.  
  4028.  
  4029.  
  4030.     Find                <Ctrl QF> or <Esc><S><F>
  4031.     ─────────────────────────────────────────────────────────────────────────
  4032.  
  4033.     Searches for a specified string of characters within the current
  4034.     file. The User is prompted for a search string and search options.
  4035.     Available search options are:
  4036.  
  4037.           [I] Ignore the case of the search string.
  4038.           [W] Search for whole words only.
  4039.           [B] Search backwards from the current cursor position.
  4040.  
  4041.  
  4042.     FindReplace         <Ctrl QA> or <Esc><S><R>
  4043.     ─────────────────────────────────────────────────────────────────────────
  4044.  
  4045.     Searches and replaces strings within the current file.  The User is
  4046.     prompted for a search string, a replace string, and options.
  4047.     Available options are:
  4048.  
  4049.           [I] Ignore the case of the search string.
  4050.           [W] Search for whole words only.
  4051.           [B] Search backwards from the current cursor position.
  4052.           [N] Find and replace without prompting.
  4053.  
  4054.     At every occurrence of the search string in the file, the User is
  4055.     given the following replace options.
  4056.  
  4057.           [Y] Replace the search string with the replace string and
  4058.               continue on to the next occurrence of the search string.
  4059.           [N] Do not make any changes but continue on to the next
  4060.               occurrence of the search string.
  4061.           [O] Replace the search string with the replace string and
  4062.               then terminate the FindReplace process.
  4063.           [G] Replace the search string with the replace string for
  4064.               this and all occurrences throughout the file without
  4065.               any further prompting.
  4066.           [Q] Terminate the FindReplace process.
  4067.  
  4068.  
  4069.     GetPrev             <Ctrl - (dash)>
  4070.     ─────────────────────────────────────────────────────────────────────────
  4071.  
  4072.     Duplicates the character immediately above the cursor at the cursor
  4073.     position.
  4074.  
  4075.  
  4076.     GetScrbuff          <Ctrl BL>
  4077.     ─────────────────────────────────────────────────────────────────────────
  4078.  
  4079.     Inserts the contents of the named Scratch Buffer at the cursor
  4080.     position. Refer to the "Block Commands" section of Chapter 1 for
  4081.     more information.
  4082.  
  4083.                                   3-8
  4084.  
  4085.  
  4086.  
  4087.     GExit               <Alt X> or <Alt Q><X> or <Esc><Q><X>
  4088.     ─────────────────────────────────────────────────────────────────────────
  4089.  
  4090.     Issues the Exit command for all files that have been loaded.  If no
  4091.     files have been changed, this command immediately terminates the
  4092.     editor and returns control to DOS.  If files have been changed, it
  4093.     will prompt you with "Save Changes (Y/N)?".  Pressing <Y> will save
  4094.     and then discard all files that have been modified.  Pressing <N>
  4095.     will discard all the files without saving any changes.
  4096.  
  4097.  
  4098.     GFile               <Alt F><G> or <Esc><F><G>
  4099.     ─────────────────────────────────────────────────────────────────────────
  4100.  
  4101.     Instructs the editor to discard all files which have been loaded.
  4102.     Any files which have been modified will be saved.
  4103.  
  4104.     If no files have been changed, this command immediately terminates
  4105.     the editor and returns control to DOS.
  4106.  
  4107.  
  4108.     GotoBlockBeg        <Ctrl QB>
  4109.     ─────────────────────────────────────────────────────────────────────────
  4110.  
  4111.     Positions the cursor at the beginning of the currently marked Block.
  4112.     If the Block is in a file other than the current file, the file
  4113.     containing the Block becomes the new current file.
  4114.  
  4115.  
  4116.     GotoBlockEnd        <Ctrl QK>
  4117.     ─────────────────────────────────────────────────────────────────────────
  4118.  
  4119.     Positions the cursor at the end of the currently marked Block. If
  4120.     the Block is in a file other than the current file, the file
  4121.     containing the Block becomes the new current file.
  4122.  
  4123.  
  4124.     GotoLine            <Ctrl J>
  4125.     ─────────────────────────────────────────────────────────────────────────
  4126.  
  4127.     Positions the cursor at the requested line.  The editor will prompt
  4128.     for the desired line number.
  4129.  
  4130.  
  4131.     GPQuit              <F3> or <Alt Q><Q> or <Esc><Q><Q>
  4132.     ─────────────────────────────────────────────────────────────────────────
  4133.  
  4134.     Issues the PQuit command for all files that have been loaded.
  4135.  
  4136.                                   3-9
  4137.  
  4138.  
  4139.  
  4140.     GrowWindow          <Ctrl OG> or <Esc><W><G>
  4141.     ─────────────────────────────────────────────────────────────────────────
  4142.  
  4143.     Increases the size of the current window if there are multiple
  4144.     windows on the screen.  The editor will prompt for the direction in
  4145.     which to increase the size.  The ShrinkWindow command can be
  4146.     executed from this prompt to decrease the window size.
  4147.  
  4148.  
  4149.     GSave               <Alt Y>
  4150.     ─────────────────────────────────────────────────────────────────────────
  4151.  
  4152.     Issues the SaveFile command for all files that have been modified.
  4153.  
  4154.  
  4155.     HalfPgDn
  4156.     ─────────────────────────────────────────────────────────────────────────
  4157.  
  4158.     Scrolls the text toward the end of the file one-half page.
  4159.  
  4160.  
  4161.     HalfPgUp
  4162.     ─────────────────────────────────────────────────────────────────────────
  4163.  
  4164.     Scrolls the text toward the beginning of the file one-half page.
  4165.  
  4166.  
  4167.     HorizontalWindow    <Ctrl OH> or <Esc><W><S>
  4168.     ─────────────────────────────────────────────────────────────────────────
  4169.  
  4170.     Splits the screen or current window horizontally, creating a new
  4171.     window.  Up to eight windows may be displayed on the screen at one
  4172.     time.
  4173.  
  4174.  
  4175.     InsertDate
  4176.     ─────────────────────────────────────────────────────────────────────────
  4177.  
  4178.     Inserts the system date at the current cursor position.
  4179.     
  4180.  
  4181.     InsertLine          <Alt F2> or <Esc><E><I>
  4182.     ─────────────────────────────────────────────────────────────────────────
  4183.  
  4184.     Inserts a blank line above the cursor line and positions the cursor
  4185.     on the newly created line.  The cursor column does not change.
  4186.  
  4187.  
  4188.     InsertTime
  4189.     ─────────────────────────────────────────────────────────────────────────
  4190.  
  4191.     Inserts the system time at the current cursor position.
  4192.  
  4193.                                   3-10
  4194.  
  4195.  
  4196.  
  4197.     JoinLine            <Alt J> or <Esc><E><J>
  4198.     ─────────────────────────────────────────────────────────────────────────
  4199.  
  4200.     Joins the line below the cursor line to the end of the cursor line.
  4201.     If the cursor is past the end of the line, then the line is joined
  4202.     at the cursor position.
  4203.  
  4204.  
  4205.     KillFile            <Ctrl KZ>
  4206.     ─────────────────────────────────────────────────────────────────────────
  4207.  
  4208.     Erases the currently edited file from disk.  The file remains loaded
  4209.     in the editor.  This command is very useful when available disk
  4210.     space is low.
  4211.  
  4212.  
  4213.     LineDown            <Ctrl X>
  4214.     ─────────────────────────────────────────────────────────────────────────
  4215.  
  4216.     Scrolls the text one line at a time toward the end of the file.  The
  4217.     cursor remains stationary on the screen.
  4218.  
  4219.  
  4220.     LineUp              <Ctrl E>
  4221.     ─────────────────────────────────────────────────────────────────────────
  4222.  
  4223.     Scrolls the text one line at a time toward the beginning of the
  4224.     file.  The cursor remains stationary on the screen.
  4225.  
  4226.  
  4227.     Literal             <Ctrl P>
  4228.     ─────────────────────────────────────────────────────────────────────────
  4229.  
  4230.     Causes the editor to literally interpret the keystroke that is
  4231.     entered immediately following this command.  It is used to insert
  4232.     control characters into the currently edited file.  For example, to
  4233.     insert the ASCII form-feed character (ASCII 12), you would first
  4234.     press <Ctrl P> then <Ctrl L>.  To insert a "null" character into the
  4235.     file, press <Ctrl P> and then <Ctrl 2>.  (Note: The "2" must be the
  4236.     "2" key on the alphanumeric keyboard, NOT the key on the numeric
  4237.     keypad.)
  4238.  
  4239.  
  4240.     MacroRead           <Esc> <M><R>
  4241.     ─────────────────────────────────────────────────────────────────────────
  4242.  
  4243.     Loads the named macro file, with all macros contained therein, from
  4244.     disk into the editor's internal macro buffer.  The macros are
  4245.     assigned to the keys exactly as they were originally recorded and
  4246.     saved.  The editor prompts the User for the name of the file.
  4247.  
  4248.                                   3-11
  4249.  
  4250.  
  4251.  
  4252.     MacroRecord         <Ctrl M> or <Esc><M><M>
  4253.     ─────────────────────────────────────────────────────────────────────────
  4254.  
  4255.     Toggles (ON and OFF) macro recording.  If macro recording is OFF,
  4256.     this will turn macro recording ON and prompt for a key to which to
  4257.     assign the macro.  After pressing the desired key (see Appendix B
  4258.     for a list of available keys), all following keystrokes are recorded
  4259.     until the MacroRecord key is pressed again.  After the macro has been
  4260.     recorded, it can be played back by pressing the key to which the
  4261.     macro was assigned.
  4262.  
  4263.     Instead of assigning a macro to a specific key, it can be assigned
  4264.     to a "scrap" or temporary area by simple pressing <Enter> at the
  4265.     prompt.  A macro assigned to the scrap area may be played back by
  4266.     entering the ExecuteScrap <Ctrl Enter> command.  The scrap area
  4267.     will be updated each time the MacroRecord command is executed.
  4268.  
  4269.  
  4270.  
  4271.     MacroWrite          <Esc> <M><W>
  4272.     ─────────────────────────────────────────────────────────────────────────
  4273.  
  4274.     Saves all currently defined macros to a binary disk file.  The
  4275.     editor prompts for the name of the file.
  4276.  
  4277.  
  4278.     MainMenu            <Esc>
  4279.     ─────────────────────────────────────────────────────────────────────────
  4280.  
  4281.     Activates the "Pop-Down" style menu system.  Many of the editor's
  4282.     commands can be executed via the menus.
  4283.  
  4284.  
  4285.     MakeBotofScreen
  4286.     ─────────────────────────────────────────────────────────────────────────
  4287.  
  4288.     Scrolls the text in the window so that the cursor line becomes the
  4289.     bottom line of the window.
  4290.  
  4291.  
  4292.     MakeCtrofScreen     <Shift F5>
  4293.     ─────────────────────────────────────────────────────────────────────────
  4294.  
  4295.     Scrolls the text in the window so that the cursor line becomes the
  4296.     center line of the window.
  4297.  
  4298.  
  4299.     MakeTopofScreen     <F5>
  4300.     ─────────────────────────────────────────────────────────────────────────
  4301.  
  4302.     Scrolls the text in the window so that the cursor line becomes the
  4303.     top line of the window.
  4304.  
  4305.                                   3-12
  4306.  
  4307.  
  4308.  
  4309.     MarkBlockBegin      <Ctrl KB> or <Esc><B><B>
  4310.     ─────────────────────────────────────────────────────────────────────────
  4311.  
  4312.     Marks the beginning of a character Block.  The Block is not shown
  4313.     until the MarkBlockEnd command is executed at some position beyond
  4314.     the beginning position of the Block.  For an alternate method of
  4315.     marking character Blocks, refer to the DropAnchor command.
  4316.  
  4317.  
  4318.     MarkBlockEnd        <Ctrl KK> or <Esc><B><E>
  4319.     ─────────────────────────────────────────────────────────────────────────
  4320.  
  4321.     Marks the end of a character Block.  The Block is not shown until
  4322.     the MarkBlockBegin command is also executed at some position before
  4323.     the end of the Block.  For an alternate method of marking character
  4324.     Blocks, refer to the DropAnchor command.
  4325.  
  4326.  
  4327.     MarkLine            <Alt L> or <Esc><B><L>
  4328.     ─────────────────────────────────────────────────────────────────────────
  4329.  
  4330.     This command is used to mark a line Block.  Initially executing this
  4331.     command will mark the current cursor line.  As the cursor is moved,
  4332.     the Block will "grow" with it line by line.  Executing this command
  4333.     again will mark the other end of the Block at the current cursor
  4334.     line.  If MarkLine is executed in a file that already contains a
  4335.     Block, the Block is extended to the current cursor line.
  4336.  
  4337.  
  4338.     Match               <Alt F3>
  4339.     ─────────────────────────────────────────────────────────────────────────
  4340.  
  4341.     Will find the corresponding "(", ")", "{", "}", "[", "]" character.
  4342.     This command is primarily intended for programming languages in
  4343.     which complicated expressions are grouped with one or more of these
  4344.     characters.  This command is very useful for finding unmatched
  4345.     parentheses.
  4346.  
  4347.  
  4348.     MoveBlock           <Alt M> or <Esc><B><M>
  4349.     ─────────────────────────────────────────────────────────────────────────
  4350.  
  4351.     Moves (copies and deletes) the currently marked Block to the cursor
  4352.     position.  If the Block is a character Block (created using the
  4353.     DropAnchor or MarkBlockBegin/End commands), the Block is inserted
  4354.     into the text beginning at the current cursor position.  If the Block
  4355.     is a line Block (created using the MarkLine command), it is inserted
  4356.     before or after the current cursor line, depending on the
  4357.     configuration setting  (Refer to the "General Options" section of
  4358.     Chapter 2 for more information).  The Block remains marked. Blocks
  4359.     may be moved from one file to another.
  4360.  
  4361.                                   3-13
  4362.  
  4363.  
  4364.  
  4365.     NextFile            <Alt N> or <Alt F><N> or <Esc><F><N>
  4366.     ─────────────────────────────────────────────────────────────────────────
  4367.  
  4368.     Makes the next file in the ring the new current file when multiple
  4369.     files are loaded.
  4370.  
  4371.  
  4372.     NextWindow          <Ctrl ON> or <Esc><W><N>
  4373.     ─────────────────────────────────────────────────────────────────────────
  4374.  
  4375.     Makes the window below the current window the new current window.  If
  4376.     the current window is at the bottom of the screen, the top window on
  4377.     the screen will become the current window.
  4378.  
  4379.  
  4380.     OneWindow           <Ctrl OO> or <Esc><W><O>
  4381.     ─────────────────────────────────────────────────────────────────────────
  4382.  
  4383.     Closes all windows except the current window and expands it to
  4384.     occupy the entire screen.
  4385.  
  4386.  
  4387.     PageDown            <PgDn>
  4388.     ─────────────────────────────────────────────────────────────────────────
  4389.  
  4390.     Scrolls the text toward the end of the file, one page-full less one
  4391.     line, at a time.
  4392.  
  4393.  
  4394.     PageUp              <PgUp>
  4395.     ─────────────────────────────────────────────────────────────────────────
  4396.  
  4397.     Scrolls the text toward the top of the file, one page-full less one
  4398.     line, at a time.
  4399.  
  4400.  
  4401.  
  4402.     Paste               <grey *>
  4403.     ─────────────────────────────────────────────────────────────────────────
  4404.  
  4405.     Inserts the contents of the Scrap Buffer at the cursor position.
  4406.     The Scrap Buffer is loaded using the Cut or Copy commands.  If the
  4407.     Scrap Buffer contains a character Block, it is inserted at the
  4408.     cursor position. If the Scrap Buffer contains a line Block, it is
  4409.     inserted before or after the cursor line depending on the
  4410.     configuration setting.  Refer to the "General Options" section of
  4411.     Chapter 2 for more information.
  4412.  
  4413.                                   3-14
  4414.  
  4415.  
  4416.  
  4417.     PQuit               <Ctrl KQ> or <Alt F><Q> or <Esc><F><Q>
  4418.     ─────────────────────────────────────────────────────────────────────────
  4419.  
  4420.     This command initiates a protected quit.  If the current file has
  4421.     not been modified, it is discarded.  If the current file has been
  4422.     modified, the User is warned that changes will be lost.  If multiple
  4423.     files are being edited, this command will make the previous file in
  4424.     the ring the new current file.
  4425.  
  4426.     QEdit can be configured, when only a single file is being edited and
  4427.     the PQuit command is issued, to either terminate or prompt for
  4428.     another file to edit.  Refer to the "General Options" section of
  4429.     Chapter 2 for more information.
  4430.  
  4431.  
  4432.     PrevFile            <Ctrl KP> or <Alt F><P> or <Esc><F><P>
  4433.     ─────────────────────────────────────────────────────────────────────────
  4434.  
  4435.     Makes the previous file in the ring the new current file when
  4436.     multiple files are loaded.
  4437.  
  4438.  
  4439.     PrevPosition        <Ctrl QP>
  4440.     ─────────────────────────────────────────────────────────────────────────
  4441.  
  4442.     Positions the cursor at the previous cursor position.  Very helpful
  4443.     when used with the GotoLine command.  The GotoLine line can be used
  4444.     to go directly to a certain area of the file.  The PrevPosition can
  4445.     then be used to return you to the original cursor position.
  4446.  
  4447.  
  4448.     PrevWindow          <Ctrl OP> or <Esc><W><P>
  4449.     ─────────────────────────────────────────────────────────────────────────
  4450.  
  4451.     Makes the window above the current window the new current window. If
  4452.     the current window is at the top of the screen, the bottom window on
  4453.     the screen will become the current window.
  4454.  
  4455.  
  4456.     PrintAll            <Alt P><A> or <Esc><P><A>
  4457.     ─────────────────────────────────────────────────────────────────────────
  4458.  
  4459.     Prints the entire contents of the current file.
  4460.  
  4461.  
  4462.     PrintBlock          <Alt P><B> or <Esc><P><B>
  4463.     ─────────────────────────────────────────────────────────────────────────
  4464.  
  4465.     Prints the entire contents of the marked Block.  The marked Block
  4466.     must be in the current file.
  4467.  
  4468.                                   3-15
  4469.  
  4470.  
  4471.  
  4472.     PrintEject          <Alt P><F> or <Esc><P><F>
  4473.     ─────────────────────────────────────────────────────────────────────────
  4474.  
  4475.     Sends a formfeed character (ASCII 12) to the printer.
  4476.  
  4477.  
  4478.     QuickHelp           <F1> or <Alt H>
  4479.     ─────────────────────────────────────────────────────────────────────────
  4480.  
  4481.     Displays the Help Screen.  A Help Screen is provided with QEdit;
  4482.     however, you may wish to design your own Help Screen.  For more
  4483.     information, refer to the "The Help Screen" section of Chapter 2.
  4484.  
  4485.  
  4486.     Quit
  4487.     ─────────────────────────────────────────────────────────────────────────
  4488.  
  4489.     Unconditional quit.  The current file is discarded regardless of any
  4490.     changes made to it.  This command is for those who do not like
  4491.     software that "nags" you.  USE WITH CAUTION!
  4492.  
  4493.  
  4494.     ReadBlock           <Alt R> or <Alt F><R> or <Esc><F><R>
  4495.     ─────────────────────────────────────────────────────────────────────────
  4496.  
  4497.     Inserts the named disk file at the current cursor position.
  4498.  
  4499.  
  4500.     RepeatFind          <Ctrl L> or <Esc><S><A>
  4501.     ─────────────────────────────────────────────────────────────────────────
  4502.  
  4503.     Repeats the previous Find or FindReplace command.
  4504.  
  4505.  
  4506.     Return              <Enter>
  4507.     ─────────────────────────────────────────────────────────────────────────
  4508.  
  4509.     The Return command behaves differently depending on Insert mode and
  4510.     AutoIndent mode.
  4511.  
  4512.     If Insert mode is OFF, the cursor is positioned at the first column
  4513.     of the next line.
  4514.  
  4515.     If Insert mode is ON, the current cursor line is split at the cursor
  4516.     position and any text to the right of and including the cursor
  4517.     position is placed on a new line following the current line.  If the
  4518.     cursor is past the last character on the line, then a blank line is
  4519.     added following the current line.  The cursor is then moved to the
  4520.     first column of the new line.
  4521.  
  4522.     If AutoIndent is ON, spaces are inserted ahead of the cursor
  4523.     position to align it with the text on the previous line.
  4524.  
  4525.                                   3-16
  4526.  
  4527.  
  4528.     If AutoIndent is OFF, the text is moved to the beginning of the
  4529.     next line.
  4530.  
  4531.     The Return command can be configured to split or not to split lines
  4532.     when Insert mode is ON.  Refer to the "Advanced Options" section of
  4533.     Chapter 2 for more information.
  4534.  
  4535.  
  4536.     SaveFile            <Ctrl KS> or <Alt F><S> or <Esc><F><S>
  4537.     ─────────────────────────────────────────────────────────────────────────
  4538.  
  4539.     Saves to disk the file currently being edited.  The file remains
  4540.     loaded, ready for further editing.
  4541.  
  4542.  
  4543.     ScreenLeft          <Alt F5>
  4544.     ─────────────────────────────────────────────────────────────────────────
  4545.  
  4546.     Shifts the screen to the left, the number of columns specified in
  4547.     the configuration program.  Refer to the "Colors/Screen Options"
  4548.     section of Chapter 2 for more information.
  4549.  
  4550.  
  4551.     ScreenRight         <Alt F6>
  4552.     ─────────────────────────────────────────────────────────────────────────
  4553.  
  4554.     Shifts the screen to the Right, the number of columns specified in
  4555.     the configuration program.  Refer to the "Colors/Screen Options"
  4556.     section of Chapter 2 for more information.
  4557.  
  4558.  
  4559.     ScrollDown          <Ctrl Z>
  4560.     ─────────────────────────────────────────────────────────────────────────
  4561.  
  4562.     Scrolls the text one line at a time toward the end of the file.  The
  4563.     cursor remains on the same line of text until it reaches the top of
  4564.     the screen.
  4565.  
  4566.  
  4567.     ScrollUp            <Ctrl W>
  4568.     ─────────────────────────────────────────────────────────────────────────
  4569.  
  4570.     Scrolls the text one line at a time toward the beginning of the
  4571.     file.  The cursor remains on the same line of text until it reaches
  4572.     the bottom of the screen.
  4573.  
  4574.  
  4575.     SetCtabwidth        <Esc><O><C>
  4576.     ─────────────────────────────────────────────────────────────────────────
  4577.  
  4578.     Sets the cursor tab width.  This is the width that is used when the
  4579.     TabRt or TabLt commands are executed.
  4580.  
  4581.                                   3-17
  4582.  
  4583.  
  4584.  
  4585.     SetPrintLeftMargin  <Alt P><L> or <Esc><P><L>
  4586.     ─────────────────────────────────────────────────────────────────────────
  4587.  
  4588.     Sets the number of spaces to be printed as a left margin at the
  4589.     beginning of each line. The default is zero.
  4590.  
  4591.  
  4592.     SetPrintPageSize    <Alt P><P> or <Esc><P><P>
  4593.     ─────────────────────────────────────────────────────────────────────────
  4594.  
  4595.     Sets the number of lines to be printed per page before sending a
  4596.     formfeed.  A value of zero will allow continuous printing (no
  4597.     formfeeds sent).
  4598.  
  4599.  
  4600.     SetPtabwidth        <Esc><O><P>
  4601.     ─────────────────────────────────────────────────────────────────────────
  4602.  
  4603.     Sets the Physical Tab Width.  This determines the width to which
  4604.     physical tab characters found in files are expanded if Physical Tab
  4605.     Expansion is set ON.  It also determines the number of spaces to be
  4606.     used for Physical Tab Insertion.  Refer to the ToggleTabsExpand and
  4607.     ToggleTabsOut commands in this chapter for more information.
  4608.  
  4609.  
  4610.     SetRmargin          <Ctrl OR> or <Esc><O><R>
  4611.     ─────────────────────────────────────────────────────────────────────────
  4612.  
  4613.     Sets the right margin for word-wrap and paragraph reformatting.
  4614.  
  4615.  
  4616.     Shell               <F9> or <Alt F><O> or <Esc><F><O>
  4617.     ─────────────────────────────────────────────────────────────────────────
  4618.  
  4619.     Invokes a DOS shell.  While in the shell, you can execute DOS and
  4620.     other commands.  When you are ready to leave the shell, type
  4621.     "exit <Enter>".  You will be back in QEdit, exactly where you
  4622.     left off.
  4623.  
  4624.                                        ┌─────────────────────────────────┐
  4625.                                        │ QEdit Tip:                      │
  4626.                                        │   You should NOT execute any    │
  4627.                                        │   TSR (terminate and stay       │
  4628.                                        │   resident) commands here.      │
  4629.                                        │   These include the DOS print   │
  4630.                                        │   and graph commands and        │
  4631.                                        │   memory-resident programs      │
  4632.                                        │   such as Sidekick and Superkey.│
  4633.                                        └─────────────────────────────────┘
  4634.  
  4635.                                   3-18
  4636.  
  4637.  
  4638.  
  4639.  
  4640.     ShiftLeft           <Shift F7>
  4641.     ─────────────────────────────────────────────────────────────────────────
  4642.  
  4643.     Shifts the currently marked Block (or the cursor line, if the cursor
  4644.     does not reside in a marked Block) one position to the left.  If you
  4645.     issue this command when the leftmost character(s) of the line(s)
  4646.     being shifted is in column 1, that character(s) will be deleted to
  4647.     allow the remainder of the line to shift left one position.
  4648.  
  4649.  
  4650.     ShiftRight          <Shift F8>
  4651.     ─────────────────────────────────────────────────────────────────────────
  4652.  
  4653.     Shifts the currently marked Block (or the cursor line, if the cursor
  4654.     does not reside in a marked Block) one position to the right.  If
  4655.     you issue this command when the rightmost character(s) of the
  4656.     line(s) being shifted is in column 512, that character(s) will be
  4657.     deleted to allow the remainder of the line to shift right one
  4658.     position.
  4659.  
  4660.  
  4661.     ShowEntryScreen     <Alt F10>
  4662.     ─────────────────────────────────────────────────────────────────────────
  4663.  
  4664.     Displays the original DOS screen as it appeared upon initial
  4665.     execution of the editor.  Pressing any key will return you to the
  4666.     edit screen.
  4667.  
  4668.  
  4669.     ShrinkWindow        <Ctrl OS> or <Esc><W><R>
  4670.     ─────────────────────────────────────────────────────────────────────────
  4671.  
  4672.     Decreases the size of the current window, if there are multiple
  4673.     windows on the screen.  The editor will prompt for the direction in
  4674.     which to decrease the size.  The GrowWindow command can be executed
  4675.     from this prompt to increase the window size.
  4676.  
  4677.  
  4678.  
  4679.     SplitLine           <Alt S> or <Esc><E><S>
  4680.     ─────────────────────────────────────────────────────────────────────────
  4681.  
  4682.     Splits the current cursor line at the cursor position.  Any text to
  4683.     the right of and including the cursor position is placed on a new
  4684.     line following the current line.  If the cursor is past the last
  4685.     character on the line, then a blank line is added following the
  4686.     current line. The cursor position does not change.
  4687.  
  4688.  
  4689.     StoreScrbuff        <Ctrl BS>
  4690.     ─────────────────────────────────────────────────────────────────────────
  4691.  
  4692.     Copies the currently marked Block to the named Scratch Buffer. The
  4693.     editor will prompt for the name of the Scratch Buffer.  The contents
  4694.     of all Scratch Buffers are lost when the editor is terminated.
  4695.  
  4696.                                   3-19
  4697.  
  4698.  
  4699.  
  4700.     TabLt               <Shift Tab>
  4701.     ─────────────────────────────────────────────────────────────────────────
  4702.  
  4703.     Positions the cursor at the previous tab position, as defined by the
  4704.     tab width.  If in Insert mode, the text to the right of, and
  4705.     including the cursor position, also shifts left.
  4706.  
  4707.  
  4708.     TabRt               <Tab>
  4709.     ─────────────────────────────────────────────────────────────────────────
  4710.  
  4711.     Positions the cursor at the next tab position, as defined by the
  4712.     cursor tab width.  If in Insert mode, the text to the right of, and
  4713.     including the cursor position, also shifts right.
  4714.  
  4715.  
  4716.     ToggleBakups        <Esc><O><B>
  4717.     ─────────────────────────────────────────────────────────────────────────
  4718.  
  4719.     Toggles file backups ON and OFF.  If ON, QEdit will create a backup
  4720.     file using the ".bak" file extension whenever a modified file is
  4721.     saved.
  4722.  
  4723.  
  4724.     ToggleBoxDraw       <Shift F1>
  4725.     ─────────────────────────────────────────────────────────────────────────
  4726.  
  4727.     Toggles Box Drawing mode ON and OFF.  If ON, the cursor movement
  4728.     keys (up, down, right, left) will "draw" lines in the text, both
  4729.     up/down and right/left.  Very useful for creating charts and tables.
  4730.  
  4731.     The letter "B" will appear on the Status Line when this mode is ON.
  4732.  
  4733.  
  4734.     ToggleEnterMatching <Esc><O><E>
  4735.     ─────────────────────────────────────────────────────────────────────────
  4736.  
  4737.     Toggles EnterMatching mode ON and OFF.  If ON, the double quote,
  4738.     parenthesis, and square bracket keys all automatically enter the
  4739.     matching character when the left character is entered.  For example,
  4740.     typing the '[' key automatically enters a ']' immediately following.
  4741.  
  4742.                                   3-20
  4743.  
  4744.  
  4745.  
  4746.     ToggleIndent        <Ctrl QI> or <Esc><O><A>
  4747.     ─────────────────────────────────────────────────────────────────────────
  4748.  
  4749.     Toggles AutoIndent mode ON and OFF.  If ON, the cursor is positioned
  4750.     at the current left margin whenever the <Enter> key is pressed.
  4751.     The current left margin is determined by the first non-blank
  4752.     character on the immediately preceding line.
  4753.  
  4754.     Paragraph reformatting and word-wrapping will also use the current
  4755.     left margin when AutoIndent mode is ON.
  4756.  
  4757.     The letter "A" will appear on the Status Line when this mode is ON.
  4758.  
  4759.  
  4760.     ToggleInsert        <Ins> or <Esc><O><I>
  4761.     ─────────────────────────────────────────────────────────────────────────
  4762.  
  4763.     Toggles Insert mode ON and OFF.  If ON, text to the right of the
  4764.     cursor on the cursor line is shifted whenever characters, spaces,
  4765.     the Backspace command, the TabLt command, or the TabRt command is
  4766.     entered.  Also, entering the Return command will cause a line split
  4767.     at the current cursor position.
  4768.  
  4769.     The letter "I" will appear on the Status Line when this mode is ON.
  4770.  
  4771.  
  4772.     ToggleSmartTabs     <Ctrl QT>
  4773.     ─────────────────────────────────────────────────────────────────────────
  4774.  
  4775.     Toggles Smart Tabs ON and OFF.  If ON, the tab right (and left) keys
  4776.     will position the cursor below the beginning of the next (or
  4777.     previous) word on the line immediately above the current cursor
  4778.     line.
  4779.  
  4780.  
  4781.     ToggleTabsExpand    <Alt V>
  4782.     ────────────────────────────────────────────────────────────────────────
  4783.  
  4784.     Toggles Physical Tab Expansion ON and OFF.  If ON, physical tab
  4785.     characters (ASCII 9's) found in a file will be expanded into spaces
  4786.     according to the Physical Tab Width set in the configuration program
  4787.     (Refer to the "Tab Settings" section of Chapter 2 for more
  4788.     information).  If OFF, physical tabs will be displayed on the
  4789.     screen.
  4790.  
  4791.  
  4792.     ToggleTabsOut       <Alt I>
  4793.     ─────────────────────────────────────────────────────────────────────────
  4794.  
  4795.     Toggles Physical Tab Insertion ON and OFF.  If ON, continuous spaces
  4796.     in a line of text will be replaced with physical tabs (ASCII 9's)
  4797.     according to the Physical Tab Width set in the configuration program
  4798.     (Refer to the "Tab Settings" section of Chapter 2 for more
  4799.     information).
  4800.  
  4801.                                   3-21
  4802.  
  4803.  
  4804.  
  4805.     ToggleWordwrap      <Ctrl OW> or <Esc><O><W>
  4806.     ─────────────────────────────────────────────────────────────────────────
  4807.  
  4808.     Toggles WordWrap mode ON and OFF.  If ON, the cursor, along with
  4809.     the word currently being typed, will automatically advance to the
  4810.     next line whenever a character is typed beyond the right margin.
  4811.     The right margin can be permanently set using the configuration
  4812.     program (refer to the "General Options" section of Chapter 2 for
  4813.     more information) or temporarily changed using the SetRmargin
  4814.     command.
  4815.  
  4816.     The letter "W" will appear on the Status Line when this mode is ON.
  4817.  
  4818.  
  4819.     UndoCursorline      <Ctrl QL>
  4820.     ─────────────────────────────────────────────────────────────────────────
  4821.  
  4822.     Reverses any changes made to the current cursor line (except changes
  4823.     made with the FindReplace command).  If the cursor has been moved
  4824.     from the changed line or a file or window command is executed, the
  4825.     changes cannot be undone.
  4826.  
  4827.  
  4828.     UnKill              <Ctrl U> or <Esc><E><U>
  4829.     ─────────────────────────────────────────────────────────────────────────
  4830.  
  4831.     Recovers the last deleted entry from the current file's Kill Buffer.
  4832.     Deleted blocks and lines will be inserted immediately before the
  4833.     current cursor line and deleted words will be inserted immediately
  4834.     before the current cursor position.
  4835.  
  4836.     The number of lines saved in the Kill Buffer may be set with the
  4837.     configuration program.  Refer to the "General Options" section of
  4838.     Chapter 2 for more information.
  4839.  
  4840.  
  4841.     UnmarkBlock         <Alt U> or <Esc><B><U>
  4842.     ─────────────────────────────────────────────────────────────────────────
  4843.  
  4844.     Unmarks the currently marked Block.
  4845.  
  4846.  
  4847.     WordLeft            <Ctrl Cursor Left>
  4848.     ─────────────────────────────────────────────────────────────────────────
  4849.  
  4850.     Positions the cursor at the first character of the previous word.
  4851.  
  4852.  
  4853.     WordRight           <Ctrl Cursor Right>
  4854.     ─────────────────────────────────────────────────────────────────────────
  4855.  
  4856.     Positions the cursor at the first character of the following word.
  4857.  
  4858.                                   3-22
  4859.  
  4860.  
  4861.  
  4862.     WrapPara            <Alt B>
  4863.     ─────────────────────────────────────────────────────────────────────────
  4864.  
  4865.     Reformats text from the current cursor position until a blank line
  4866.     or end of file is encountered.  If AutoIndent is ON, the line below
  4867.     the cursor line is used for the left margin.  Otherwise, a left
  4868.     margin of zero is used.  The right margin is determined by the
  4869.     configuration program or the SetRmargin command.
  4870.  
  4871.  
  4872.     WriteBlock          <Alt W> or <Alt F><W> or <Esc><F><W>
  4873.     ─────────────────────────────────────────────────────────────────────────
  4874.  
  4875.     Writes the currently marked Block to the named file.  The editor
  4876.     will prompt for the name of the file.
  4877.  
  4878.  
  4879.     ZoomWindow          <Ctrl OZ> or <Esc><W><Z>
  4880.     ─────────────────────────────────────────────────────────────────────────
  4881.  
  4882.     Toggles Zoom mode ON and OFF.  If there are multiple windows on the
  4883.     screen, entering the ZoomWindow command will cause the current
  4884.     window to fill the entire screen.  Pressing ZoomWindow again
  4885.     restores the other windows to the screen.
  4886.  
  4887.                                   3-23
  4888.  
  4889.  
  4890.  
  4891.  
  4892.     Appendix A.  List of Commands
  4893.     =========================================================================
  4894.  
  4895.                                 ┌─────────────┐
  4896.                                 │ By Function │
  4897.                                 └─────────────┘
  4898.  
  4899.                              Menu (Esc)  Default                   Customized
  4900.     Command                  Sequence    Keystroke                 Keystroke
  4901.     ────────────────────     ──────────  ────────────────────      ──────────
  4902.  
  4903.     Cursor Movement
  4904.     ---------------
  4905.     BegFile                              Ctrl PgUp
  4906.     BegLine                              Home
  4907.     BegScreen                            Ctrl Home
  4908.     CursorDown                           Cursor Down
  4909.     CursorLeft                           Cursor Left
  4910.  
  4911.     CursorRight                          Cursor Right
  4912.     CursorUp                             Cursor Up
  4913.     EndFile                              Ctrl PgDn
  4914.     EndLine                              End
  4915.     EndScreen                            Ctrl End
  4916.  
  4917.     GotoBlockBeg                         Ctrl QB
  4918.     GotoBlockEnd                         Ctrl QK
  4919.     GotoLine                             Ctrl J
  4920.     HalfPgDn
  4921.     HalfPgUp
  4922.  
  4923.     LineDown                             Ctrl X
  4924.     LineUp                               Ctrl E
  4925.     MakeBotofScreen
  4926.     MakeCtrofScreen                      Shift F5
  4927.     MakeTopofScreen                      F5
  4928.  
  4929.                                   A-1
  4930.  
  4931.  
  4932.     PageDown                             PgDn
  4933.     PageUp                               PgUp
  4934.     PrevPosition                         Ctrl QP
  4935.     ScreenLeft                           Alt  F5
  4936.     ScreenRight                          Alt  F6
  4937.  
  4938.     ScrollDown                           Ctrl Z
  4939.     ScrollUp                             Ctrl W
  4940.     WordLeft                             Ctrl Cursor Left
  4941.     WordRight                            Ctrl Cursor Right
  4942.  
  4943.  
  4944.     Editing
  4945.     -------
  4946.     AddLine                  EA          F2
  4947.     Align
  4948.     Backspace                            Backspace
  4949.     DelCh                                Del
  4950.     DelLine                  ED          Alt  D
  4951.  
  4952.     DelLtWord                            Ctrl Backspace
  4953.     DelRtWord                            Ctrl T
  4954.     DelToEol                 EE          F6
  4955.     DupLine                              F4
  4956.     GetPrev                              Ctrl - (dash)
  4957.  
  4958.     InsertLine               EI          Alt  F2
  4959.     JoinLine                 EJ          Alt  J
  4960.     Literal                              Ctrl P
  4961.     Return                               Enter
  4962.     SplitLine                ES          Alt  S
  4963.  
  4964.     UnKill                   EU          Ctrl U
  4965.  
  4966.  
  4967.     Block/Scratch Buffer
  4968.     --------------------
  4969.     AppendScrbuff                        Ctrl BA
  4970.     Copy                                 grey +
  4971.     CopyBlock                BC          Alt  C
  4972.     Cut                                  grey -
  4973.     DeleteBlock              BD          Alt  G
  4974.  
  4975.                                   A-2
  4976.  
  4977.  
  4978.     DropAnchor                           Alt  A
  4979.     GetScrbuff                           Ctrl BL
  4980.     MarkBlockBegin           BB          Ctrl KB or F7
  4981.     MarkBlockEnd             BE          Ctrl KK or F8
  4982.     MarkLine                 BL          Alt  L
  4983.  
  4984.     MoveBlock                BM          Alt  M
  4985.     Paste                                grey *
  4986.     ShiftLeft                            Shift F7
  4987.     ShiftRight                           Shift F8
  4988.     StoreScrbuff                         Ctrl BS
  4989.  
  4990.     UnmarkBlock              BU          Alt  U
  4991.  
  4992.  
  4993.     File
  4994.     ----
  4995.     ChangeFilename           FC          Alt  O  or Alt  F,C
  4996.     EditFile                 FL          Alt  E  or Alt  F,L
  4997.     Exit                                 Ctrl KD
  4998.     File                     FF          Ctrl KX or Alt  F,F
  4999.     GExit                    QX          Alt  X  or Alt  Q,X
  5000.  
  5001.     GFile                    FG          Alt  F,G
  5002.     GPQuit                   QQ          F3      or Alt  Q,Q
  5003.     GSave                                Alt  Y
  5004.     KillFile                             Ctrl KZ
  5005.     NextFile                 FN          Alt  N  or Alt  F,N
  5006.  
  5007.     PQuit                    FQ          Ctrl KQ or Alt  F,Q
  5008.     PrevFile                 FP          Ctrl KP or Alt  F,P
  5009.     Quit
  5010.     ReadBlock                FR          Alt  R  or Alt  F,R
  5011.     SaveFile                 FS          Ctrl KS or Alt  F,S
  5012.  
  5013.     WriteBlock               FW          Alt  W  or Alt  F,W
  5014.  
  5015.                                   A-3
  5016.  
  5017.  
  5018.  
  5019.     Window
  5020.     ------
  5021.     CloseWindow              WC          Ctrl OC
  5022.     GrowWindow               WG          Ctrl OG
  5023.     HorizontalWindow         WS          Ctrl OH
  5024.     NextWindow               WN          Ctrl ON
  5025.     OneWindow                WO          Ctrl OO
  5026.  
  5027.     PrevWindow               WP          Ctrl OP
  5028.     ShrinkWindow             WR          Ctrl OS
  5029.     ZoomWindow               WZ          Ctrl OZ
  5030.  
  5031.  
  5032.     Macro
  5033.     -----
  5034.     CurrentFilename
  5035.     ExecuteScrap                         Ctrl Enter
  5036.     MacroRead                MR
  5037.     MacroRecord              MM          Ctrl M
  5038.     MacroWrite               MW
  5039.  
  5040.  
  5041.     Printing
  5042.     --------
  5043.     PrintAll                 PA          Alt  P,A
  5044.     PrintBlock               PB          Alt  P,B
  5045.     PrintEject               PF          Alt  P,F
  5046.     SetPrintLeftMargin       PL          Alt  P,L
  5047.     SetPrintPageSize         PP          Alt  P,P
  5048.  
  5049.  
  5050.     Tab
  5051.     ---
  5052.     SetCtabwidth             OC
  5053.     SetPtabwidth             OP
  5054.     TabLt                                Shift Tab
  5055.     TabRt                                Tab
  5056.  
  5057.                                   A-4
  5058.  
  5059.  
  5060.  
  5061.     Find/Replace
  5062.     ------------
  5063.     Find                     SF          Ctrl QF
  5064.     FindReplace              SR          Ctrl QA
  5065.     RepeatFind               SA          Ctrl L
  5066.  
  5067.  
  5068.     Toggles
  5069.     -------
  5070.     ToggleBakups             OB
  5071.     ToggleBoxDraw                        Shift F1
  5072.     ToggleEnterMatching      OE
  5073.     ToggleIndent             OA          Ctrl QI
  5074.     ToggleInsert             OI          Ins
  5075.  
  5076.     ToggleSmartTabs                      Ctrl QT
  5077.     ToggleTabsExpand                     Alt  V
  5078.     ToggleTabsOut                        Alt  I
  5079.     ToggleWordwrap           OW          Ctrl OW
  5080.  
  5081.  
  5082.     Other
  5083.     -----
  5084.     Dos                                  Alt  F9
  5085.     Escape                               Esc
  5086.     InsertDate
  5087.     InsertTime
  5088.     MainMenu                             Esc
  5089.  
  5090.     Match                                Alt  F3
  5091.     QuickHelp                            Alt  H  or F1
  5092.     SetRmargin               OR          Ctrl OR
  5093.     Shell                    FO          F9      or Alt  F,O
  5094.     ShowEntryScreen                      Alt  F10
  5095.  
  5096.     UndoCursorline                       Ctrl QL
  5097.     WrapPara                             Alt  B
  5098.  
  5099.                                   A-5
  5100.  
  5101.  
  5102.  
  5103.                              ┌────────────────┐
  5104.                              │ Alphabetically │
  5105.                              └────────────────┘
  5106.  
  5107.                              Menu (Esc)  Default                   Customized
  5108.     Command                  Sequence    Keystroke                 Keystroke
  5109.     ────────────────────     ──────────  ────────────────────      ──────────
  5110.  
  5111.     AddLine                  EA          F2
  5112.     Align
  5113.     AppendScrbuff                        Ctrl BA
  5114.     Backspace                            Backspace
  5115.     BegFile                              Ctrl PgUp
  5116.  
  5117.     BegLine                              Home
  5118.     BegScreen                            Ctrl Home
  5119.     ChangeFilename           FC          Alt  O  or Alt  F,C
  5120.     CloseWindow              WC          Ctrl OC
  5121.     Copy                                 grey +
  5122.  
  5123.     CopyBlock                BC          Alt  C
  5124.     CurrentFilename
  5125.     CursorDown                           Cursor Down
  5126.     CursorLeft                           Cursor Left
  5127.     CursorRight                          Cursor Right
  5128.  
  5129.     CursorUp                             Cursor Up
  5130.     Cut                                  grey -
  5131.     DelCh                                Del
  5132.     DeleteBlock              BD          Alt  G
  5133.     DelLine                  ED          Alt  D
  5134.  
  5135.     DelLtWord                            Ctrl Backspace
  5136.     DelRtWord                            Ctrl T
  5137.     DelToEol                 EE          F6
  5138.     Dos                                  Alt  F9
  5139.     DropAnchor                           Alt  A
  5140.  
  5141.     DupLine                              F4
  5142.     EditFile                 FL          Alt  E  or Alt  F,L
  5143.     EndFile                              Ctrl PgDn
  5144.     EndLine                              End
  5145.     EndScreen                            Ctrl End
  5146.  
  5147.     Escape                               Esc
  5148.     ExecuteScrap                         Ctrl Enter
  5149.     Exit                                 Ctrl KD
  5150.     File                     FF          Ctrl KX or Alt  F,F
  5151.     Find                     SF          Ctrl QF
  5152.  
  5153.                                   A-6
  5154.  
  5155.  
  5156.     FindReplace              SR          Ctrl QA
  5157.     GetPrev                              Ctrl - (dash)
  5158.     GetScrbuff                           Ctrl BL
  5159.     GExit                    QX          Alt  X  or Alt  Q,X
  5160.     GFile                    FG          Alt  F,G
  5161.  
  5162.     GotoBlockBeg                         Ctrl QB
  5163.     GotoBlockEnd                         Ctrl QK
  5164.     GotoLine                             Ctrl J
  5165.     GPQuit                   QQ          F3      or Alt  Q,Q
  5166.     GrowWindow               WG          Ctrl OG
  5167.  
  5168.     GSave                                Alt  Y
  5169.     HalfPgDn
  5170.     HalfPgUp
  5171.     HorizontalWindow         WS          Ctrl OH
  5172.     InsertDate
  5173.  
  5174.     InsertLine               EI          Alt  F2
  5175.     InsertTime
  5176.     JoinLine                 EJ          Alt  J
  5177.     KillFile                             Ctrl KZ
  5178.     LineDown                             Ctrl X
  5179.  
  5180.     LineUp                               Ctrl E
  5181.     Literal                              Ctrl P
  5182.     MacroRead                MR
  5183.     MacroRecord              MM          Ctrl M
  5184.     MacroWrite               MW
  5185.  
  5186.     MainMenu                             Esc
  5187.     MakeBotofScreen
  5188.     MakeCtrofScreen                      Shift F5
  5189.     MakeTopofScreen                      F5
  5190.     MarkBlockBegin           BB          Ctrl KB or F7
  5191.  
  5192.     MarkBlockEnd             BE          Ctrl KK or F8
  5193.     MarkLine                 BL          Alt  L
  5194.     Match                                Alt  F3
  5195.     MoveBlock                BM          Alt  M
  5196.     NextFile                 FN          Alt  N  or Alt  F,N
  5197.  
  5198.                                   A-7
  5199.  
  5200.  
  5201.     NextWindow               WN          Ctrl ON
  5202.     OneWindow                WO          Ctrl OO
  5203.     PageDown                             PgDn
  5204.     PageUp                               PgUp
  5205.     Paste                                grey *
  5206.  
  5207.     PQuit                    FQ          Ctrl KQ or Alt  F,Q
  5208.     PrevFile                 FP          Ctrl KP or Alt  F,P
  5209.     PrevPosition                         Ctrl QP
  5210.     PrevWindow               WP          Ctrl OP
  5211.     PrintAll                 PA          Alt  P,A
  5212.  
  5213.     PrintBlock               PB          Alt  P,B
  5214.     PrintEject               PF          Alt  P,F
  5215.     QuickHelp                            Alt  H  or F1
  5216.     Quit
  5217.     ReadBlock                FR          Alt  R  or Alt  F,R
  5218.  
  5219.     RepeatFind               SA          Ctrl L
  5220.     Return                               Enter
  5221.     SaveFile                 FS          Ctrl KS or Alt  F,S
  5222.     ScreenLeft                           Alt  F5
  5223.     ScreenRight                          Alt  F6
  5224.  
  5225.     ScrollDown                           Ctrl Z
  5226.     ScrollUp                             Ctrl W
  5227.     SetCtabwidth             OC
  5228.     SetPrintLeftMargin       PL          Alt  P,L
  5229.     SetPrintPageSize         PP          Alt  P,P
  5230.  
  5231.     SetPtabwidth             OP
  5232.     SetRmargin               OR          Ctrl OR
  5233.     Shell                    FO          F9      or Alt  F,O
  5234.     ShiftLeft                            Shift F7
  5235.     ShiftRight                           Shift F8
  5236.  
  5237.     ShowEntryScreen                      Alt  F10
  5238.     ShrinkWindow             WR          Ctrl OS
  5239.     SplitLine                ES          Alt  S
  5240.     StoreScrbuff                         Ctrl BS
  5241.     TabLt                                Shift Tab
  5242.  
  5243.                                   A-8
  5244.  
  5245.  
  5246.     TabRt                                Tab
  5247.     ToggleBakups             OB
  5248.     ToggleBoxDraw                        Shift F1
  5249.     ToggleEnterMatching      OE
  5250.     ToggleIndent             OA          Ctrl QI
  5251.  
  5252.     ToggleInsert             OI          Ins
  5253.     ToggleSmartTabs                      Ctrl QT
  5254.     ToggleTabsExpand                     Alt  V
  5255.     ToggleTabsOut                        Alt  I
  5256.     ToggleWordwrap           OW          Ctrl OW
  5257.  
  5258.     UndoCursorline                       Ctrl QL
  5259.     UnKill                   EU          Ctrl U
  5260.     UnmarkBlock              BU          Alt  U
  5261.     WordLeft                             Ctrl Cursor Left
  5262.     WordRight                            Ctrl Cursor Right
  5263.  
  5264.     WrapPara                             Alt  B
  5265.     WriteBlock               FW          Alt  W  or Alt  F,W
  5266.     ZoomWindow               WZ          Ctrl OZ
  5267.  
  5268.                                   A-9
  5269.  
  5270.  
  5271.  
  5272.     Appendix B.  List of Configurable Keys
  5273.     =========================================================================
  5274.  
  5275.                                ┌───────────────┐
  5276.                                │ Function Keys │
  5277.                                └───────────────┘
  5278.  
  5279.     Keystroke      Default Command     │  Keystroke          Default Command
  5280.     ─────────      ───────────────     │  ─────────          ───────────────
  5281.     F1             QuickHelp           │  Shift F1           ToggleBoxDraw
  5282.     F2             AddLine             │  Shift F2
  5283.     F3             GPQuit              │  Shift F3
  5284.     F4             DupLine             │  Shift F4
  5285.     F5             MakeTopofScreen     │  Shift F5           MakeCtrofScreen
  5286.                                        │
  5287.     F6             DelToEol            │  Shift F6
  5288.     F7             MarkBlockBegin      │  Shift F7           ShiftLeft
  5289.     F8             MarkBlockEnd        │  Shift F8           ShiftRight
  5290.     F9             Shell               │  Shift F9
  5291.     F10                                │  Shift F10
  5292.     ───────────────────────────────────┼────────────────────────────────────────
  5293.     Ctrl F1                            │  Alt F1
  5294.     Ctrl F2                            │  Alt F2             InsertLine
  5295.     Ctrl F3                            │  Alt F3             Match
  5296.     Ctrl F4                            │  Alt F4
  5297.     Ctrl F5                            │  Alt F5             ScreenLeft
  5298.                                        │
  5299.     Ctrl F6                            │  Alt F6             ScreenRight
  5300.     Ctrl F7                            │  Alt F7
  5301.     Ctrl F8                            │  Alt F8
  5302.     Ctrl F9                            │  Alt F9             Dos
  5303.     Ctrl F10                           │  Alt F10            ShowEntryScreen
  5304.  
  5305.                                   B-1
  5306.  
  5307.  
  5308.  
  5309.                            ┌──────────────────────┐
  5310.                            │ Special Purpose Keys │
  5311.                            └──────────────────────┘
  5312.  
  5313.     Keystroke      Default Command     │  Keystroke          Default Command
  5314.     ─────────      ───────────────     │  ─────────          ───────────────
  5315.     Backspace      Backspace           │  Ctrl Backspace     DelLtWord
  5316.     Cursor down    CursorDown          │
  5317.     Cursor left    CursorLeft          │  Ctrl Cursor left   WordLeft
  5318.     Cursor right   CursorRight         │  Ctrl Cursor right  WordRight
  5319.     Cursor up      CursorUp            │
  5320.                                        │
  5321.     Del            DelCh               │  Shift Del
  5322.     End            EndLine             │  Ctrl End           EndScreen
  5323.     Enter          Return              │  Ctrl Enter        ExecuteScrap
  5324.     Esc            Escape              │
  5325.     grey *         Paste               │
  5326.                                        │
  5327.     grey +         Copy                │
  5328.     grey -         Cut                 │
  5329.     Home           BegLine             │  Ctrl Home          BegScreen
  5330.     Ins            ToggleInsert        │  Shift Ins
  5331.     PgDn           PageDown            │  Ctrl PgDn          EndFile
  5332.                                        │
  5333.     PgUp           PageUp              │  Ctrl PgUp          BegFile
  5334.     Tab            TabRt               │  Shift Tab          TabLt
  5335.     `                                  │
  5336.     /                                  │
  5337.     ~ (tilde)                          │
  5338.                                        │
  5339.                                        │  Ctrl Prtscr
  5340.                                        │  Ctrl [
  5341.                                        │  Ctrl ]
  5342.                                        │  Ctrl -             GetPrev
  5343.                                        │  Ctrl \
  5344.                                        │  Ctrl 2
  5345.                                        │  Ctrl 6             
  5346.  
  5347.                                   B-2
  5348.  
  5349.  
  5350.  
  5351.                                 ┌──────────────┐
  5352.                                 │ Control Keys │
  5353.                                 └──────────────┘
  5354.  
  5355.  
  5356.     Keystroke      Default Command     │  Keystroke          Default Command
  5357.     ─────────      ───────────────     │  ─────────          ───────────────
  5358.     Ctrl A         WordLeft            │  Ctrl P             Literal
  5359.   * Ctrl BA        AppendScrbuff       │* Ctrl QA            FindReplace
  5360.     Ctrl BL        GetScrbuff          │  Ctrl QB            GotoBlockBeg
  5361.     Ctrl BS        StoreScrbuff        │  Ctrl QC            EndFile
  5362.     Ctrl C         PageDown            │  Ctrl QD            EndLine
  5363.                                        │
  5364.     Ctrl D         CursorRight         │  Ctrl QE            BegScreen
  5365.     Ctrl E         LineUp              │  Ctrl QF            Find
  5366.     Ctrl F         WordRight           │  Ctrl QI            ToggleIndent
  5367.     Ctrl G         DelCh               │  Ctrl QK            GotoBlockEnd
  5368.     Ctrl H         Backspace           │  Ctrl QL            UndoCursorline
  5369.                                        │
  5370.     Ctrl I         TabRt               │  Ctrl QP            PrevPosition
  5371.     Ctrl J         GotoLine            │  Ctrl QR            BegFile
  5372.   * Ctrl KB        MarkBlockBegin      │  Ctrl QS            BegLine
  5373.     Ctrl KC        CopyBlock           │  Ctrl QT            ToggleSmartTabs
  5374.     Ctrl KD        Exit                │  Ctrl QX            EndScreen
  5375.                                        │
  5376.     Ctrl KE        EditFile            │  Ctrl QY            DelToEol
  5377.     Ctrl KF        ChangeFilename      │  Ctrl R             PageUp
  5378.     Ctrl KH        UnmarkBlock         │  Ctrl S             CursorLeft
  5379.     Ctrl KK        MarkBlockEnd        │  Ctrl T             DelRtWord
  5380.     Ctrl KN        NextFile            │  Ctrl U             UnKill
  5381.                                        │
  5382.     Ctrl KP        PrevFile            │  Ctrl V             ToggleInsert
  5383.     Ctrl KQ        PQuit               │  Ctrl W             ScrollUp
  5384.     Ctrl KR        ReadBlock           │  Ctrl X             LineDown
  5385.     Ctrl KS        SaveFile            │  Ctrl Y             DelLine
  5386.     Ctrl KT        ToggleTabsExpand    │  Ctrl Z             ScrollDown
  5387.                                        │
  5388.     Ctrl KV        MoveBlock           │
  5389.     Ctrl KW        WriteBlock          │
  5390.     Ctrl KX        File                │
  5391.     Ctrl KY        DeleteBlock         │
  5392.     Ctrl KZ        KillFile            │
  5393.                                        │
  5394.     Ctrl L         RepeatFind          │
  5395.     Ctrl M         MacroRecord         │
  5396.     Ctrl N         SplitLine           │
  5397.   * Ctrl OC        CloseWindow         │
  5398.     Ctrl OG        GrowWindow          │
  5399.  
  5400.                                   B-3
  5401.  
  5402.                                        │
  5403.     Ctrl OH        HorizontalWindow    │
  5404.     Ctrl OL        SetPrintLeftMargin  │
  5405.     Ctrl ON        NextWindow          │
  5406.     Ctrl OO        OneWindow           │
  5407.     Ctrl OP        PrevWindow          │
  5408.                                        │
  5409.     Ctrl OR        SetRmargin          │
  5410.     Ctrl OS        ShrinkWindow        │
  5411.     Ctrl OW        ToggleWordwrap      │
  5412.     Ctrl OZ        ZoomWindow          │
  5413.  
  5414.   * QEdit allows you to assign commands to "twokey" combinations. A
  5415.     twokey consists of two distinct keystrokes, such as <Ctrl B>
  5416.     immediately followed by <A>.  Please note that keystrokes such as
  5417.     <Ctrl A> and <Alt C> by themselves each count as only one keystroke,
  5418.     just as <shift F1> is only one keystroke.  You cannot assign a QEdit
  5419.     command to a key which is already being used as the first keystroke
  5420.     of a twokey.
  5421.  
  5422.                                   B-4
  5423.  
  5424.  
  5425.  
  5426.                                ┌────────────────┐
  5427.                                │ Alternate Keys │
  5428.                                └────────────────┘
  5429.  
  5430.  
  5431.     Keystroke    Default Command        │  Keystroke         Default Command
  5432.     ─────────    ───────────────        │  ─────────         ───────────────
  5433.     Alt A        DropAnchor             │  Alt 1
  5434.     Alt B        WrapPara               │  Alt 2
  5435.     Alt C        CopyBlock              │  Alt 3
  5436.     Alt D        DelLine                │  Alt 4
  5437.     Alt E        EditFile               │  Alt 5
  5438.                                         │
  5439.     Alt F        MacroBegin MainMenu 'f'│  Alt 6
  5440.     Alt G        DeleteBlock            │  Alt 7
  5441.     Alt H        QuickHelp              │  Alt 8
  5442.     Alt I        ToggleTabsOut          │  Alt 9
  5443.     Alt J        JoinLine               │  Alt 0
  5444.                                         │
  5445.     Alt K                               │  Alt -
  5446.     Alt L        MarkLine               │  Alt =
  5447.     Alt M        MoveBlock              │
  5448.     Alt N        NextFile               │
  5449.     Alt O        ChangeFilename         │
  5450.                                         │
  5451.     Alt P        MacroBegin MainMenu 'p'│
  5452.     Alt Q        MacroBegin MainMenu 'q'│
  5453.     Alt R        ReadBlock              │
  5454.     Alt S        SplitLine              │
  5455.     Alt T                               │
  5456.                                         │
  5457.     Alt U        UnmarkBlock            │
  5458.     Alt V        ToggleTabsExpand       │
  5459.     Alt W        WriteBlock             │
  5460.     Alt X        GExit                  │
  5461.     Alt Y        GSave                  │
  5462.                                         │
  5463.     Alt Z                               │
  5464.  
  5465.                                   B-5
  5466.  
  5467.  
  5468.  
  5469.                           ┌────────────────────────┐
  5470.                           │ Enhanced Keyboard Keys │
  5471.                           └────────────────────────┘
  5472.  
  5473.     Keystroke      Default Command     │  Keystroke          Default Command
  5474.     ─────────      ───────────────     │  ─────────          ───────────────
  5475.     F11                                │  Alt F11
  5476.     F12                                │  Alt F12
  5477.     Shift F11                          │  Alt '
  5478.     Shift F12                          │  Alt ,
  5479.     Ctrl F11                           │  Alt .
  5480.                                        │
  5481.     Ctrl F12                           │  Alt /
  5482.     Ctrl Center Cursor                 │  Alt \
  5483.     Ctrl Cursor Down                   │  Alt ;
  5484.     Ctrl Cursor Up                     │  Alt [
  5485.     Ctrl Del                           │  Alt ]
  5486.                                        │
  5487.     Ctrl grey *                        │  Alt `
  5488.     Ctrl grey +                        │  Alt Backspace
  5489.     Ctrl grey -                        │  Alt Enter
  5490.     Ctrl grey /                        │  Alt Escape
  5491.     Ctrl Ins                           │  Alt grey *
  5492.                                        │
  5493.     Ctrl Tab                           │  Alt grey +
  5494.     Center Cursor                      │  Alt grey -
  5495.                                        │  Alt grey /
  5496.                                        │  Alt grey Cursor Down
  5497.                                        │  Alt grey Cursor Left
  5498.                                        │
  5499.                                        │  Alt grey Cursor Right
  5500.                                        │  Alt grey Cursor Up
  5501.                                        │  Alt grey Del
  5502.                                        │  Alt grey End
  5503.                                        │  Alt grey Home
  5504.                                        │
  5505.                                        │  Alt grey Ins
  5506.                                        │  Alt grey PgDn
  5507.                                        │  Alt grey PgUp
  5508.                                        │  Alt grey Enter
  5509.                                        │  Alt Tab
  5510.  
  5511.  
  5512.     A list of all configurable keys is also contained in the QCONFIG.DAT
  5513.     file on the QEdit distribution diskette.
  5514.  
  5515.                                   B-6
  5516.  
  5517.  
  5518.  
  5519.  
  5520.     Appendix C.  Error Messages
  5521.     =========================================================================
  5522.  
  5523.     This Appendix contains an alphabetical list of the error messages
  5524.     that can be displayed by QEdit.  Each message has a description and,
  5525.     as required, a resolution.  There is a separate list for QCONFIG
  5526.     (the configuration program) error messages.
  5527.  
  5528.  
  5529.     QEdit Error Messages
  5530.     ─────────────────────────────────────────────────────────────────────────
  5531.  
  5532.     Can't execute scrap macro when macro recording on:  The ExecuteScrap
  5533.     command cannot be used during macro recording.
  5534.  
  5535.     Disk full:  A disk full condition was encountered while trying to
  5536.     save a file.
  5537.     Resolution:  Temporarily exit to DOS using the Shell command and
  5538.     remove some files on the full disk, OR use the KillFile command to
  5539.     remove the currently edited file from disk, OR use the
  5540.     ChangeFilename command to direct the file to a different disk drive
  5541.     designation.
  5542.  
  5543.     Error creating file:  The filename specified on the command line is
  5544.     either an invalid DOS filename or there are no files matching the
  5545.     wildcarded specification.
  5546.     Resolution:  Enter a valid DOS filename or valid wildcarded designation
  5547.     on the command line when executing QEdit.
  5548.  
  5549.     Error executing EXEC function:  DOS returned an error condition when
  5550.     QEdit attempted to perform the DOS EXEC function to load and execute
  5551.     a program and/or the DOS SHELL.
  5552.     Resolution:  Check these possible causes: there is not enough memory
  5553.     to load the external program, OR the COMMAND.COM file is not
  5554.     available, OR the COMSPEC environment variable is not set properly.
  5555.     Refer to your DOS manual for more information on the COMSPEC
  5556.     environment variable.
  5557.  
  5558.     Error opening file:  The file specified cannot be opened.
  5559.     Resolution:  Check for possible disk errors or failure.
  5560.  
  5561.     Error reading file:  The file specified cannot be read.
  5562.     Resolution:  Check for possible disk errors or failure.
  5563.  
  5564.                                   C-1
  5565.  
  5566.  
  5567.     Error renaming file:  The file specified cannot be renamed.
  5568.     Resolution:  Check for possible disk errors or failure.
  5569.  
  5570.     Error writing file:  The file specified cannot be saved.
  5571.     Resolution:  Check for possible disk errors or failure.
  5572.  
  5573.     File not found:  The file specified in response to the MacroRead or
  5574.     ReadBlock command could not be found on disk.
  5575.     Resolution:  Check for the correct name of the file to read.
  5576.  
  5577.     Filename already in use in ring:  The file specified in response to
  5578.     the ChangeFilename command is already loaded into the editor.
  5579.     Resolution:  Enter a filename that is not already loaded into the
  5580.     editor.  If you are attempting to "jump" to another file in the
  5581.     ring, use the EditFile command.
  5582.  
  5583.     Invalid macro filesize:  An attempt was made to load a macro file
  5584.     using the MacroRead command, which is either too large or is not
  5585.     a valid macro file.
  5586.     Resolution:  Check for the correct name of the macro file to read.
  5587.  
  5588.     Key already defined via config:  An attempt was made to assign a
  5589.     macro to a key which already had a command assignment.
  5590.     Resolution:  Refer to Appendix B and select a key which does not
  5591.     already have a command assignment.
  5592.  
  5593.     Long lines split:  An attempt was made to load a file whose line
  5594.     length exceeded the QEdit limit of 512 characters.
  5595.     Resolution:  The file can still be edited, but be aware that all
  5596.     lines exceeding 512 characters will be split into shorter lines.
  5597.  
  5598.     Macro table full:  There is no more room to record macros.
  5599.     Resolution:  Delete some unused macros.
  5600.  
  5601.     Macro too long - Aborted:  The macro being created during macro
  5602.     recording has exceeded the maximum length.
  5603.     Resolution:  Keep macros to less than 250 consecutive "entries".  Note
  5604.     that during macro recording each QEdit command takes up 1 of these
  5605.     entries and each keyboard character takes up 2 entries.
  5606.  
  5607.     Match not found:  No match was found for "(", "{", or "[" characters
  5608.     when using the Match command.
  5609.  
  5610.     Memory stolen by sub-process:  A memory resident program has procured
  5611.     memory that was in use by the editor.
  5612.     Resolution:  Immediately terminate the editor (without saving your
  5613.     file).  Take necessary steps to ensure that the memory resident
  5614.     program is not running while using the editor.
  5615.  
  5616.                                   C-2
  5617.  
  5618.  
  5619.     No files found:  An invalid wildcarded filename was entered in
  5620.     response to a QEdit "file(s) to edit" prompt.
  5621.     Resolution:  Check for the correct filename(s) to edit.
  5622.  
  5623.     Not enough memory to load entire file:  There is not enough memory to
  5624.     load the requested file into the editor.
  5625.     Resolution:  Split the requested file into separate files.
  5626.  
  5627.     Not enough memory:  There is not enough memory to continue editing
  5628.     the current file.
  5629.     Resolution:  Split the current file into separate files.
  5630.  
  5631.     Printer error:  An error was encountered while attempting to direct
  5632.     an edit file to the printer.
  5633.     Resolution:  Check to see that the printer is powered on, online, and
  5634.     properly connected to the computer.
  5635.  
  5636.     Press any key to continue:  The editor has displayed a message and
  5637.     will not continue until instructed.
  5638.  
  5639.  
  5640.     QCONFIG Error Messages
  5641.     ─────────────────────────────────────────────────────────────────────────
  5642.  
  5643.     invalid response - try again:  An invalid parameter was entered in
  5644.     response to a configuration option.
  5645.     Resolution:  Reread option and enter valid parameter.
  5646.  
  5647.     ERROR!!! Help buffer overflow in help.txt at line #:  The Help
  5648.     file contains more then 1800 non-blank characters.
  5649.     Resolution:  Edit the Help file and reduce the number of non-blank
  5650.     characters.
  5651.  
  5652.     Help filename xxxxxxxx.xxx NOT found:  The specified name of the Help
  5653.     file can not be found on disk.
  5654.     Resolution:  Check for the correct name of the Help file.
  5655.  
  5656.     Unexpected End Of File encountered at line #:   There is a problem
  5657.     with the format of the Help file, possibly corrupted.
  5658.     Resolution:  Load the Help file into QEdit and enter the SaveFile
  5659.     command.
  5660.  
  5661.     Line # too long:  The specified line in the Help file exceeds the
  5662.     maximum length of 80 characters.
  5663.     Resolution:  Edit the Help file and ensure that no lines exceed 80
  5664.     characters in length.
  5665.  
  5666.                                   C-3
  5667.  
  5668.  
  5669.     FATAL ERROR:  macro too long at line #:  The macro at the specified
  5670.     line number in the Keyboard Definition file exceeds the maximum
  5671.     length of 255 characters.
  5672.     Resolution:  Edit the Keyboard Definition file and ensure that no
  5673.     macros exceed 255 characters in length.
  5674.  
  5675.     FATAL ERROR:  unrecognized command xxxx at line #:  The Keyboard
  5676.     Definition file contains an invalid command at the specified line
  5677.     number.
  5678.     Resolution:  Edit the Keyboard Definition file and correct the
  5679.     invalid command.
  5680.  
  5681.     FATAL ERROR:  macro table full at line #:  There is no more room left
  5682.     in the Keyboard Definition file for macros.
  5683.     Resolution:  Delete some unused macros.
  5684.  
  5685.     FATAL ERROR:  too many twokey definitions, aborted at line #:  The
  5686.     maximum number of twokey assignments in the Keyboard Definition file
  5687.     has been exceeded.
  5688.     Resolution:  Edit the Keyboard Definition file and reduce the number
  5689.     of twokey assignments.  Generally, there can be 30 to 50 twokey
  5690.     assignments, depending on the number of unique first keys.  The more
  5691.     unique first keys there are, the fewer twokey assignments can be
  5692.     made.
  5693.  
  5694.     FATAL ERROR:  invalid second key code xx at line #:  The Keyboard
  5695.     Definition file contains an invalid second key (of a twokey
  5696.     assignment) at the specified line number.
  5697.     Resolution:  Edit the Keyboard Definition file and correct the
  5698.     invalid key.
  5699.  
  5700.     FATAL ERROR:  macro_begin not supported for twokey commands, line #:
  5701.     Macros cannot be assigned to twokeys.
  5702.  
  5703.     FATAL ERROR:  return bound to twokey at line #:  The Return command
  5704.     cannot be assigned to a twokey.
  5705.  
  5706.     FATAL ERROR:  escape bound to twokey at line #:  The Escape command
  5707.     cannot be assigned to a twokey.
  5708.  
  5709.     FATAL ERROR:  undefined key xxxx encountered at line #:   The Keyboard
  5710.     Definition file contains an invalid configurable key at the specified
  5711.     line number.
  5712.     Resolution:  Edit the Keyboard Definition file and correct the
  5713.     invalid key.
  5714.  
  5715.     FATAL ERROR:  return command MUST be "bound" to a key:  The Return
  5716.     command is not assigned to any key in the Keyboard Definition file.
  5717.     Resolution:  Assign the Return command to some configurable key in
  5718.     the Keyboard Definition file.
  5719.  
  5720.                                   C-4
  5721.  
  5722.  
  5723.     FATAL ERROR:  escape command MUST be "bound" to a key:  The Escape
  5724.     command is not assigned to any key in the Keyboard Definition file.
  5725.     Resolution:  Assign the Escape command to some configurable key in
  5726.     the Keyboard Definition file.
  5727.  
  5728.     File xxxxxxxx.xxx not found:  The specified name of the Keyboard
  5729.     Definition file can not be found on disk.
  5730.     Resolution:  Check for the correct name of the Keyboard Definition
  5731.     file.
  5732.  
  5733.     FATAL ERROR:  xxxxxxxx.xxx not found:  The specified name of the
  5734.     QEdit executable file cannot be found on disk.
  5735.     Resolution:  Check for the correct name of the QEdit executable file.
  5736.  
  5737.     FATAL ERROR:  patch area NOT found:  There is a problem with the QEdit
  5738.     executable file (Q.EXE or copy of same).
  5739.     Resolution:  Reload the QEdit (Q.EXE) and QCONFIG.EXE executable
  5740.     files from the QEdit distribution disk.
  5741.  
  5742.     FATAL ERROR:  end of patch area NOT found.  There is a problem with
  5743.     the QEdit executable file (Q.EXE or copy of same).
  5744.     Resolution:  Reload the QEdit (Q.EXE) and QCONFIG.EXE executable
  5745.     files from the QEdit distribution disk.
  5746.  
  5747.                                   C-5
  5748.  
  5749.  
  5750.  
  5751.  
  5752.     Appendix D.  Commonly Used Macros
  5753.     =========================================================================
  5754.  
  5755.     We have received many useful suggestions from QEdit users over the
  5756.     years.  Since the introduction of macros in version 2.00, we have
  5757.     received ideas for some very helpful macros.  Here is a short
  5758.     list of some of the more useful (and simple) macros.
  5759.  
  5760.  
  5761.     ■ By default, QEdit's AddLine and DelLine commands do not change the
  5762.       cursor position.  Many would prefer that the cursor move to column
  5763.       one when these commands are executed.  A solution is to change the
  5764.       QCONFIG.DAT file (and reload using QCONFIG.EXE) as follows:
  5765.  
  5766.       Default QCONFIG.DAT file:
  5767.  
  5768.       f2    AddLine
  5769.       ^y    DelLine
  5770.  
  5771.       Customized QCONFIG.DAT file:
  5772.  
  5773.       f2    MacroBegin AddLine BegLine
  5774.       ^y    MacroBegin DelLine BegLine
  5775.  
  5776.  
  5777.     ■ By default, QEdit's CopyBlock and MoveBlock commands leave the
  5778.       copied or moved block marked.  Many would prefer for the block to
  5779.       be unmarked.  A solution is to change the QCONFIG.DAT file (and
  5780.       reload using QCONFIG.EXE) as follows:
  5781.  
  5782.       Default QCONFIG.DAT file:
  5783.  
  5784.       @c    CopyBlock
  5785.       @m    MoveBlock
  5786.  
  5787.                                   D-1
  5788.  
  5789.  
  5790.       Customized QCONFIG.DAT file:
  5791.  
  5792.       @c    MacroBegin CopyBlock UnMarkBlock
  5793.       @m    MacroBegin MoveBlock UnMarkBlock
  5794.  
  5795.  
  5796.     ■ By default, QEdit's ReadBlock command inserts a file from disk at
  5797.       the current cursor position.  To have QEdit insert files on the
  5798.       line immediately following the current cursor line, change the
  5799.       QCONFIG.DAT file (and reload using QCONFIG.EXE) as follows:
  5800.  
  5801.       Default QCONFIG.DAT file:
  5802.  
  5803.       @r    ReadBlock
  5804.  
  5805.       Customized QCONFIG.DAT file:
  5806.  
  5807.       @r    MacroBegin EndLine SplitLine CursorDown BegLine ReadBlock
  5808.             GotoBlockEnd JoinLine GotoBlockBeg
  5809.  
  5810.  
  5811.     ■ By default, QEdit's DropAnchor command will end or extend a block
  5812.       if executed after a Block has been initially or entirely marked.
  5813.       Some editors have a similar command, except that it acts as a
  5814.       toggle.  That is, if you are already marking a Block, and you press
  5815.       DropAnchor again, the Block is unmarked and marking begins again
  5816.       at the current cursor position.  To implement, change the
  5817.       QCONFIG.DAT file (and reload using QCONFIG.EXE) as follows:
  5818.  
  5819.       Default QCONFIG.DAT file:
  5820.  
  5821.       @a    DropAnchor
  5822.  
  5823.       Customized QCONFIG.DAT file:
  5824.  
  5825.       @a    MacroBegin UnMarkBlock DropAnchor
  5826.  
  5827.  
  5828.     ■ A very useful QEdit command, GetPrev, will copy a character from
  5829.       the line immediately above the cursor line, onto the cursor line.
  5830.       Many times, it may be necessary to copy this character to several
  5831.       succeeding lines in the same column.  The GetPrev command, used in
  5832.       a macro, makes this function easy.  We will assign the macro to
  5833.       the <Alt 1> key (@1 in QEdit's terminology).
  5834.  
  5835.       @1    MacroBegin GetPrev CursorLeft CursorDown
  5836.  
  5837.                                   D-2
  5838.  
  5839.  
  5840.  
  5841.  
  5842.  
  5843.     Appendix E.  The Author
  5844.     =========================================================================
  5845.       
  5846.     Sammy Mitchell is a native of Atlanta, Georgia.  He graduated from
  5847.     Georgia State University in 1980 with a degree in Information
  5848.     Systems. Since college he has worked for Southern Company Services
  5849.     as a programmer analyst and for Equitable Real Estate Investment
  5850.     Management as a VM systems programmer. In 1986 he went into
  5851.     full-time consulting, specializing in systems and applications work
  5852.     on Micros and Mainframes in assembler, C and Pascal.  Besides QEdit,
  5853.     he is also the co-author of Mach 2 for Turbo Pascal, LXEDIT (a
  5854.     "large file" front-end for IBM's VM/CMS SP XEDIT), and a host of
  5855.     productivity aids at both Southern Company and Equitable. When he's
  5856.     away from the computer (which is very seldom these days) he enjoys
  5857.     lifting weights, playing softball, and spending quiet evenings with
  5858.     his wife.
  5859.  
  5860.                                   E-1
  5861.  
  5862.  
  5863.  
  5864.  
  5865.  
  5866.