💾 Archived View for gemini.spam.works › mirrors › textfiles › computers › DOCUMENTATION › tsejr.txt captured on 2022-06-12 at 06:39:26.

View Raw

More Information

-=-=-=-=-=-=-


                      THE SEMWARE(R) EDITOR JUNIOR

                          (formerly QEdit(R))


                               Version 4


                    R E F E R E N C E   M A N U A L


Please note that this is the shareware version of the documentation, and
has been abridged from the original document that accompanies the
registered version of the software.  The licensed commercial version
includes the complete indexed, bound manual.

Copyright 1985-1995 SemWare Corporation.
All rights reserved worldwide.

This software embodies valuable trade secrets proprietary to SemWare
Corporation.

SemWare is a registered trademark of SemWare Corporation.  All other
trademarks and registered trademarks referenced in this document are the
property of their respective owners.  The QEdit registered trademark is
used under license from Robelle Consulting Ltd.

The SemWare(R) Editor Junior (TSE Jr.) software products were formerly
called QEdit(R) (QEdit Advanced, QEdit TSR, and QEdit for OS/2).

Specifications subject to change without notice.

The READ.ME file contains information which supplements this
documentation.

?????????????????????????????????????????????????????????
?                                                       ?
?                   SALES AND SUPPORT                   ?
?                                                       ?
?                  SemWare Corporation                  ?
?                       Suite C3A                       ?
?                 4343 Shallowford Road                 ?
?                Marietta, GA  30062-5022               ?
?                         U.S.A.                        ?
?                                                       ?
?                                                       ?
? Orders ONLY:   (800) 467-3692  Inside USA, 9am-5pm ET ?
?                                                       ?
? Other Voice Calls:  (770) 641-9002  9am - 5pm ET      ?
?                                                       ?
? InterNet:      sales@semware.com                      ?
?                or tech.support@semware.com            ?
? CompuServe:    GO SEMWARE  (select Section 6)         ?
?                or 75300,2710                          ?
?                                                       ?
? FAX:           (770) 640-6213  24 hours               ?
? BBS:           (770) 641-8968  24 hours               ?
?                                                       ?
?????????????????????????????????????????????????????????



         _______
    ____|__     |                (R)
 --|       |    |-------------------
   |   ____|__  |  Association of
   |  |       |_|  Shareware
   |__|   o   |    Professionals
 -----|   |   |---------------------
      |___|___|    MEMBER

This program is produced by a member of the Association of Shareware
Professionals (ASP). ASP wants to make sure that the shareware
principle works for you. If you are unable to resolve a
shareware-related problem with an ASP member by contacting the
member directly, ASP may be able to help. The ASP Ombudsman can help
you resolve a dispute or problem with an ASP member, but does not
provide technical support for members' products. Please write to the
ASP Ombudsman at 545 Grover Road, Muskegon, MI 49442-9427, or send a
CompuServe message via CompuServe Mail to ASP Ombudsman 70007,3536.


          THE SEMWARE EDITOR JUNIOR SHAREWARE SOFTWARE LICENSE
          ????????????????????????????????????????????????????

This version of The SemWare Editor Junior (the "Software") is NOT public
domain or free software, but is being distributed as "shareware" for
EVALUATION PURPOSES ONLY.  Your use of this Software indicates your
agreement to the terms and conditions of this License.

                     COPYRIGHT, PROPRIETARY RIGHTS
                     ?????????????????????????????
The SemWare Editor Junior (TSE Jr.) Software is owned by SemWare
Corporation or its suppliers and is protected by United States copyright
laws and international treaty provisions. You may not reverse engineer,
decompile, disassemble, or create derivative works based on the Software
for any purpose other than creating an adaptation to the Software as an
essential step in its utilization for your own use. This Software
embodies valuable trade secrets proprietary to SemWare; you may not
disclose any information regarding the internal operations of this
Software to others.

                           USAGE RESTRICTIONS
                           ??????????????????
SemWare grants a limited license to individuals to use this shareware
Software for a 30-day evaluation period on a private, non-commercial
basis, for the express purpose of determining whether TSE Jr. is suitable
for their needs. At the end of this 30-day evaluation period, the
individual must either purchase a license from SemWare for continued use
of the Software, or discontinue using TSE Jr.

What does this mean? If you use this Software on a continued basis, you
must purchase a license for its use. TSE Jr. is NOT free, and we are not
giving away free copies. We are giving you the opportunity to try it
before paying for a license for continued use. It is that simple. Try it
for 30 days. Then either pay for it, or quit using it.

Paying for a license to continue using the Software product is not only
required, but also allows SemWare to provide support and updates, and
stay in business. Licensed users receive printed documentation; a
built-in spelling checker; a macro compiler/decompiler (QMAC);
additional utilities and configuration files; and a version of the
program that does NOT show the opening and closing shareware reminder
screens. Registration of the licensed copy entitles the registered user
to receive technical support (by phone, fax, our own support BBS, mail,
or various electronic services such as CompuServe or InterNet), and
makes them eligible for discounts on future versions.

Purchasing a license for The SemWare Editor Junior entitles you to use
the Software on any and all computers available to you, provided you do
not operate the Software on more than one computer or terminal at a time
and you do not operate the Software on a network or a multi-user system.
If you would like a network or multi-user license, please contact
SemWare for details.


                   DISTRIBUTION, COPYING RESTRICTIONS
                   ??????????????????????????????????
Individuals are granted a limited license to copy the SHAREWARE version
of TSE Jr. only for the trial use of other individuals in accordance
with the limitations identified in this License, and subject to the
following restrictions:

 1. You MAY NOT distribute the Software in connection with any other
    product or service.

 2. You MAY NOT make general use of the Software within a company,
    institution, or agency.

 3. You MAY NOT copy or distribute the Software for any consideration or
    "disk fee".

 4. You MAY NOT copy or distribute the Software in modified form.  (Any
    distribution must include ALL FILES supplied by SemWare with the
    shareware version of The SemWare Editor Junior, WITHOUT ALTERATION.)

 5. You MAY NOT distribute the Software documentation, in whole or in
    part, in printed form.

Operators of electronic bulletin board systems (Sysops) are permitted
and encouraged to post the shareware version of TSE Jr. for downloading
by their users, as long as the above conditions are met. Though a fee
may be charged for BBS access, NO FEE may be charged to specifically
access or download the TSE Jr. shareware files.

Non-profit computer-related User Groups may distribute the shareware
version of TSE Jr. provided the above conditions are met. However, such
User Groups MAY charge a NOMINAL fee to cover the cost of the disk and
copying of the Software.

Disk vendors MUST obtain written permission from SemWare before
distributing the shareware version of TSE Jr. Certain restrictions
apply. Generally, ASP approved vendors are granted permission. For
further details, see VENDOR.DOC.


                          WARRANTY DISCLAIMER
                          ???????????????????

SEMWARE PROVIDES THE SHAREWARE VERSION OF THE SEMWARE EDITOR JUNIOR "AS
IS" AND WITHOUT ANY WARRANTY. TO THE EXTENT PERMITTED UNDER APPLICABLE
LAW, SEMWARE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT
NOT LIMITED TO, ANY IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR A
PARTICULAR PURPOSE. SPECIFICALLY, SEMWARE MAKES NO REPRESENTATION OR
WARRANTY THAT THE SOFTWARE IS FIT FOR ANY PARTICULAR PURPOSE.

SEMWARE SHALL NOT BE LIABLE FOR ANY DAMAGES RESULTING FROM THE USE OF
THIS SOFTWARE, INCLUDING BUT NOT LIMITED TO, LOSS OF PROFIT, DATA OR USE
OF THE SOFTWARE, OR INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL
DAMAGES OR OTHER SIMILAR CLAIMS, EVEN IF SEMWARE HAS BEEN SPECIFICALLY
ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE
EXCLUSION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THE FOREGOING
LIMITATION MAY NOT APPLY TO YOU.


                       U. S. GOVERNMENT LICENSEES
                       ??????????????????????????

If you are acquiring the Software on behalf of any unit or agency of the
United States Government, the following provisions apply:

The Government acknowledges SemWare's representation that the Software
and its documentation were developed at private expense and no part of
same is in the public domain.

The Government acknowledges SemWare's representation that the Software
is "Restricted Computer Software" as that term is defined in Clause
52.227-19 of the Federal Acquisition Regulations (FARs) and is
"Commercial Computer Software" as that term is defined in Subpart 27.401
of the Department of Defense Federal Acquisition Regulation Supplement
(DFARS).

The Government agrees that:

   (i) if the Software is supplied to the Department of Defense (DoD),
   the Software is classified as "Commercial Computer Software" and the
   Government is acquiring only "restricted rights" in the Software and
   its documentation as that term is defined in Clause
   252.227-7013(c)(1)(ii) of the DFARS, and

   (ii) if the Software is supplied to any unit or agency of the United
   States Government other than the DoD, the Government's rights in the
   Software and its documentation will be as defined in Clause
   52.227-19(c)(2) of the FARs.

RESTRICTED RIGHTS LEGEND.  Use, duplication or disclosure by the U.S.
Government is subject to restrictions as set forth in subparagraph
(c)(1)(ii) of the Rights In Technical Data and Computer Software clause
at DFARS 252.227-7013.  SemWare Corporation, 4343 Shallowford Road,
Suite C3A, Marietta, Georgia 30062-5022, U.S.A.


                         EXPORT LAW ASSURANCES
                         ?????????????????????

You acknowledge and agree that the Software is subject to restrictions
and controls imposed by the United States Export Administration Act (the
"Act") and the regulations thereunder. You agree and certify that
neither the Software nor any adaptation thereof is being or will be
acquired, shipped, transferred or reexported, directly or indirectly,
into any country prohibited by the Act and the regulations thereunder,
nor will it be used for any purpose prohibited by the same.


                  GOVERNING LAW AND GENERAL PROVISIONS
                  ????????????????????????????????????

This License and Warranty Disclaimer shall be construed, interpreted and
governed by the laws of the State of Georgia, U.S.A. If any provision is
found void, invalid or unenforceable, it will not affect the validity of
the balance of this License and Warranty Disclaimer which shall remain
valid and enforceable according to its terms. This License and Warranty
Disclaimer may only be modified in writing signed by you and a
specifically authorized representative of SemWare. All rights not
specifically granted in this License are reserved by SemWare.


                          ORDERING INFORMATION
                          ????????????????????

Purchasing a license for TSE Jr. allows you to use the product on a
regular and/or continuing basis. Registration of your licensed copy of
TSE Jr. entitles you to technical support from SemWare, discounts on
updates, and access to the Registered User area of our support BBS
(770/641-8968, <N81>, 1200/2400/9600 baud, 24 hours a day).

With your purchase, you will receive: a licensed copy of TSE Jr. V4.0
with a 90-day limited warranty; a bound, indexed manual; a built-in
spelling checker; a macro compiler/decompiler (QMAC); and additional
utilities for use with TSE Jr.

We offer discounts to educational institutions, full-time students, BBS
sysops, US and Georgia government agencies, and various approved
Computer-related User Groups. Students must include proof of full-time
student status (photocopy of current registration slip or student ID
card). BBS sysops must supply the name and number of their BBS, along
with any other relevant information. User Groups must be members of our
SemWare Supporter program. Call for details.

All prices and discounts are subject to change without notice.


MULTI-USER LICENSES AND QUANTITY PURCHASES
??????????????????????????????????????????
All corporate, business, government, educational, or other commercial,
public, or private users of TSE Jr. must be licensed. We offer quantity
discounts as well as multi-user licensing. Please call or write for more
information.


ORDERS OUTSIDE THE U.S.A
????????????????????????
Please use your MasterCard, VISA, American Express, or Discover card
when ordering, or send a check drawn on a US bank payable in US dollars.


     ***  The SemWare Editor Junior version 4.0, October 1995  ***
                   * SINGLE-USER LICENSE ORDER FORM *


MAIL: SemWare Corporation                FAX: (770) 640-6213   24 hours
      4343 Shallowford Rd, Suite C3A     BBS: (770) 641-8968   24 hours
      Marietta, GA  30062-5022  USA      CIS: 75300,2710
                                         InterNet: sales@semware.com

PHONE (Orders ONLY): (800) 467-3692      OTHER VOICE CALLS: (770) 641-9002
         Inside USA, 9am-5pm ET                               9am-5pm ET

==========================================================================

____ TSE Jr. V4.0 with printed manual ........... @ $59.00 ea  $ ______

SHIPPING (each copy) .... US/Canada/Mexico: $5; Overseas: $12  $ ______

PURCHASE ORDERS under $100.00, add $6 Billing Fee ...........  $ ______
    (Does NOT apply to PREPAID Check or Charge Card orders)

                                                     SUBTOTAL  $ ______

GEORGIA RESIDENTS please add Sales Tax ................  @ 5%  $ ______

TOTAL  (U.S. Dollars drawn on U.S. Bank, payable to SemWare)   $ ______

            NOTE:  Software is provided on 3-1/2" diskette.

--------------------------------------------------------------------------

Payment by:  ( )CHECK   ( )VISA   ( )MC   ( )AMEX   ( )DISCOVER
             ( )PO#_____________ (copy attached)

Name: _____________________________________________________________

Company (ONLY if company address):_________________________________

Address: __________________________________________________________

       : __________________________________________________________

       : __________________________________________________________

Voice Phone: _______________________    FAX: ______________________

Card #: _________________________________ Exp. Date: ______________

Signature of cardholder: __________________________________________



THE SEMWARE EDITOR JUNIOR SOFTWARE IS LICENSED ONLY IN ACCORDANCE WITH
THE SEMWARE LICENSE AGREEMENT THAT ACCOMPANIES THE SOFTWARE.

Prices subject to change without notice. Call to confirm current prices.

Contact us about quantity discounts and multi-user licenses, as well as
discounts for full-time students, BBS sysops, and approved User Groups.

TABLE OF CONTENTS
??????????????????????????????????????????????????????????????????????

INTRODUCTION
FEATURES
SYSTEM REQUIREMENTS
INSTALLATION
     Tasks to Perform Following Installation
     Setting Up the Editor on a Laptop System

1. USER'S GUIDE
     QUICK START
       Getting Started
       In the Editor
       Getting Out
     MENUS
     THE STATUSLINE
     PROMPTS
     USING A MOUSE
       Mouse Equipment
       General Use of the Mouse
       Using the Pull-Down Menus
       Positioning the Cursor and Scrolling Text
       Marking a Block
       Using the Pop-Up Mouse Menu
       Working with Windows
       Summary of Mouse Operations
     FILES
       Creating New Files
       Loading Existing Files
       Locating a File on Disk
       Changing the Current Directory from within the Editor
       Invoking the Editor at a Specific Line Number
       Multiple Files:  The Ring
       Saving Files and Exiting
       Read-Only Files
     VIEWING AND GETTING AROUND IN THE TEXT
       Cursor Movement
         Moving Through a File
         Moving Around on the Screen
         Moving By Lines and Characters
       Using Windows
         Creating Windows
         Switching Windows
         Changing Window Size
         Closing Windows
         Synchronized Scrolling in Windows
     FINDING AND REPLACING TEXT
       Finding Text
       Replacing Text
     COPYING, MOVING, CHANGING, AND DELETING TEXT
       Block Commands
         Marking and Unmarking a Block
         CUA-Style Block Marking
         Manipulating Blocks Directly
         Manipulating Blocks Using Scrap Buffers
         Manipulating Blocks Using Scratch Buffers
         Accessing the Microsoft Windows Clipboard
         Examples of Block Commands
       Non-Block Commands
         Adding Text
         Copying Text
         Moving Text
         Deleting And Undeleting Text
         Changing Case
         Sorting
       The Kill Buffer - A Safety Net
     MACROS
     PRINTING
       Print Formatting
       Formfeeds
     THE SHELL AND DOS COMMANDS
       Swapping, [JR] Shell Indicator
     WORD-PROCESSING COMMANDS
     MODES

2. CUSTOMIZING THE EDITOR
     INITIATING THE CONFIGURATION PROGRAM
     THE CONFIGURATION MENU
     ADVANCED OPTIONS
     COLORS/SCREEN OPTIONS
     GENERAL OPTIONS
     THE HELP SCREEN
     KEYBOARD CONFIGURATION
       The Keyboard Definition File
       Creating a Keyboard Definition File
     PRINTER OPTIONS
     TAB SETTINGS

3. COMMAND REFERENCE


INTRODUCTION
??????????????????????????????????????????????????????????????????????

The SemWare Editor Junior (TSE Jr.), formerly called QEdit, is a
full-screen text editor for the IBM PC and compatible computers. TSE Jr.
is intended for use by those who want a fine-tuned, versatile DOS editor
that is inexpensive, and operates efficiently in limited resources.
(For those who want a more powerful editor that includes virtual-memory
support, a full-featured programming language, and wildcard search and
replace capabilities, we offer The SemWare Editor Professional.)

This manual describes the use and operation of TSE Jr., and includes a
user's guide, a chapter on customizing the editor, and a reference
section for editor commands.  A separate file, MACRO.DOC, contains
information about keyboard macros and the editor's macro language.

TSE Jr. is a text editor as opposed to a word processor.  This means
that most of its features are geared toward creating and maintaining
program source code and other text files.  However, it can also be used
like a word processor to write documents or letters since it includes
many word-processing capabilities.


The editor was developed with these goals in mind:


  operate quickly, especially in these areas:

   - Initially loading a file for editing.
   - Displaying/updating the screen.
   - Moving through the editing window.
   - Searching for text.
   - Saving a file back to disk.




   - Optional "pull-down" menus.
   - Customizable Help Screen.
   - Complete execution from a single file (Q.EXE).
   - Pop-up file directory and picker.



  size as compact as possible.  Even though memory is getting cheaper
  all the time, we do not want the editor to require any more memory
  than absolutely necessary.

TSE Jr. is available in three versions:  the standard DOS version, the
memory-resident DOS version (TSE Jr./Mem-Res), and the OS/2 version (TSE
Jr./2).  All three versions offer the same rich set of features and
behave in much the same manner.  This shareware version is based on the
standard DOS version of TSE Jr.


FEATURES
??????????????????????????????????????????????????????????????????????

The editor offers a number of powerful features for editing text, both
easily and quickly.  To put that power at your fingertips, the editor:

 * Is very fast!

 * Is highly customizable.  The editor can be easily configured the way
   you like.  You can configure ALL of the special keys on the keyboard
   (Alt, Ctrl, and function keys; <Home>, <PgUp>, etc.), as well as the
   colors, screen appearance, and many other options.

 * Is easy to use.  An optional "pull-down" menu provides ready access
   to the editor's commands, and the Help Screen can be customized for
   your own needs.

 * Can be used with a mouse.  You can optionally perform scrolling,
   window, block, and menu operations using your mouse.

 * Is compact.  Even with all these features, the editor requires less
   than 70K of disk space.

 * Utilizes all available conventional DOS memory (up to 640K).  Edit
   files as large as your computer's memory will allow.

 * Allows multi-file editing.  The number of files you can edit is
   limited only by available conventional memory.

 * Accommodates editing of files with a line length of up to 2032
   characters.

 * Enables you to view files through multiple horizontal, resizable
   windows.  You can have multiple views of the same file or view a
   different file in each window.

 * Allows you to simultaneously scroll the text in multiple windows
   (with synchronized scrolling).

 * Offers a utility to locate a file when you do not remember the
   directory in which it exists, or you do not recall the exact name of
   the file.

 * Provides up to 99 scratch buffers for cut-and-paste or template
   operations.  You can even select a buffer from a pick list of your
   current scratch buffers.

 * Allows you to temporarily exit to DOS (or a DOS shell) and use DOS
   commands from within the editor.  Optionally, the editor can swap to
   disk or expanded memory to allow even the largest programs (such as
   compilers) to run without exiting the editor.

 * Allows you to copy or paste text directly between the current file
   and the Microsoft Windows Clipboard (or the OS/2 Clipboard, in the
   OS/2 version of the editor).

 * Supports numerous character, line, and column Block operations.  If
   you prefer, you can configure the editor to recognize CUA-style
   Block marking (using the shifted cursor keys).

 * Saves deleted words, lines, and Blocks in a deletion buffer for
   later recall.

 * Will load multiple files from the DOS command line, with or without
   wildcard characters.

 * Allows you to specify up to six default file extensions for use when
   loading files and determining tab settings.

 * Provides line-drawing capability to create diagrams and tables.

 * Supports enhanced (101-key) keyboards.

 * Supports EGA 43-line mode, and VGA 28-line and 50-line modes.

 * Offers a built-in Sort command, with options for ascending,
   descending, and case-insensitive sorting.

 * Includes many helpful options for finding and replacing text,
   allowing you to:  incrementally search for a string; perform a
   "global" find or replace (throughout the entire file); perform a
   "local" find or replace (limited to a marked Block); and anchor a
   find or replace to the beginning or end of a line or Block.

 * Provides the ability to shift entire Blocks using the tab left and
   right commands (TabLt and TabRt).

 * Allows you to fill a Block with a specified character (FillBlock
   command).

 * Offers an optional large, flashing block cursor as a configuration
   option.  This is especially helpful for use on laptop computers.

 * Provides a pop-up ASCII chart that allows you to directly insert the
   selected character into your text.

 * Allows you to display a visual directory tree to change the current
   directory from within the editor.

 * Includes various tab-handling options, including variable, smart,
   and fixed tabs.


For your word-processing needs, the editor:

 * Contains a fully-integrated Spell Checker (in the registered version)
   that suggests spellings for misspelled words (less than 200K
   additional disk space required to load dictionary).

 * Provides wordwrap and paragraph-reformat capabilities.

 * Includes options to change the case of characters (Flip, Lower,
   Upper commands).

 * Gives you the ability to center the text on a line (CenterLine
   command).

 * Includes commands that allow you to swap adjacent characters, words,
   and lines.

 * Offers various printing options, such as specification of top and
   bottom print margins (SetPrintBotMargin, SetPrintTopMargin
   commands), assignment of the print device, ability to adjust line
   spacing, and inclusion of line numbers.

 * Allows you to configure the date and time formats.

 * Includes an option to display the hex and decimal values of the
   current character on the StatusLine.


To further enhance the editor's operation, the macro facility:

 * Allows you to create macros that will execute a series of commands
   and keystrokes by pressing a single key.

 * Offers a simple macro scripting language.

 * Includes the ability to load and/or execute macros from the DOS
   command line, as well as an option to execute an automatic startup
   macro.

 * Supports conditional logic (Jump, JTrue, JFalse commands).


To assist you in your programming tasks, the editor:

 * Provides "C mode", which utilizes automatic indentation for
   C-language programming.

 * Locates matching braces and parentheses, which is very useful for
   entering and maintaining source code.

 * Allows you to execute command-line compilers from within the editor,
   using the macro facility.

 * Offers a DOS command-line option (-n) for jumping to a specific line
   number within a file upon loading.



SYSTEM REQUIREMENTS
??????????????????????????????????????????????????????????????????????

The editor requires an IBM PC or 100% compatible computer.  MINIMUM
requirements are:










  spell-checker dictionary is installed, in the registered version).


  are necessary for operating the editor.  (Note:  Additional files are
  required to use the spell checker that is included in the registered
  version.)



INSTALLATION
??????????????????????????????????????????????????????????????????????

Tasks to Perform Following Installation
???????????????????????????????????????

If you placed the editor in a directory that is not already listed in
your path, you may want to modify the PATH statement in your
AUTOEXEC.BAT to include the editor directory.  This allows you to run
the editor from any directory on your machine.

Please review the contents of the READ.ME file included with the
software.  This file contains important information (usage information,
new features, changes, etc.) that became available after this manual was
created.

The READ.ME file also contains a complete list of the files included
with the software.  A partial list is included here:

TSE Jr.      File Description
???????????  ??????????????????????????????????????????
Q.EXE        The SemWare Editor Junior program.  Once configured, this
             is the only file needed to run the basic editor.

             Note:  Configuration of the editor requires additional
                    files.

QCONFIG.EXE  The configuration program.  This program allows you to
             customize the editor.

QCONFIG.DAT  The default Keyboard Definition file. Used by QCONFIG.EXE.

QHELP.TXT    The default Help text.  Used by QCONFIG.EXE.


Note:  After you have tried TSE Jr., you may wish to permanently
       customize some of the options.  The editor comes with a
       configuration program, QCONFIG, that makes customizing the editor
       easy.  See Chapter 2, "Customizing the Editor," for instructions.


Setting Up the Editor on a Laptop System
????????????????????????????????????????

If you have a laptop computer (one with an LCD or plasma display), you
should set your screen parameters before using the editor.  For the best
operation, enter MODE BW80 at the DOS command line before running the
editor.

Alternatively, you can install the editor for a black-and-white screen
with the customization program, QCONFIG.  Refer to Chapter 2,
"Customizing the Editor."  With this customization program, you should
choose "1" (Monochrome) from the "Colors/screen" options, when prompted
with "Startup attribute set:".


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   Please note that one of the MAJOR features of the editor   ?
?   is configurability.  You can customize the colors, the     ?
?   keys, the on-screen appearance of the editor, and many     ?
?   other functions.                                           ?
?                                                              ?
?   By spending just a small amount of time reviewing Chapter  ?
?   2 on configuration, you can benefit greatly through        ?
?   customizing the editor to your personal preferences.       ?
????????????????????????????????????????????????????????????????



CHAPTER 1.  USER'S GUIDE
??????????????????????????????????????????????????????????????????????

QUICK START
??????????????????????????????????????????????????????????????????????

In the editor, you can edit any text file with a few simple commands.
The next three sections briefly describe the quickest way possible to
load, edit, and save a file.


Getting Started
???????????????

Using the editor is simple and straightforward.

To initiate the editor, type "Q <Enter>".  The editor will respond with
a prompt for the name of the file to be edited.

????????????????????????????????????????????????????????????????
?  File(s) to edit:                                            ?
?                                                              ?
????????????????????????????????????????????????????????????????

Enter the filename.  The filename may include the full path designation.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   At any "File(s) to edit:" prompt, you may use wildcard     ?
?   characters (* or ?) to obtain a list of matching files in  ?
?   the directory.                                             ?
????????????????????????????????????????????????????????????????


You may optionally include the filename on the DOS command line in order
to bypass this prompt.  For example, from the DOS command line, type:

    q  <filename to edit>  <Enter>


In the Editor
?????????????

Once you are in the editor, the cursor movement keys (Left, Right, Up,
Down, Home, End, ...) allow you to move around in the text.

To obtain a Help Screen, simply press <F1>.  Pressing <F1> again (or any
other key) returns you to the text.

To obtain a menu of editing commands, press <Esc>.  You may then use the
cursor movement keys to position the cursor bar over the desired
command.  Press <Enter> to execute the command.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   Within a prompt for a command, press <Esc> to cancel the   ?
?   command (and the prompt).                                  ?
????????????????????????????????????????????????????????????????


Getting Out
???????????

The easiest way to get out of the editor and save all the work you have
done is to enter <Alt F> <G>.


MENUS
??????????????????????????????????????????????????????????????????????

The editor provides an easy-to-use "pull-down" style menu system.  The
menu system is very helpful while learning to use the editor.  It is
also handy for executing seldom-used commands.

To access the menus and execute a command:

1. Press <Esc>.  The main menu is displayed at the top of the screen.
   The main menu consists of a list of sub-menu items.

2. Select a sub-menu item.  To do this, either move the cursor bar to
   the desired item and press <Enter>; or type the highlighted
   character, or "quick-key," of the desired item.

3. Execute a command.  This is done in the same manner as selecting the
   sub-menu items.

Here is an example of the pull-down style menu system.  The User is
about to execute the CopyBlock command.

???????????????????????????????????????????????????????????????????
?File  Window ?Block? Search  Print  Macro  Editing  Other  Quit  ?
???????????????????????????????????????????????????????????????????
             ? Mark Line         ?
             ? Mark Character    ?
             ? Mark Column       ?
             ? Mark Begin        ?
             ? Mark End          ?
             ? UnMark            ?
             ?????????????????????
             ??Copy Block?????????
             ? Move Block        ?
             ? Delete Block      ?
             ? Copy Over         ?
             ? Fill...           ?
             ?????????????????????
             ? Sort              ?
             ? Ignore Case [Off] ?
             ? Descending  [Off] ?
             ?????????????????????


As an added convenience, the default configuration of the editor allows
you to directly access the File, Print, and Quit sub-menus by pressing
<Alt F>, <Alt P>, or <Alt Q>, respectively.

You can execute many editing commands using the menus.  As you become
more familiar with the editor, you may wish to use the <Ctrl>, <Alt>,
and function key assignments, instead of the menus, to execute commands
more quickly.


THE STATUSLINE
??????????????????????????????????????????????????????????????????????

At the top of the editing screen is the StatusLine.  The StatusLine
constantly displays information about the file you are currently
editing.

The StatusLine is shown below with a description of the information
displayed.

?????????????????????????????????????????????????????????????????????
?L 15   C 15   IAWRBS  411K     *c:\semware\status.doc        20h,32?
?????????????????????????????????????????????????????????????????????
   ?      ?    ??????   ?       ?      ?   ???????????????????????
   ?      ?    ??????   ?       ?      ?   ?
   ?      ?    ??????   ?       ?      ?   ?
   ?      ?    ??????   ?       ?      ?   ???? The hex and decimal
   ?      ?    ??????   ?       ?      ?        value for the character
   ?      ?    ??????   ?       ?      ?        at the cursor position,
   ?      ?    ??????   ?       ?      ?        if this option is ON.
   ?      ?    ??????   ?       ?      ?
   ?      ?    ??????   ?       ?      ???? The path and name of the
   ?      ?    ??????   ?       ?            file you are editing
   ?      ?    ??????   ?       ?
   ?      ?    ??????   ?       ???? *) Indicates file has been changed
   ?      ?    ??????   ?
   ?      ?    ??????   ?????? Amount of available memory
   ?      ?    ??????           (DOS versions only)
   ?      ?    ??????
   ?      ?    ????????? S) Indicates Synchronized Scrolling mode is ON
   ?      ?    ?????
   ?      ?    ???????? B) Indicates Box Drawing mode is ON
   ?      ?    ????
   ?      ?    ??????? R) Indicates Macro Recording is ON
   ?      ?    ???
   ?      ?    ?????? W) Indicates WordWrap mode is ON
   ?      ?    ??
   ?      ?    ????? A) Indicates AutoIndent mode is ON
   ?      ?    ?
   ?      ?    ???? I) Indicates Insert mode is ON
   ?      ?
   ?      ????? The current cursor column number
   ?
   ????? The current cursor line number


For more information on Insert, AutoIndent, WordWrap, and Box Drawing,
refer to the "Modes" section in this chapter.  For more information on
macro recording, see the file MACRO.DOC.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   The StatusLine may be configured to appear at the bottom   ?
?   of the screen.  Refer to the "Colors/Screen Options"       ?
?   section of Chapter 2 for more information.                 ?
????????????????????????????????????????????????????????????????



PROMPTS
??????????????????????????????????????????????????????????????????????

When the editor needs information from the user (such as the name of a
file to edit, a search string, etc.), a prompt is issued.  The prompt
consists of a message, telling what information is requested, and an
area for the user to enter a response.  The following commands are
available in prompts (if assigned to a key):


AsciiChart           CursorLeft       DirTree      Paste
BackSpace            CursorRight      EndLine      Pause
BegLine              DelCh            Escape       Return
CopyBlock            DelLine          Literal      ToggleInsert
CurrentFilename      DelToEol         LocateFile


Other commands are simply ignored.

Note:  Execute DelLine (<Ctrl Y> or <Alt D>) to clear the response area
       of any prompt.


USING A MOUSE
??????????????????????????????????????????????????????????????????????

You can optionally use the mouse to perform a wide range of functions
within the editor, including selecting items from a menu or a pick list,
positioning the cursor on the screen, scrolling text, marking and
manipulating Blocks, and creating and moving between windows.


Mouse Equipment
???????????????

To use a mouse in the editor, the mouse must be enabled.  This is done
by setting the configuration option "Enable mouse processing" to <Y>.
(This is the default setting for this option.  Refer to the "Advanced
Options" section of Chapter 2.)

To fully use the mouse capabilities, the editor must also be configured
to display a full border around each window on the screen.  This is
because the mouse uses the border area to scroll text and perform many
window operations.  To display a border around each window, set the
configuration option "Do you want the display boxed" to <Y>.  (Refer to
the "Colors/Screen Options" section of Chapter 2.)

When the editor detects that a mouse is present and enabled, the
following special mouse-sensitive areas are included in the window
borders.  (These areas, called mouse "hot spots", are used by the mouse
to perform particular operations, described later in this section.)


  vertical scrollbar is placed in each right-hand border.


  the  symbol is located at the right.


   symbol is located at the bottom.


  and  symbols, and includes an ? elevator symbol.  This horizontal
  elevator moves within the elevator shaft according to your relative
  column position in the current file.


  the  and  symbols, and includes an ? elevator symbol.  This vertical
  elevator moves within the elevator shaft according to your relative
  line position in the current file.


  StatusLine of each window when multiple windows are open.  When the
  windows are non-zoomed, the [] symbol is displayed in each window.
  When a window is zoomed, the [] symbol is displayed in the zoomed
  window.


  each window when multiple windows are open.


If desired, you can configure the editor for left-handed use of the
mouse (rather than right-handed).  To do this, set the configuration
option "Left-handed mouse" to <Y>.  (Refer to the "Advanced Options"
section of Chapter 2.)

Additional configuration options have an effect on the behavior of the
mouse in the editor.  Refer to the "Advanced Options" section of Chapter
2 for more information.


General Use of the Mouse
????????????????????????

To initiate an action with the mouse, position the mouse pointer at the
appropriate place on the screen, and then press one of the buttons on
the mouse (either the <LeftBtn> or <RightBtn>), as indicated by the
mouse command assignments described later in this section.  Depending on
the desired action, you either "click," "press and hold," or "drag" the
mouse, as follows:



  For certain commands, you execute the command one time only by
  clicking the mouse button.  For some commands, you must click the
  indicated mouse button two or three times, as instructed for that
  command.  For multiple clicks, the mouse pointer must remain at the
  same location while the button is repeatedly clicked the specified
  number of times.


  period of time before releasing it.  The amount of time that the
  button must be held is determined by the configuration option
  "Mouse hold time".  (Refer to the "Advanced Options" section of
  Chapter 2.)

  For commands that are invoked by clicking a mouse button, a command
  can be executed multiple times by pressing and holding the button. The
  command is executed repeatedly until the mouse button is released. The
  value assigned to the configuration option "Mouse repeat-delay factor"
  determines the number of times that a command is repeated while the
  button is held.  (Refer to the "Advanced Options" section of Chapter
  2.)


  hold down the button as you drag the mouse pointer to another location
  on the screen.  Do not release the button until the mouse pointer is
  positioned at the desired location.

The action caused by the mouse is determined by the location of the
mouse pointer when a mouse button is pressed:


  menu.


  same as pressing <Enter>, and clicking the <RightBtn> is the same a
  pressing <Esc>.

  For entries in menus and pick lists, the position of the mouse pointer
  determines the entry that is selected when you click the <LeftBtn>.


  <LeftBtn> are used to position the editing cursor or to mark a Block.
  (A few of the Block-marking commands are executed by pressing the
  <LeftBtn> in combination with the <Ctrl> or <Alt> keys on the
  keyboard.)


  pick lists are active), clicking the <RightBtn> pops up a special
  Mouse Menu of Block-related commands.


  create, resize, or switch windows.  The special mouse symbols and
  scrollbars ("hot spots") in the window borders are used to execute
  specific scrolling or window commands.


Using the Pull-Down Menus
?????????????????????????

To execute a command or set an option from the pull-down menus using the
mouse, you can follow these steps:


  StatusLine and clicking the <LeftBtn>.


  the item and clicking the <LeftBtn>.


  pointer on the desired item and clicking the <LeftBtn>.

To exit from the pull-down menus, click the <RightBtn> until the main
menu is removed from the screen, or move the mouse pointer outside the
menu area and click the <LeftBtn>.


Positioning the Cursor and Scrolling Text
?????????????????????????????????????????

You can use the mouse to position the cursor or scroll text on the
screen, as described by the following.  Note that the special symbols, 
  , and the horizontal and vertical elevators along the scrollbars
are used for scrolling.



  Place the mouse pointer in the text of the current window where you
  want the cursor to be positioned, and click the <LeftBtn>.



  Place the mouse pointer on the  symbol.  To scroll down one line,
  click the <LeftBtn>.  To repeat scrolling, press and hold the
  <LeftBtn>; scrolling continues until the button is released, or the
  end of the file is reached.



  Place the mouse pointer on the  symbol.  To scroll up one line, click
  the <LeftBtn>.  To repeat scrolling, press and hold the <LeftBtn>;
  scrolling continues until the button is released, or the beginning of
  the file is reached.



  Place the mouse pointer on the  symbol.  To scroll left one column,
  click the <LeftBtn>.  To repeat scrolling, press and hold the
  <LeftBtn>; scrolling continues until the button is released, or column
  1 is reached.



  Place the mouse pointer on the  symbol.  To scroll right one column,
  click the <LeftBtn>.  To repeat scrolling, press and hold the
  <LeftBtn>; scrolling continues until the button is released, or the
  maximum line length is reached.



  Place the mouse pointer on the scrollbar below the vertical elevator
  (?), within the vertical elevator shaft.  To scroll down one page,
  click the <LeftBtn>.  To repeat scrolling, press and hold the
  <LeftBtn>, keeping the mouse pointer below the elevator; scrolling
  continues until the button is released, or the elevator joins the
  mouse pointer, or the end of the file is reached.



  Place the mouse pointer on the scrollbar above the vertical elevator
  (?), within the vertical elevator shaft.  To scroll up one page, click
  the <LeftBtn>.  To repeat scrolling, press and hold the <LeftBtn>,
  keeping the mouse pointer above the elevator; scrolling continues
  until the button is released, or the elevator joins the mouse pointer,
  or the beginning of the file is reached.



  Place the mouse pointer on the scrollbar to the left of the horizontal
  elevator (?), within the horizontal elevator shaft.  To scroll left by
  one TabWidth, click the <LeftBtn>.  To repeat scrolling, press and
  hold the <LeftBtn>, keeping the mouse pointer to the left of the
  elevator; scrolling continues until the button is released, or the
  elevator joins the mouse pointer, or column 1 is reached.



  Place the mouse pointer on the scrollbar to the right of the
  horizontal elevator (?), within the horizontal elevator shaft.  To
  scroll right by one TabWidth, click the <LeftBtn>.  To repeat
  scrolling, press and hold the <LeftBtn>, keeping the mouse pointer to
  the right of the elevator; scrolling continues until the button is
  released, or the elevator joins the mouse pointer, or the maximum line
  length is reached.


Marking a Block
???????????????

The following describes how to use the mouse to mark a Block of text.



  Place the mouse pointer on the line to be marked.  Click the <LeftBtn>
  three times (without moving the mouse pointer).



  Place the mouse pointer on the beginning line to be marked.  Press and
  hold <Alt> (on the keyboard) and the <LeftBtn>.  Then drag the mouse
  to the desired ending line, and release <Alt> and the <LeftBtn>.



  Place the mouse pointer on the beginning character to be marked.
  Press and hold the <LeftBtn>.  Then drag the mouse to the desired
  ending character, and release the <LeftBtn>.



  Place the mouse pointer on the beginning character to be marked.
  Press and hold <Ctrl> (on the keyboard) and the <LeftBtn>.  Then drag
  the mouse to the desired ending position, and release <Ctrl> and the
  <LeftBtn>.



  Place the mouse pointer on a character in the word to be marked.
  Click the <LeftBtn> twice (without moving the mouse pointer).


When the ending position for a Block is not displayed on the screen, you
can scroll the text in the necessary direction by dragging the mouse
pointer outside the current window on the appropriate side.  Then drag
the mouse pointer back inside the current window to stop scrolling and
continue marking.

Note:  To drag the mouse pointer outside a window, there must be a
       border, other editing window, or StatusLine onto which to move
       the mouse pointer; otherwise, the file cannot be scrolled in that
       direction.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   To unmark a Block using the mouse, place the mouse pointer ?
?   on a blank character on the screen and click the <LeftBtn> ?
?   twice.  The editor attempts to mark a word at that         ?
?   location.  Because the blank character is not a word, the  ?
?   editor fails to mark a Block, though it succeeds in first  ?
?   unmarking the existing Block.                              ?
????????????????????????????????????????????????????????????????


Using the Pop-Up Mouse Menu
???????????????????????????

A special Mouse Menu allows you to use the mouse to easily display a
menu of Block-related commands.  To pop-up the Mouse Menu with the mouse
while in editing mode, click the <RightBtn> (with no menus, prompts, or
pick lists active).  You can then select one of the displayed
Block-related commands by placing the mouse pointer on the desired item
and clicking the <LeftBtn>.

To remove the Mouse Menu, click the <RightBtn> until the Mouse Menu is
removed from the screen, or move the mouse pointer off the Mouse Menu
and click the <LeftBtn>.


Working with Windows
????????????????????

This section describes how to use the mouse to create, switch, resize,
and close windows.



  Place the mouse pointer on the left border of the window to be split
  and click the <LeftBtn> twice.



  Place the mouse pointer in the desired window, and click the
  <LeftBtn>.  To switch to another window and also position the editing
  cursor at the mouse position in that window, press and momentarily
  hold the <LeftBtn>.



  Place the mouse pointer on the StatusLine of the window to be resized.
  (Note that you cannot resize a window using a StatusLine located at
  the very top or very bottom of the screen.)  Press and hold the
  <LeftBtn>, so that a resizing bar appears.  Then drag the resizing bar
  to the desired location and release the <LeftBtn>.



  Place the mouse pointer on the [] symbol in the StatusLine of the
  window to be zoomed, and click the <LeftBtn>.  While the window is
  zoomed, the [] symbol is replaced by the [] symbol.



  Place the mouse pointer on the [] symbol and click the <LeftBtn).
  The previous windows are restored to the screen, along with the []
  symbol.



  Place the mouse pointer on the [?] symbol in the StatusLine of the
  window to be closed, and click the <LeftBtn>.


Summary of Mouse Operations
???????????????????????????

?????????????????????????????????????????????????????????????????
                                               Mouse Pointer
Block Marking           Mouse Button              Location
??????????????    ???????????????????????    ??????????????????

Word              Click <LeftBtn> 2 times    Word in any window

Single line       Click <LeftBtn> 3 times    Text in any window

Multiple lines    Drag <Alt LeftBtn>         Text in any window

Column            Drag <Ctrl LeftBtn>        Text in any window

Characters        Drag <LeftBtn>             Text in any window


?????????????????????????????????????????????????????????????????
 Cursor Movement
  and Scrolling       Mouse Button       Mouse Pointer Location
?????????????????   ???????????????   ???????????????????????????

Position cursor     Click <LeftBtn>   Text in current window

Scroll down:
  1 line            Click <LeftBtn>    symbol
  multi lines       Hold <LeftBtn>     symbol
  1 page            Click <LeftBtn>   Scrollbar below vertical ?
  multi pages       Hold <LeftBtn>    Scrollbar below vertical ?

Scroll up:
  1 line            Click <LeftBtn>    symbol
  multi lines       Hold <LeftBtn>     symbol
  1 page            Click <LeftBtn>   Scrollbar above vertical ?
  multi pages       Hold <LeftBtn>    Scrollbar above vertical ?

Scroll left:
  1 column          Click <LeftBtn>    symbol
  multi columns     Hold <LeftBtn>     symbol
  1 TabWidth        Click <LeftBtn>   Scrollbar left of horiz. ?
  multi TabWidths   Hold <LeftBtn>    Scrollbar left of horiz. ?

Scroll right:
  1 column          Click <LeftBtn>    symbol
  multi columns     Hold <LeftBtn>     symbol
  1 TabWidth        Click <LeftBtn>   Scrollbar right of horiz. ?
  multi TabWidths   Hold <LeftBtn>    Scrollbar right of horiz. ?


?????????????????????????????????????????????????????????????????
  Menus, Prompts                                Mouse Pointer
  and Pick Lists          Mouse Button             Location
????????????????????    ????????????????    ?????????????????????

Pull down Main Menu     Click <LeftBtn>     StatusLine

Pop up Mouse Menu       Click <RightBtn>    Anywhere on screen

Select from Menu        Click <LeftBtn>     Menu / Pick List item
or Pick List

Accept StatusLine       Click <LeftBtn>     Anywhere in Prompt
or Prompt entry

Exit Menu               Click <RightBtn>    Anywhere on screen
                             OR
                        Click <LeftBtn>     Outside Menu area


Cancel/remove any       Click <RightBtn>    Anywhere on screen
Prompt or Pick List          OR
                        Click <LeftBtn>     Outside Prompt or
                                            Pick List


?????????????????????????????????????????????????????????????????
                                                 Mouse Pointer
     Windows              Mouse Button              Location
?????????????????   ????????????????????????   ??????????????????

Open                Click <LeftBtn> 2 times    Left window border

Switch window       Click <LeftBtn>            New window

Switch window and   Hold <LeftBtn>             Text of new window
position cursor

Resize              Drag <LeftBtn>             Window StatusLine

Zoom                Click <LeftBtn>            [] symbol

Unzoom              Click <LeftBtn>            [] symbol

Close               Click <LeftBtn>            [?] symbol


FILES
??????????????????????????????????????????????????????????????????????

Creating New Files
??????????????????

There are three different ways to create new files, ready for editing.

1. From the DOS command line, enter <Q> followed by one or more new
   filenames.  Each filename must be separated by a space.  For example,
   typing:

       q  file1  b:file2  \dir1\file3  <Enter>

   will create "file1" in the current directory, "file2" on disk drive
   B, and "file3" in the directory "dir1".


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   When specifying filenames, you may use full path           ?
?   designations if desired.                                   ?
????????????????????????????????????????????????????????????????


2. From the DOS command line, type "Q <Enter>".  The editor responds
   with the prompt:

   ?????????????????????????????????????????????????????????????
   ?  File(s) to edit:                                         ?
   ?                                                           ?
   ?????????????????????????????????????????????????????????????

   Enter one or more new filenames, each separated by a space.

3. From within the editor, execute the EditFile <Alt E> command. The
   above prompt will appear.  Again, you may enter one or more new
   filenames, each separated by a space.


Loading Existing Files
??????????????????????

Loading existing files works exactly like creating new files (in the
previous section) with two exceptions:





You can configure the editor to respond to wildcarded filename entries
in one of two ways:

1. To load all matching files into the editor.

2. To show all the matching filenames in a "pick" listing.  You can then
   use the cursor keys to find the file you want and press <Enter> to
   load it into the editor.

You can also configure the editor to use default file extensions, such
as "doc" and "pas" when entering filenames.  For more information on
configuring these options, refer to the "General Options" section of
Chapter 2.


In the default configuration of the editor, a handy macro for loading a
file has been assigned to <Ctrl ]>.  This macro will take the filename
at the current cursor position in the text, and load that file into the
editor.  For example, if you have the following text in a program source
file:

    #include "d:\tsejr\src\local.h"

you could position the cursor anywhere within the specified path and
filename, and press <Ctrl ]>.  The editor would then load that file and
make it the current file.


Locating a File on Disk
???????????????????????

The LocateFile command in the editor allows you to easily locate a file
when you do not remember the directory in which that file resides, or
you do not recall the exact name of the file.


  This command searches an entire drive for a specified filename.  A
  list of all matching filenames is displayed, allowing you to select an
  appropriate file to edit.

  When you execute this command, it prompts you for the filename for
  which to search.  A complete name or an ambiguous name (with DOS
  wildcard characters) can be specified.  By default, the current drive
  is searched.  However, a different drive can be searched by prefacing
  the filename with the drive name (such as, d:foo).  The default or
  specified drive is then searched, and all matching filenames are
  displayed in a pick list.  To select the desired file to edit,
  position the cursor bar on that filename in the pick list, and press
  <Enter>.  To remove the pick list (and terminate the command), press
  <Esc>.

If you assign LocateFile to a key, you can execute this command within
any "File(s) to edit:" prompt (such as displayed by the EditFile <Alt E>
command).


Changing the Current Directory from within the Editor
?????????????????????????????????????????????????????

The editor's DirTree command provides a very helpful visual means for
changing your current directory from within the editor.


  This command displays a pick list of all the drives on your system,
  along with a directory tree for the current drive.  The current drive
  or directory can be changed from this pick list.

  Assuming your current drive is the D: drive, and you also have A:, B:,
  C:, and E: drives available on your system, following is an example of
  what the directory tree pick list might look like when you execute
  this command:

  ????????? Dir Tree ??????????
  ?   A:                      ?
  ?   B:                      ?
  ?   C:                      ?
  ?   D:                      ?
  ?   ????TSEJR               ?
  ?   ?   ????MAC             ?
  ????????????DOC??????????????
  ?   ?   ????SPELL           ?
  ?   ?       ????TEMP        ?
  ?   ?       ????WORD        ?
  ?   ????TSEPRO              ?
  ?       ????DOC             ?
  ?       ????MAC             ?
  ?   E:                      ?
  ?????????????????????????????

  To switch to a different directory, move the cursor bar to the desired
  entry in the tree, and press <Enter>.

  To change to a different drive, move the cursor bar to the desired
  drive, and press <Enter>.  The selected drive becomes the current
  drive, and the directory tree for that drive is displayed in the pick
  list.

  To remove the directory tree pick list, press <Esc>.


Invoking the Editor at a Specific Line Number
?????????????????????????????????????????????

A DOS command-line option (-n) allows you to specify a line number in a
file on which to position the cursor when the file is loaded into the
editor.  From the DOS prompt type:

    q  <filename to edit>  -n<specific line number>

For example, to load file1 at line number 125, from the DOS command line
you would enter:

    q  file1  -n125

Or, if you prefer:

    q  -n125  file1


Multiple Files:  The Ring
?????????????????????????

The editor allows as many files as will fit into memory to be loaded at
the same time.  All of these files can then be edited by simply
switching back and forth between them without having to save and load
each file individually.  Switching between files is accomplished very
quickly and easily.

A simple explanation of how the editor handles multiple files will help
you in manipulating and editing multiple files.

All files that are loaded into the editor are maintained in a "ring".
As we describe each of the commands used to manipulate the files in the
ring, refer to the illustration below.

????????????????????????????????????????????????????????????????
?              ??????               ??????                     ?
?              ?    ?               ??????                     ?
?      ??????> ? A  ? <???<Ctrl K P>??B???<Alt N>              ?
?      ?       ?    ?               ??????      ?              ?
?      ?       ??????               ??????      ?              ?
?      v         ^                  <Alt E>     v              ?
?    ??????      ?                    ?       ??????           ?
?    ?    ?      ?                    ?       ?    ?           ?
?    ? F  ? <???????????????????????????????> ? C  ?           ?
?    ?    ?      ?                    ?       ?    ?           ?
?    ??????      ?                    ?       ??????           ?
?      ^         v                    v         ^              ?
?      ?       ??????               ??????      ?              ?
?      ?       ?    ?               ?    ?      ?              ?
?      ??????> ? E  ? <?????????? > ? D  ? <?????              ?
?              ?    ?               ?    ?                     ?
?              ??????               ??????                     ?
?                                                              ?
?                        The "Ring"                            ?
????????????????????????????????????????????????????????????????

In the ring we see that six files have been loaded into the editor.  You
can, of course, load many more files - as many as your computer's memory
will allow.

Assume the file currently being edited is file "B".  You may then move
from one file to another in any of the following ways:


  file in the ring, file "C".


  previous file in the ring, file "A".


  filename.  You may enter the name of any file in the ring.  The editor
  will make the entered file the current one for editing.


  scrollable list of all loaded files, from which you may select a
  different file to edit.


You may, at any time, add files to the ring or discard files from the
ring.  If you add a new file to the ring using the EditFile command, it
will become the current file and the old current file will become the
previous file.  If you delete a file from the ring the previous file
will become the current file.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   When loading files, be aware that the editor will not load ?
?   two copies of the same file.  If you issue the EditFile    ?
?   command for a file already loaded, that file will become   ?
?   the new current file.                                      ?
????????????????????????????????????????????????????????????????


Saving Files and Exiting
????????????????????????

The editor provides several different ways to save files, discard files,
and exit the editor.  A set of five basic commands provides assorted
combinations of saving, discarding, and exiting in order to suit
individual preferences.

We recommend selecting one or two methods with which you feel most
comfortable and using them consistently.

The table below summarizes these commands and their effects.

?????????????????????????????????????????????????????????????????????
?Command for Single   ? Command for Multiple ?   ?   ?   ?   ?      ?
?File or Current File ? Files                ? 1 ? 2 ? 3 ? 4 ?  5   ?
?????????????????????????????????????????????????????????????????????
?Exit      <Ctrl K D> ? GExit     <Alt X>    ?   ? X ?   ? X ? X(a) ?
?                     ?                      ?   ?   ?   ?   ?      ?
?File      <Ctrl K X> ? GFile     <Alt F><G> ? X ?   ?   ? X ? X(a) ?
?                     ?                      ?   ?   ?   ?   ?      ?
?PQuit     <Ctrl K Q> ? GPQuit    <Alt Q><Q> ?   ?   ? X ? X ? X(a) ?
?                     ?                      ?   ?   ?   ?   ?      ?
?Quit (b)             ?                      ?   ?   ?   ? X ? X    ?
?                     ?                      ?   ?   ?   ?   ?      ?
?SaveFile  <Ctrl K S> ? GSave     <Alt Y>    ? X ?   ?   ?   ?      ?
?????????????????????????????????????????????????????????????????????

1. Edited file(s) are saved unconditionally

2. User prompted to save edited files (Y/N)

3. User warned that file changes may be lost

4. File(s) are discarded from editor

5. The editor is terminated

(a) The Exit, File, and PQuit commands can be configured to terminate
    or not terminate the editor.  Refer to the "General Options"
    section of Chapter 2 for more information.

(b) USE WITH CAUTION!


Read-Only Files
???????????????

Read-Only files can be loaded and edited.  However, they cannot be
saved.

When a Read-Only file is initially loaded, the message "File is
READONLY" is displayed at the top of the screen.  If you subsequently
attempt to save a Read-Only file, the following message appears:

??????????????????????????????????????????????
?Cannot save READONLY files - Press <Esc>    ?
??????????????????????????????????????????????

To save a Read-Only file, simply save it under a different name using
the WriteBlock <Alt W> command (be sure there are no marked Blocks in
the file), or change the filename using the ChangeFilename <Alt O>
command and then save the file under the new name.


VIEWING AND GETTING AROUND IN THE TEXT
??????????????????????????????????????????????????????????????????????

The editor is quite versatile in allowing you to move around in the
text. With simple keystrokes you can either move a few characters or
lines at a time or move from one end of the file to another.  You can go
to specific lines in the file or go to each occurrence of a particular
string of characters.  And with the editor's windows, you can view
multiple files at a time or have multiple views of the same file.

As you will see, there are quite a few commands available for moving
around in your text.  If you are not already familiar with these types
of commands, try them out.  You will probably find some new commands
that will be useful when editing.


Cursor Movement
???????????????

                       Moving Through a File

The editor provides a number of commands to allow you to move about in a
file.


  As their names imply, these commands move the cursor to the beginning
  or end of the current file.  BegFile positions the cursor at column
  one on the first line of the file.  EndFile positions the cursor after
  the last non-blank character on the last line of the file.

  If you are in the process of marking a Block using the MarkColumn
  command, the cursor column position does not change when you execute
  BegFile or EndFile.  (This is true only while you have marked the
  beginning of a Block using MarkColumn, but have not marked the end of
  the Block.)


  PageUp scrolls the text toward the top of the file, one page-full,
  less one line, at a time.  PageDown scrolls the text toward the end of
  the file, one page-full, less one line, at a time.


  These commands work exactly like the PageUp and PageDown commands,
  except that they scroll only one-half page at a time.


  These commands move the cursor to the start of the next, previous, or
  to the end of the current paragraph.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   All editor commands, including those without default key   ?
?   assignments, can be assigned as the user desires, to       ?
?   almost any key.  Refer to the "Keyboard Configuration"     ?
?   section of Chapter 2 for more information.                 ?
????????????????????????????????????????????????????????????????



  These commands scroll the text one line at a time toward the beginning
  of the file.

  The ScrollUp command causes the cursor to remain on the same line of
  text until it reaches the bottom of the screen, while the LineUp
  command causes the cursor to remain stationary on the screen.


  These commands scroll the text one line at a time toward the end of
  the file.

  The ScrollDown command causes the cursor to remain on the same line of
  text until it reaches the top of the screen, while the LineDown
  command causes the cursor to remain stationary on the screen.


  Upon entering the GotoLine command, the editor prompts with:

  ????????????????????????????
  ?Go to line:               ?
  ?                          ?
  ????????????????????????????

  Type a line number and press <Enter>.  The cursor then "jumps" to the
  specified line number.  An easy way to move about quickly in your text
  is to keep track of critical positions by noting their line number,
  which is displayed on the StatusLine, and then using this command to
  "jump" to those positions.


  These commands move the cursor to the beginning or to the end of the
  currently marked Block.  If the marked Block is in another file, the
  editor makes that file the current file and then moves you to the
  beginning or end of the Block.  For more information on using marked
  Blocks, refer to the "Block Commands" section in this chapter.


  This command can be very handy.  It moves you to the cursor's previous
  position.  Although it is not of much use if you have only moved a
  character or two, it can be useful for larger jumps of the cursor.

  For example, perhaps you are in the middle of a file and want to check
  something at the very beginning of the file.  To go to the beginning,
  you would simply enter BegFile <Ctrl PageUp>.  After you look at the
  beginning, you want to go back to where you were previously.  You
  could use PageDown, but that could be tedious, especially if your file
  is large.  The easiest way would be to enter PrevPosition, and with a
  single keystroke, you are immediately back where you started.

  PrevPosition can only take you back to the cursor's immediately
  previous position.  If there are intervening keystrokes that move the
  cursor, PrevPosition will move you back to the most recent location of
  the cursor.


  These commands move the cursor to the next or previous line (as
  appropriate) whose text starts in the same column as the current line.
  If the current line is blank, the cursor moves to the next or previous
  blank line.


                    Moving Around on the Screen

These commands affect the cursor position within the current screen of
displayed text.


  These commands move you to the first or last line of the screen (or
  current window if you have windows open).  The cursor's column
  position does not change.


  You are probably already familiar with these commands.  BegLine moves
  the cursor to the beginning, or column one, of the current cursor
  line. EndLine moves the cursor to the last non-blank character of the
  current cursor line.


  This command is intended as a replacement for the BegLine command.  It
  positions the cursor on the first non-white (space) character on the
  current line, or column 1 if the line is blank.  An interesting
  variation is a command that toggles between the beginning of the line
  and the first non-white character on that line:

      home  FirstNonWhite  MacroQuitTrue  BegLine

  Refer to the "Keyboard Configuration" section of Chapter 2 for more
  information on changing command assignments in the editor.


  These commands scroll the entire text to the left or right one column
  at a time.  You can change the number of columns which are shifted
  each time using the configuration program.  Refer to the
  "Colors/Screen Options" section of Chapter 2 for more information.


  These commands move the cursor to the first character of the previous
  or following word in the text.


  These three commands change the position of the cursor line on the
  screen (or window, if you have windows open).  They can be useful if
  you prefer to work at the bottom or top of the screen or if you want
  to keep the text surrounding your cursor line in view.

  The MakeCtrofScreen command scrolls the text on the screen (either up
  or down) until the cursor line is the center line of the screen.

  The MakeTopofScreen command scrolls the text upward until the cursor
  line is the top line of the screen.

  The MakeBotofScreen command scrolls the text downward until the cursor
  line is the last line of the screen.


                   Moving By Lines and Characters

These commands enable you to move in short increments through the text.


  These commands move the cursor one column to the right or left on the
  cursor line.

  When you use CursorLeft, the cursor stops when it reaches the left
  edge of the screen, unless the text has been scrolled to the left.  In
  that case it scrolls the text to the right one column at a time until
  it reaches column one.

  When you use CursorRight and the cursor reaches the right edge of the
  screen, it begins to scroll the text to the left.  It stops scrolling
  when it reaches the maximum line length.

  If you prefer that cursor left/right would wrap at the beginning and
  end of lines, you can assign the following macros in your QCONFIG.DAT
  file in lieu of cursor left/right, respectively:

    * Left and Right cursor definitions that wrap to previous/next line
    * like WordStar does

    cursorleft
                  CursorLeft     * try to go left
                  MacroQuitTrue  * succeed!  then we are done
                  CursorUp       * else try to go to prev line
                  MacroQuitFalse * if fail, then at top of file. done.
                  EndLine        * jump to end of previous line.

    cursorright
                  isEndLine      * are we at end of line?
                  JTrue down:    * if so, go to down
                  CursorRight    * else right one
                  MacroQuit      * Quit macro
                down:
                  CursorDown     * try to go to next line
                  MacroQuitFalse * if not, go to end
                  BegLine        * else go to beginning of line


  Refer to the "Keyboard Configuration" section of Chapter 2 for more
  information on changing key/command assignments.



  These commands move the cursor up or down in the file one line at a
  time.  The cursor's column position does not change.


  Upon entering the GotoColumn command, the editor prompts with:

  ????????????????????????????
  ?Go to column:             ?
  ?                          ?
  ????????????????????????????

  Type a column number and press <Enter>.  The cursor then moves to the
  specified column number.


Using Windows
?????????????

The editor provides the ability to view different areas of files (either
multiple files or the same file) at the same time, through the use of
windows.  A window is a portion of the screen that allows you to view
text.  You can divide your screen into as many as eight horizontal
windows.  You can then view as many as eight different files through
these windows or have multiple views of a single file.  This capability
can be quite helpful for comparing text, copying text, and moving text.

An example of a screen split into three windows is shown below.
????????????????????????????????????????????????????????????????
? L 1    C 1    IAW         411K     *c:\file1                 ?
?                                                              ?
? This window is a view of file number 1 at line number 1.     ?
? This file is being edited with Insert, AutoIndent, and       ?
? WordWrap modes all ON.  This file has been updated.          ?
?                                                              ?
?                                                              ?
?                                                              ?
?                                                              ?
? L 483  C 12   IAW         411K     *c:\file1                 ?
?                                                              ?
? This window is a view of file number 1 at line number 483.   ?
?                                                              ?
?                                                              ?
?                                                              ?
?                                                              ?
? L 15   C 14   I           411K      c:\file2                 ?
?              ?                                               ?
? This window is a view of file number 2.                      ?
? This file is being edited with Insert mode ON, while         ?
? AutoIndent and WordWrap modes are OFF.  This file has not    ?
? been updated.                                                ?
????????????????????????????????????????????????????????????????


                          Creating Windows

To create a window, use the HorizontalWindow <Ctrl O H> command. The
screen will be split into two halves, or windows, each window having its
own StatusLine.  The cursor will reside in the newly created window,
making it the current window.

If only one file is being edited, the newly created window will simply
be an additional view of the same file.  The editor will not load more
than one copy of the same file.

If multiple files are being edited, the newly created window will be a
view of the next file in the ring.  (Refer to the "Multiple Files"
section in this chapter.)  If desired, you can configure the editor to
prompt for the name of the file to be viewed in the new window instead
of the editor automatically selecting the next file in the ring.  Refer
to the "General Options" section of Chapter 2 for more information.

Once the screen has been split into windows, entering the
HorizontalWindow command again will affect the current window.  All
other windows will remain unchanged.


                         Switching Windows

When multiple windows are opened, editing will take place only in the
current window (the window containing the cursor).  For editing text in
other windows, two commands are provided to switch from one window to
another.


  This command moves the cursor to the window above the current window.
  If the current window is at the top of the screen, the cursor moves to
  the last window on the screen.


  This command moves the cursor to the window below the current window.
  If the current window is at the bottom of the screen, the cursor moves
  to the first window on the screen.


                        Changing Window Size

You can change the size of any window on the screen with the commands
below.


  These commands allow you to change the size of the current window.
  Upon entering any of these commands, you are prompted to change the
  size of the window by using the cursor up and cursor down keys.


  This command causes the current window to fill the entire screen, as
  all other windows disappear.  To restore the screen with all windows,
  simply press <Ctrl O Z> again.  Be careful not to confuse this command
  with the OneWindow command (see below).  OneWindow fills the screen
  with the current window (like ZoomWindow does), but it also closes all
  windows except the current one.  ZoomWindow leaves the other windows
  intact, even though they are hidden from view.


  This command causes the current window to be made as large as
  possible, by making all other windows as small as possible.


                          Closing Windows

There are two commands to close windows.


  This command closes the current window.  The current window disappears
  and the cursor is placed in the window above the closed window, making
  it the new current window.  When the closed window is at the top of the
  screen, the window below it becomes the new current window.


  This command closes all windows except the current window.  The
  current window then fills the entire screen.

Note that closing a window does not discard files from the editor.


                  Synchronized Scrolling in Windows

You can scroll simultaneously through multiple windows by setting
Synchronized Scrolling mode ON.  This causes cursor movement and
scrolling activity in the current window to also occur in each of the
non-current windows.


  This command switches Synchronized Scrolling mode ON and OFF.

  When this mode is ON, the editor attempts to synchronize logical
  cursor movement, as well as scrolling, in all windows, based on cursor
  movement and scrolling activity in the current window.  However, the
  logical cursor position and size of non-current windows may affect
  scrolling that occurs when the cursor reaches a window edge.  Under
  certain conditions, movement of the cursor may cause scrolling to
  occur in some non-current windows before it begins in the current
  window.

  When Synchronized Scrolling mode is ON, an "S" appears on the
  StatusLine.


FINDING AND REPLACING TEXT
??????????????????????????????????????????????????????????????????????

Finding Text
????????????


  This command searches for a specific string of characters in the file.
  Upon entering the Find command, the editor prompts for the string of
  characters for which to search.

  ??????????????????????????????????????????????????????????????
  ?Search for:                                                 ?
  ?                                                            ?
  ??????????????????????????????????????????????????????????????

  Enter the desired string of characters and press <Enter>.

  The editor then prompts for the search options to use.

  ???????????????????????????????????????????????????????????????
  ?Options [BGLIW] (Back Global Local Ignore-case Whole-words): ?
  ?                                                             ?
  ???????????????????????????????????????????????????????????????

  Enter the letter(s) corresponding to the option(s) you want and press
  <Enter>.  The available options are:

    [B] = Search backward from the current cursor position.  When you
          choose "B", the editor searches backward from the cursor
          position toward the beginning of the file.  Otherwise, it
          searches from the cursor position toward the end of the file.

    [G] = Global search.  Begins searching from the beginning of the
          file, or from the beginning of the marked Block if the [L]
          option is also selected.

    [L] = Local search.  Limits the search to the currently marked
          Block.  If the cursor is outside the marked Block, or the [G]
          option is also selected, the search starts at the beginning of
          the marked Block.  Otherwise, the search starts at the current
          cursor position inside the marked Block.

    [I] = Ignore the case (capital or lowercase) of the search string.
          For example, "Hello" would match "hello" if this option is
          chosen.  This option is set ON by default.

    [W] = Search for whole words only.  For example, when this option is
          chosen, the word "sent" matches only the actual word "sent".
          Otherwise, any other words that contain the string (such as
          "sentence" or "absent") would also match.

    [^] = Anchor the search string to the beginning of the line (or
          Block).  The search operation attempts to locate a matching
          string that begins in column 1 of a line; or, if the [L]
          option is also selected, it attempts to locate a matching
          string that begins in the first column of the Block.

    [$] = Anchor the search string to the end of the line (or Block).
          The search operation attempts to locate a matching string that
          ends on the last character of a line; or, if the [L] option is
          also selected, it attempts to locate a matching string that
          ends on the last character in the Block (or that ends on the
          last character of a line, if the line ends in the Block).


  Once the Find command is executed, the cursor is placed at the first
  occurrence of the search string found in the text.  To locate
  subsequent occurrences of the search string, simply enter the
  RepeatFind command (described below).

  If you want to search for a string and replace it with another string,
  refer to the "Replacing Text" section in this chapter.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   The placement of the found text is configurable.  It can   ?
?   either be placed on the same relative row on which the     ?
?   cursor line initially started, or centered.  Refer to the  ?
?   ToggleCenterFinds command in Chapter 3, and to the option  ?
?   "Should Find and RepeatFind center the found text" in the  ?
?   "General Options" section of Chapter 2.  On the menus,     ?
?   press <Esc><S><C>.                                         ?
????????????????????????????????????????????????????????????????



  This command reissues the last search command that was executed; that
  is, the last Find, FindReplace, or IncrementalSearch command.  It
  begins searching one position beyond the current cursor position if a
  forward search had previously been performed, or one position before
  the current cursor position if a backward search had previously been
  performed.  All search or replace options, other than [G] (Global),
  that were in effect for the previous execution of the operation, are
  in effect for RepeatFind.



  This is a specialized search command.  It causes the editor to begin
  searching for a string while you type. As you enter each new
  character, the editor attempts to locate a string in the text that
  matches the incremented search string.  If you type a character that
  would expand the search string to a string that cannot be matched in
  the text, that character is not added to the search string.

  When you execute IncrementalSearch, the editor displays the following
  prompt on the StatusLine:

      I-Search (^N=Next ^P=Prev ^B=Beginning):

  Enter the string to be located.  The cursor remains in the
  IncrementalSearch prompt until you terminate the operation by pressing
  <Enter> or <Esc>.

  As you type characters, a case-insensitive, forward search is
  performed, beginning at the text position where the cursor was located
  when you invoked IncrementalSearch.  As each matching string is found,
  the string is highlighted in the text.  When a search character is
  entered that does not match the next character of the
  currently-located text, the editor searches forward and moves to the
  first occurrence that does match the newly-expanded search string.  If
  a match including that character cannot be located, the character is
  rejected and the currently-located text remains highlighted.

  Within the IncrementalSearch prompt, you can use the following keys to
  perform the operations indicated:

  <Backspace>    Deletes the last character typed within the
                 IncrementalSearch prompt.  The editor re-locates the
                 previously-highlighted string.

  <Ctrl N>       Searches forward for the next occurrence of the
                 current IncrementalSearch string.

  <Ctrl P>       Searches backward for the previous occurrence of the
                 current IncrementalSearch string.

  <Ctrl B>       Searches forward from the beginning of the file for
                 the first occurrence of the current IncrementalSearch
                 string.



  This is a specialized search command.  It acts only on the characters
  ( ), { }, [ ], and < >.  With the cursor placed on one of these
  characters, enter the Match command.  The editor locates the logical
  matching character of the pair.  This command can be useful for
  programming in languages where complicated expressions are grouped
  using these characters.


In the default configuration of the editor, a useful macro for locating
text has been assigned to <Alt =>.  This macro will take the word at the
current cursor position in the text, and execute the Find command on
that word.  It searches for the next occurrence of the word, using the
"Default Find options" (as described under "General Options" in Chapter
2, "Customizing the Editor").  When located, the cursor is placed in the
text on the first character of the word and the word is highlighted.  If
the cursor is not located on a word when you execute this macro, the
editor executes the Find command itself, and displays the standard Find
prompt.


Replacing Text
??????????????

The editor provides the ability to search for specific strings of
characters throughout your text and then replace all, some, or none of
them with another string of characters.  (If you want to search for
strings of characters without replacing them, use the Find command.)


  This command searches for a specific string of characters in the
  current file, and optionally replaces it with another string of
  characters.

  Upon entering the FindReplace command, the editor prompts for the
  string of characters for which to search.

  ??????????????????????????????????????????????????????????????
  ?Search for:                                                 ?
  ?                                                            ?
  ??????????????????????????????????????????????????????????????

  Enter the desired string of characters and press <Enter>.

  The editor then prompts for a new string of characters (to replace the
  old string).

  ??????????????????????????????????????????????????????????????
  ?Replace with:                                               ?
  ?                                                            ?
  ??????????????????????????????????????????????????????????????

  Enter the new string of characters and press <Enter>.

  The editor then prompts for the search options you wish to use.

  ??????????????????????????????????????????????????????????????
  ?Options [BGLIWN] (Back Global Local Ignore-case Whole-words ?
  ?No-prompting):                                              ?
  ?                                                            ?
  ??????????????????????????????????????????????????????????????


  Enter the letter(s) corresponding to the option(s) you want and press
  <Enter>.  The available search options are the same as those described
  in the previous section ("Finding Text") for the Find command, as well
  as the following additional replace options:

    [N] = Find and replace with NO prompting.  If you choose "N", the
          editor finds and replaces every occurrence of the search
          string, without asking you if you want to replace each
          individual occurrence.

    [#] = Replace the indicated number of times (where "#" is an actual
          number).  If you specify a number, the editor finds and
          replaces the next "#" number of occurrences of the search
          string, without asking you if you want to replace each
          occurrence.  For example, if you enter "8", the next eight
          occurrences of the string are automatically replaced.


  If you select the [N] or [#] option, the editor finds and replaces
  every occurrence of the search string with no further user
  intervention.  If you DO NOT select the [N] or [#] option, the editor
  prompts at every occurrence of the search string with:

    Replace (Yes/No/Only/Rest/Quit):

  Valid responses are:

       <Y>es    - Replace the search string with the new string and
                  continue to the next occurrence.
       <N>o     - Do not replace the search string, but continue to the
                  next occurrence.
       <O>nly   - Replace the search string with the new string and
                  quit.
       <R>est   - Replace the search string with the new string and
                  replace the rest of the occurrences with no further
                  prompts.
       <Q>uit   - Cancel the FindReplace process.

  You can press <Ctrl Break> to halt a global FindReplace.


The RepeatFind command reissues the previous search command (including
FindReplace).  Refer to RepeatFind in the previous section, "Finding
Text".


COPYING, MOVING, CHANGING, AND DELETING TEXT
??????????????????????????????????????????????????????????????????????


Block Commands
??????????????

In this section, we will see how to mark and manipulate Blocks.  A Block
is some portion of the text file which has been specifically delineated
using the Block-marking commands.  We will see how to manipulate Blocks
both directly and through the use of intermediate storage areas known as
buffers.

The editor contains a rich set of Block commands.  There are commands to
mark Blocks by lines, columns, and characters.  There are commands to
copy, move, shift, and delete Blocks.  These commands are very useful
for transferring text from one file to another. There are also
cut-and-paste commands, as well as commands to move Blocks to and from
named Scratch Buffers.


                   Marking and Unmarking a Block

Before you can manipulate a Block, you must first "mark" the Block,
either by characters, lines, or columns.  The type of Block that you
mark will depend on the editing situation and what you find most
comfortable.


  This command allows you to mark a Block in whole line increments. In
  other words, the Block will contain complete lines only and no
  portions of lines.  To use this command place the cursor anywhere on
  the first line of the text you wish to mark and press <Alt L>. (Notice
  that the line is immediately marked.)  Now, move the cursor (the Block
  will "follow" the cursor) to the last line of text to be marked and
  press <Alt L> again.  You now have a marked Block, ready for
  manipulation.


  This command allows you to mark a Block one character at a time.  In
  other words, the Block will contain a stream of characters (which can
  span over multiple lines).  To use this command place the cursor over
  the first character of the text you wish to mark and press <Alt A>.
  Then begin moving the cursor toward the end of the text to be marked.
  Notice that the Block "follows" the cursor position.  Once the cursor
  is placed over the last character to be marked, press <Alt A> again.
  You now have a marked Block, ready for manipulation.


  This command works just like DropAnchor except that while marking the
  Block, the cursor is not included within the Block.

  MarkCharacter is provided as a replacement for the DropAnchor command.
  If you want the cursor position included in character Blocks, then
  continue to use DropAnchor; otherwise, replace the DropAnchor command
  with this command in the QCONFIG.DAT file.  Refer to the "Keyboard
  Configuration" section of Chapter 2 for more information on changing
  key/command assignments.

  The MarkCharacter command can also be used to provide CUA-style Block
  marking, using the shifted cursor keys.  Refer to the following
  section, "CUA-Style Block Marking."


  This command allows you to mark one or more columns of text.  To use
  this command place the cursor over the upper left-hand character of
  the text you wish to mark and press <Alt K>.  Then begin moving the
  cursor to the right and/or downward.  Notice that the Block "follows"
  the cursor position.  Once the cursor is placed over the lower
  right-hand character of the Block, press <Alt K> again.  You now have
  a marked Block, ready for manipulation.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   When using the MarkLine, MarkCharacter, MarkColumn, and    ?
?   DropAnchor commands, it is not necessary to mark the end   ?
?   of the Block.  The editor assumes the end of the Block to  ?
?   be the current cursor position for MarkCharacter,          ?
?   MarkColumn, and DropAnchor, and to be the current cursor   ?
?   line for MarkLine.  Marking the end of the Block is only   ?
?   necessary when moving or copying text within the same      ?
?   file.                                                      ?
????????????????????????????????????????????????????????????????



  This command allows you to mark the current word.  To use this
  command, place the cursor anywhere in the word you wish to mark and
  press <Ctrl K T>.  The entire word is immediately marked.  If there is
  no word at the current cursor position, then no action is taken.


  This is another method of marking a Block one character at a time. To
  mark a Block with this command, place the cursor over the first
  character of the text you wish to mark and press <Ctrl K B>.  Then
  position the cursor one character past the end of the text that is to
  be marked and press <Ctrl K K>.  The Block is now marked and ready for
  manipulation.


  Entering the UnmarkBlock command causes the currently marked Block to
  be unmarked.

The editor allows you to mark one Block at a time.  If you mark a Block
and then go elsewhere in the file and attempt to mark another Block, the
editor will simply extend the first Block by including all the text
between the original Block and the current cursor position.  If you mark
a Block in one file and then go to another file and mark a Block, the
Block in the first file will automatically be unmarked.

Also, if you mix types of Block marking (for example, by entering
MarkLine followed by DropAnchor), the editor will mark the Block
according to the last command entered.


                       CUA-Style Block Marking

The editor allows you to use the following CUA-style shifted cursor keys
for marking character Blocks.  These pre-defined keys use the
MarkCharacter command to create Blocks that do not include the cursor
within the Block.

  CUA-style Key          Block-marking Operation
  ????????????????????   ???????????????????????????????????????????????

  <Shift Cursor Left>    Mark/extend Block and move left one character
  <Shift Cursor Right>   Mark/extend Block and move right one character
  <Shift Cursor Up>      Mark/extend Block and move up one line
  <Shift Cursor Down>    Mark/extend Block and move down one line
  <Shift Home>           Mark/extend Block and move to beginning of line
  <Shift End>            Mark/extend Block and move to end of line
  <Shift PgUp>           Mark/extend Block and move up one page
  <Shift PgDn>           Mark/extend Block and move down one page

To select the CUA-style Block-marking keys, you must set CUA-Style Block
Marking mode ON.  (You can do this by setting the configuration option
"Use CUA-style (shift cursor) block marking" to <Y>.  Refer to the
"Advanced Options" section of Chapter 2.  You can also switch this mode
ON and OFF using the ToggleCUAMarking command.)  These CUA-style keys
will then override any command assignments made to the same keys in
QCONFIG.DAT.

In addition to the CUA-style Block marking keys, you may want to
configure the editor to assign the following CUA-style keys to the
indicated Block commands:

  CUA-style
     Key      Block Command / Operation
 ???????????  ?????????????????????????????????????????????????????????

 <Shift Ins>  Paste / paste contents of Scrap Buffer at cursor position
 <Shift Del>  Cut / cut marked Block to Scrap Buffer
 <Ctrl Ins>   Copy / copy marked Block to Scrap Buffer
 <Ctrl Del>   DeleteBlock / delete marked Block

For these CUA-style Block command key assignments to be effective, they
must be assigned in QCONFIG.DAT and burned into the editor.  Unlike the
CUA-style Block-marking keys, setting ON CUA-Style Block Marking mode
does NOT automatically make these Block-command keys effective.

The following paragraphs describe certain effects of CUA-Style Block
Marking mode.

If the <Shift> key is released during marking, it must be pressed again,
before any other key is pressed, in order to continue marking.

If you press any key that is not a CUA-style marking keys (or that is
not one of the related CUA-style Block command keys, as described
above), the current Block will be unmarked.  You can override this
"unmarking" behavior by setting the configuration option "Should blocks
remain marked after CUA marking" to <Y>.  Then a marked Block will
remain marked until you unmark it, or until you execute a command, such
as Cut, that unmarks the Block after its operation.  (Refer to the
"Advanced Options" section of Chapter 2 for information on setting this
option.)

Once a "persistent" Block is marked, you can extend the Block by placing
the cursor at either the beginning or ending position of the Block, and
then pressing one of the CUA-style Block-marking keys.  If you press one
of the CUA-style marking keys with the cursor at any other position in
the file, the current Block will be unmarked, and a new Block will be
started at the cursor position.


                    Manipulating Blocks Directly

There a several ways to manipulate a marked Block in the editor.  The
following commands act directly on a marked Block.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   When Copying or Moving Blocks:                             ?
?                                                              ?
?   Blocks marked using the DropAnchor, MarkCharacter,         ?
?   MarkColumn, and MarkBlockBegin/End commands will always be ?
?   inserted beginning at the current cursor position.         ?
?                                                              ?
?   Blocks marked using the MarkLine command will be inserted  ?
?   at either the line before or the line after the current    ?
?   cursor line.  Refer to the "General Options" section of    ?
?   Chapter 2 for more information.                            ?
????????????????????????????????????????????????????????????????



  This command makes a copy of the marked Block and inserts it where you
  indicate.  You can insert this copy of the Block at some other place
  in the same file or in another file.  The original Block of text, from
  which you made the copy, is not affected.

  To use this command, first mark the Block as described above. Next,
  move the cursor to the position in the file where you wish to insert
  the marked text.  (Or, if you have multiple files loaded and wish to
  copy text from one file to another, use the NextFile, PrevFile or
  EditFile commands to get a new current file and likewise position the
  cursor.)  Now enter the CopyBlock <Alt C> command.  The Block will be
  inserted at the new position.  You may notice, after you use
  CopyBlock, that the newly inserted Block of text is now marked and the
  original Block is unmarked.  To unmark the copied Block, enter the
  UnmarkBlock command.

  For an easy method to copy the same Block repeatedly, refer to the
  Copy and Paste commands in the following section.


  This command is for use with column Blocks only.  It works just like
  CopyBlock except the Block is copied to the current cursor position by
  overlaying existing text and without shifting text to the right.


  This command works exactly like CopyBlock with one exception:  upon
  entering the MoveBlock <Alt M> command, the originally marked Block is
  deleted from the file.

  As with the CopyBlock command, you can move a Block to another part of
  the same file or from one file to another.

  For an easy method to delete a Block from its original position and
  inserting it repeatedly at other positions, refer to the Cut and Paste
  commands in the following section.


  This command simply deletes a marked Block of text from the file. To
  use this command, first mark a Block of text to be deleted, then enter
  the DeleteBlock command.  The marked text will be deleted from the
  file.  (Deleted Blocks will be placed in the Kill buffer.  Refer
  to "The Kill Buffer - A Safety Net" section in this chapter for
  more information.)


  These commands allow the User to shift text contained in a Block to
  the left or right. To use these commands, first mark a Block. Now
  enter ShiftLeft or ShiftRight.  The entire marked Block of text will
  be shifted one column to the left or right respectively. If there is
  no marked Block of text or the cursor is outside of the marked Block,
  the current cursor line will be shifted. This command is very useful
  for changing indentation for portions of text or source code.


  This command allows you to fill a marked Block with a single
  character.


              Manipulating Blocks Using Scrap Buffers

The editor provides an extremely helpful device for quickly manipulating
Blocks of text.  This device consists of a Scrap Buffer and several
commands which act on the Scrap Buffer.

The Scrap Buffer is a temporary holding area for marked Blocks of text.
The commands Cut, Copy, Paste, and PasteOver are used solely for placing
text into the Scrap Buffer and copying text from the Scrap Buffer.

When you issue a Copy or Cut command (discussed in the following
section), the marked Block is placed into the Scrap Buffer.  The next
time you Copy or Cut a Block into the Scrap Buffer, the previous
contents of the Scrap Buffer are deleted and replaced with the new
Block.

You can repeatedly use the Paste and PasteOver commands as many times as
needed to insert a copy of the Block held in the Scrap Buffer at
multiple positions in your file or files.  The Paste and PasteOver
commands do not purge the contents of the Scrap Buffer.



  To copy a section of text from its present position and insert it
  somewhere else:

  1. Mark the text using the Block marking commands.

  2. Enter Copy <Grey +>.  This places a copy of the marked text into
     the Scrap Buffer.

  3. If you want to insert the text somewhere else within the same file,
     use the cursor movement commands to place the cursor where you wish
     to insert the text.

  4. If you want to insert the text in another file, switch to that file
     using the NextFile, PrevFile, or EditFile command to access that
     file.  Then place the cursor at the desired position.

  5. Enter Paste <Grey *> to insert the text.  If you have copied a
     column Block into the Scrap Buffer and wish to insert it by
     overlaying existing text then use PasteOver <Ctrl PrtSc> instead of
     Paste.

  Since Paste and PasteOver leave the contents of the Scrap Buffer
  intact, you can make multiple insertions in the same or different
  files.  Simply move the cursor to the file and position where you wish
  to make additional insertions and enter Paste <Grey *> or PasteOver
  <Ctrl PrtSc>.  Please note that the next time you issue a Cut or Copy
  command, the previous contents of the Scrap Buffer will be discarded.



  Cut and Paste/PasteOver work exactly like Copy and Paste/PasteOver
  except that Cut will delete the marked Block from the file.  You can
  still make multiple insertions of the text using the Paste or
  PasteOver Commands.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   The editor can be configured to have the Cut and Copy      ?
?   commands act on the current cursor line if no Block is     ?
?   marked.  Refer to the "Advanced Options" section of        ?
?   Chapter 2 for more information.                            ?
????????????????????????????????????????????????????????????????


             Manipulating Blocks Using Scratch Buffers

A Scratch Buffer is a special type of buffer to which you assign a name.
The editor allows you to create and name up to 99 Scratch Buffers for
each editing session.  These can be useful if you have several different
Blocks of text that you want to insert in multiple locations.  The
commands StoreScrBuff <Ctrl B S>, AppendScrBuff <Ctrl B A>, and
GetScrBuff <Ctrl B L> are used to place text in, and retrieve text from,
a Scratch Buffer.  Whenever you issue one of these commands, the editor
will ask you for the name of the Scratch Buffer.  If you want to use an
already created scratch buffer, and do not remember the name, just press
<Enter> on an empty prompt (press the DelLine key to quickly remove any
text in a prompt) and a list of existing Scratch Buffers will be shown,
allowing you to select the appropriate one.  Finally, you can remove a
Scratch Buffer, if it is no longer needed, with the DelScratchBuff
<Ctrl B D> command.

The contents of all Scratch Buffers are discarded when the editor is
terminated.



  To place a Block of text into a named buffer:

  1. Mark the Block.

  2. If you want to create a new Scratch Buffer containing the marked
     Block, execute StoreScrBuff <Ctrl B S>.  (This command is also used
     if you wish to replace the current contents of a Scratch Buffer
     with the marked Block.)  If you want to append the marked Block to
     the current contents of the Scratch Buffer, execute AppendScrBuff
     <Ctrl B A>.

  3. The editor prompts for the name of the Scratch Buffer.

     ???????????????????????????????????????????????????????????
     ?Store (Append) to buffer:                                ?
     ?                                                         ?
     ???????????????????????????????????????????????????????????

  4. Enter a name.  It is best to use a name which reflects the contents
     of the buffer and is easily remembered.  Or press <Enter> to get a
     list of existing Scratch Buffers, if you cannot remember the name
     and want to use an existing Buffer.

  The Block is now stored in a Scratch Buffer under the assigned name.

  * GetScrBuff <Ctrl B L>
    To retrieve the contents of a named Scratch Buffer and insert it at
    the current cursor position:

    1. Position the cursor where you wish the contents of the named
       Scratch Buffer to be inserted.

    2. Enter GetScrBuff <Ctrl B L>.  The editor prompts for the name of
       the Scratch Buffer to be retrieved.

       ?????????????????????????????????????????????????????????
       ?Get from buffer:                                       ?
       ?                                                       ?
       ?????????????????????????????????????????????????????????

    3. Enter the name of the desired Scratch Buffer, or press <Enter> to
       choose from a list of existing Scratch Buffers.

    4. Repeat the above steps whenever you want to insert the contents
       of a Scratch Buffer into your text.


               Accessing the Microsoft Windows Clipboard

The following handy commands allow you to copy or paste text between the
current file and the Microsoft Windows Clipboard.


  This command makes a copy of the marked Block and inserts it directly
  into the Microsoft Windows Clipboard.


  This command inserts a copy of the contents of the Microsoft Windows
  Clipboard directly into the current file at the cursor position.


Note that the OS/2 version of the editor allows you to access the OS/2
Clipboard.


                     Examples of Block Commands

This section contains examples of commonly used Block Commands.



  1. Position the cursor at the beginning of the Block to be copied or
     moved.

  2. Enter DropAnchor <Alt A> to mark a stream of characters, or
     MarkLine <Alt L> to mark whole lines, or MarkColumn <Alt K> to mark
     a column of text.

  3. Position the cursor at the end of the Block to be copied or moved.

  4. Enter DropAnchor, MarkLine, or MarkColumn again to mark the end of
     the Block.

  5. Move the cursor to the location where you want to insert the marked
     Block.

  6. Enter CopyBlock <Alt C>, CopyOverBlock <Alt Z> (column Blocks
     only), or MoveBlock <Alt M>.

  7. Enter UnmarkBlock <Alt U> to unmark the Block.

  The Block has now been copied or moved.




  1. Position the cursor at the beginning of the Block to be copied or
     moved.

  2. Enter DropAnchor <Alt A> to mark a stream of characters, or
     MarkLine <Alt L> to mark whole lines, or MarkColumn <Alt K> to mark
     a column of text.

  3. Position the cursor at the end of the Block to be copied or moved.

  4. Switch to the "target" file using the file commands EditFile,
     NextFile, or PrevFile.

  5. Move the cursor to the location in the file where you want to
     insert the marked Block.

  6. Enter CopyBlock <Alt C>, CopyOverBlock <Alt Z> (column Blocks
     only), or MoveBlock <Alt M>.

  7. Enter UnmarkBlock <Alt U> to unmark the Block.

  The Block has now been copied or moved.




  If you want to insert the same Block at several positions within a
  file, follow these steps:

  1. Position the cursor at the beginning of the Block to be copied or
     moved.

  2. Enter DropAnchor <Alt A> to mark a stream of characters, or
     MarkLine <Alt L> to mark whole lines, or MarkColumn <Alt K> to mark
     a column of text.

  3. Position the cursor at the end of the Block to be copied or moved.

  4. If you want to leave the Block in its original position and insert
     copies of it at other locations, then enter Copy <Grey +>.

     If you want to delete the Block from its original position and
     insert copies of it at other locations, then enter Cut <Grey ->.

     The Block is now stored in the Scrap Buffer.

  5. Move the cursor to the location in the file where you want to
     insert the Block.

  6. Enter Paste <Grey *> or PasteOver <Ctrl PrtSc> (column Blocks
     only).

  The Block is now inserted.  Repeat steps 5 and 6 for each additional
  insertion.



  file.

  If you want to insert the same Block at several positions in more than
  one file, follow these steps:

  1. Position the cursor at the beginning of the Block to be copied or
     moved.

  2. Enter DropAnchor <Alt A> to mark a stream of characters, or
     MarkLine <Alt L> to mark whole lines, or MarkColumn <Alt K> to mark
     a column of text.

  3. Position the cursor at the end of the Block to be copied or moved.

  4. If you want to leave the Block in its original position and insert
     copies of it at other locations, then enter Copy <Grey +>.

     If you want to delete the Block from its original position and
     insert copies of it at other locations, then enter Cut <Grey ->.

     The Block is now stored in the Scrap Buffer.

  5. Switch to the "target" file using the file commands EditFile,
     NextFile, or PrevFile.

  6. Move the cursor to the location in the file where you want to
     insert the Block.

  7. Enter Paste <Grey *> or PasteOver <Ctrl PrtSc> (column Blocks
     only).

  The Block is now inserted.  Repeat steps 5-7 for each additional
  insertion.



  If you have several Blocks that you want to insert in several
  different files, follow these steps:

  1. Position the cursor at the beginning of the first Block.

  2. Enter DropAnchor <Alt A> to mark a stream of characters, or
     MarkLine <Alt L> to mark whole lines, or MarkColumn <Alt K> to mark
     a column of text.

  3. Position the cursor at the end of the first Block.

  4. Enter AppendScrBuff <Ctrl B A> if you want to append to an existing
     Scratch Buffer.  Otherwise, enter StoreScrBuff <Ctrl B S> to create
     or overwrite an existing Scratch Buffer.

  5.  The editor will prompt for the name of the buffer.  Enter a name.
      (It is best to use a name which reflects the contents of the
      buffer and is easily remembered).

      The Block is now stored in a Scratch Buffer under the assigned
      name.  Repeat steps 1-5 for each additional Block you want to
      store.

  6. Switch to the "target" file using the file commands EditFile,
     NextFile, or PrevFile.

  7. Move the cursor to the location in the file where you want to
     insert a Block.

  8. Enter GetScrBuff <Ctrl B L>.  The editor will prompt for the name
     of the Scratch Buffer.  Enter the name of the desired Scratch
     Buffer for insertion.

  Repeat steps 6 through 8 for each insertion of a stored Block.

Non-Block Commands
??????????????????

In addition to the editor's array of Block commands, there are also many
commands for manipulating your text which do not depend on marked
Blocks.  This section explains non-Block commands.


                            Adding Text


  As its name implies, this command inserts a blank line in the text.
  The line is added immediately below the current cursor line. The
  cursor is moved to the new line.  The cursor column does not change.


  This command inserts a blank line in the text above the cursor line.
  The cursor remains on the new line and the cursor column does not
  change.


  The Literal command is used to insert control characters into the
  text.  To use this command, enter <Ctrl P> followed by a control
  character.  The control character will be inserted into the text. For
  example, to insert a formfeed character (ASCII 12) in the text, enter
  <Ctrl P> <Ctrl L>.

  This command is handy for entering the control characters represented
  by ASCII decimal values 1 through 26.  Simply enter <Ctrl P> followed
  by <Ctrl A> for ASCII character 1, or <Ctrl B> for ASCII character 2
  and so on, up to <Ctrl Z> for ASCII character 26.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   An alternate and perhaps easier method of entering control ?
?   characters or any ASCII character into your text is to     ?
?   hold down the <Alt> key and enter the decimal equivalent   ?
?   of the ASCII character using the numeric keypad.  For      ?
?   example, to insert a formfeed character (ASCII 12) in the  ?
?   text, just enter <Alt 12> using the numeric keypad.        ?
?                                                              ?
?   If a linefeed character (ASCII 10) is entered, the editor  ?
?   will split the line at this position the next time the     ?
?   file is edited.                                            ?
?                                                              ?
?   Another method for entering ASCII characters into the text ?
?   is to use the AsciiChart command, described below.         ?
????????????????????????????????????????????????????????????????



  Displays a scrollable ASCII chart on the screen.  When the ASCII chart
  is displayed, the cursor bar is located on the entry that corresponds
  to the character at the cursor position in the text.  If the cursor is
  positioned in the text beyond the end of the line, the cursor bar is
  located on the first item in the ASCII chart (the null character).

  To place a display character from the ASCII chart into the text, scroll
  the cursor bar to the desired entry and press <Enter>.  The ASCII
  chart is removed from the screen, and the selected character is placed
  in the text at the cursor position.

  To remove the ASCII chart from the screen without placing a character
  into the text, press <Esc>.


  This is a specialized command which is really a mode of operation that
  can be switched ON or OFF.  If switched ON, the cursor movement keys
  (up, down, right, left) can be used to "draw" lines in the text.  This
  can be very useful for creating graphs and tables.  To switch Box
  Drawing mode ON, enter <Shift F1>.  To switch OFF, enter <Shift F1>
  again.  When Box Drawing mode is ON, a "B" appears on the StatusLine.


  This is also a specialized command which is really a mode of operation
  that can be switched ON or OFF.  If switched ON, the editor will
  automatically insert into the text a corresponding ), ], }, or "
  character each time a (, [, {, or " character, respectively, is
  entered.  To switch EnterMatching mode ON, enter <Esc><O><E>.  To
  switch OFF, enter <Esc><O><E> again.


                            Copying Text


  This command copies the character directly above the cursor onto the
  cursor line.  To get an idea of how this command works, place the
  cursor at the beginning of any line which has text on the line
  immediately above it.  Now press <Ctrl - (dash)> and hold it down. The
  cursor will move to the right while copying the the characters from
  the line above.


  This command simply makes a copy of the current cursor line and
  inserts this copy on the line immediately below the cursor line. The
  cursor is placed on the new line.


  Refer to the "Block Commands" section in this chapter for a complete
  explanation of these commands.  The commands are included here
  because, if desired, the User can configure the editor so that these
  commands act on the current cursor line in the same manner in which
  they act on Blocks.  For more information on how to configure this
  option, refer to the "Advanced Options" section of Chapter 2.


                            Moving Text


  This command lines up the left-most character of the cursor line with
  the left-most character of the line above it.  This allows you to
  align portions of text which require a common left margin. This
  command also moves the cursor down one line; thus, large portions of
  text can be aligned very quickly by entering this command and holding
  the command key down.


  This command will join the following line to the end of the current
  line.  The cursor position does not change.

  If the cursor is positioned on or before the last non-blank character
  of the line, the line below will be appended immediately following the
  last non-blank character.

  If the cursor is positioned beyond the last non-blank character of the
  line, the line below will be appended beginning at the current cursor
  position.

  If the line below the cursor line is blank, the blank line will be
  deleted.


  Before reading the explanation of the Return command, it may be
  helpful to review the discussion of Insert mode in the "Modes" section
  in this chapter.

  If the editor is in Insert mode, this command performs like the
  SplitLine command; that is, all text on and to the right of the cursor
  on the cursor line will be deleted and inserted on a new line
  immediately below the cursor line.  The cursor, however, will be
  placed on the new line.

  If the editor is not in Insert mode, this command will simply place
  the cursor at the beginning of the line below the cursor line.  No
  text will be affected.

  If the editor is in AutoIndent mode, the cursor will be placed at the
  left margin instead of at the beginning of the line.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   The editor can be configured so the Return command does    ?
?   not split lines in Insert mode.  Refer to the "Advanced    ?
?   Options" section of Chapter 2 for more information.        ?
????????????????????????????????????????????????????????????????



  This command will split the current line at the cursor position.  The
  cursor position will not change.


  This command will swap the character at the cursor position with the
  character preceding the cursor.  The cursor column position does not
  change.


  This command will swap the word in which the cursor is positioned with
  the previous word on the current line.  Any "non-word" characters
  between the affected words are preserved.


  This command will swap the current line with the line immediately
  following it.  The cursor does not change its position relative to the
  screen.


  Refer to the "Block Commands" section in this chapter for a complete
  explanation of these commands.  The commands are included here
  because, if desired, you can configure the editor so that these
  commands act on the current cursor line in the same manner in which
  they act on Blocks.  For more information on how to configure this
  option, refer to the "Advanced Options" section of Chapter 2.


  Refer to the "Block Commands" section in this chapter for a complete
  explanation of these commands.  The commands are included here
  because, if there is no marked Block in the text, these commands will
  act on the current cursor line.


                    Deleting And Undeleting Text


  If Insert mode is ON, the Backspace command deletes the character to
  the left of the cursor.  The text to the right of the cursor is pulled
  behind the cursor as it moves to the left.  If the cursor is in column
  one and you enter Backspace, the cursor line is appended to the line
  immediately above.

  If Insert mode is OFF, the Backspace command works the same as above
  except the text to the right of the cursor is not pulled behind the
  cursor as it moves left.

  The DelLtWord command is a backspace for "words".  It works just like
  the Backspace command, except that it deletes all characters from the
  cursor to the beginning of the previous word.


  DelCh will delete the character at the cursor position and pull the
  text to the right of the cursor, one column to the left.

  If the cursor position is to the right of the last non-blank character
  on the cursor line, the line immediately below will be appended to the
  cursor line.


  The DelRtWord command is a character delete for "words".  It works
  just like the DelCh command, except that it deletes all characters
  from the cursor to the beginning of the following word.


  This command deletes the character at the cursor position and all text
  to the right of the cursor on the current cursor line.  The cursor
  position does not change.


  This command deletes the current cursor line from the text. All text
  below the deleted line is shifted up one line.


  This command allows you to reverse any changes you have made to the
  cursor line.  This can be helpful if you accidentally delete or change
  part of a line, or you just change your mind and want the cursor line
  back the way it was.  This command must be issued before the cursor is
  moved from the current cursor line and before any file or window
  commands are entered.  Changes made using the FindReplace command
  cannot be reversed with this command.


  This command allows you to retrieve text that has been deleted by the
  DeleteBlock, DelLine, DelRtWord, or DelToEol commands.  Refer to "The
  Kill Buffer - A Safety Net" section in this chapter for a complete
  explanation of the use of this command.

                           Changing Case


  This command changes the current character to its upper-case
  equivalent.  If the cursor is in a Block when invoked, all characters
  in the Block are upper-cased.


  This command changes the current character to its lower-case
  equivalent.  If the cursor is in a Block when invoked, all characters
  in the Block are lower-cased.


  This command flips the case of the current character.  If the cursor
  is in a Block when invoked, all characters in the Block are flipped.

                              Sorting

The editor allows you to sort a range of lines, using a column Block as
the key upon which the sort is based.  In order to use the Sort feature,
mark a column Block indicating the key on which to sort, and then press
<Shift F3>.

The Sort can be configured (either interactively or by using the
configuration program, QCONFIG) to ignore or respect case, and to sort
in ascending or descending order.


  Sorts all the lines spanned by a column Block, using the column
  Block as the sort key.


  Toggles sort case sensitivity ON or OFF.  Set this option ON to have
  the Sort command ignore the case of characters when sorting; set this
  option OFF to have the Sort command respect upper/lower case.


  Toggles the sort order between ascending and descending.  Set this
  option OFF to sort in ascending order; set this option ON to sort in
  descending order.


The Kill Buffer - A Safety Net
??????????????????????????????

The editor maintains a temporary storage area for deleted text.  This
provides the User a safeguard against incorrectly or inadvertently
deleting text.  This recovery mechanism is automatically in effect when
the editor is running.  No action is required from the User until there
is a need to recover deleted text.

The temporary storage area is called the Kill Buffer.  Text that has
been deleted by the following commands will be placed into the Kill
Buffer:

                    DeleteBlock  <Alt G>
                    DelLine      <Alt D>
                    DelRtWord    <Ctrl T>
                    DelToEol     <F6>

To understand how the Kill Buffer works and how text is recovered from
the Kill Buffer, refer to the following illustration:


                     The Kill Buffer

   Entry    Command
   Number   Entered      Buffer Contents
  ??????????????????????????????????????????????????????? top
  ?  4    ? DelToEol   ? part of this line was deleted. ?
  ???????????????????????????????????????????????????????
  ?  3    ? DelRtWord  ? word (1 word deleted)          ?
  ???????????????????????????????????????????????????????
  ?  2    ? DelLine    ? This entire line was deleted.  ?
  ???????????????????????????????????????????????????????
  ?  1    ? DelLine    ? This entire line was deleted.  ?
  ???????????????????????????????????????????????????????
  ? empty ?            ?                                ?
  ???????????????????????????????????????????????????????
  ? empty ?            ?                                ?
  ??????????????????????????????????????????????????????? bottom


Each time one of the text deletion commands is used, a new entry is made
in the Kill Buffer.  In the above example, four deletion commands have
been issued.  The text from these four commands has been stored in the
Kill Buffer from top to bottom. In other words, when the DelToEol
command was issued (entry #4), the first three entries were pushed
toward the bottom of the Kill Buffer and the newly deleted text was
entered at the top.

In the example, the Kill Buffer has enough room for six entries. When a
seventh entry is made, the oldest entry, or entry number one, will be
discarded from the Kill Buffer.  Once discarded from the Kill Buffer,
that text can no longer be recovered.

To recover deleted text, the UnKill <Ctrl U> command is used.  Each time
the UnKill command is issued the most recent entry (the "top" entry of
the Kill Buffer) is retrieved and restored to the file.  This entry is
then deleted from the Kill Buffer, and all remaining entries move toward
the top of the buffer by one position. In the example, the first time
the UnKill command is issued, entry #4 will be recovered.  Next, entry
#3 will be recovered, and so on. Thus, recovering deleted text follows
the rule of LIFO (last in, first out).  The last entry of deleted text
will be the first one recovered and the first entry of deleted text will
be the last one recovered.

Here are some additional items of which to be aware regarding the Kill
Buffer and its uses.


  editor. The Kill Buffer for each file exists only as long as the file
  is loaded.


  changed using the configuration program. Refer to the "General
  Options" section of Chapter 2 for more information.


  will take up one entry in the Kill Buffer each time the commands are
  executed.  The text deleted using the DeleteBlock command will take up
  as many entries as there are lines in the Block.

  It is important to note that regardless of how large the Kill Buffer
  is configured to be, it may be possible to mark and delete a Block in
  the file which is larger than the buffer.  If this situation arises,
  the editor will save the deleted text in the Kill Buffer from the
  bottom up.  For example, if a marked Block is 200 lines long and five
  lines too large for the Kill Buffer, then the top five lines of the
  Block will not be loaded into the Kill Buffer.


  will be inserted immediately before the current cursor line, and
  deleted words will be inserted immediately before the current cursor
  position.


MACROS
??????????????????????????????????????????????????????????????????????

The editor provides a helpful facility for creating macros, allowing you
to simplify and automate editing tasks and to more fully customize the
editor.  Macros can be created as simple Keyboard Macros, by having the
editor record a series of keystrokes as they are entered from the
keyboard.  More versatile macros can be created by assigning a series of
editing and macro commands to specific keys within the editor's Keyboard
Definition file (QCONFIG.DAT).  To create even more complex macros, QMac
(the external macro facility) can be used.  (QMac is included in the
registered version.)

For more information about creating and using macros, refer to the file
MACRO.DOC.



PRINTING
??????????????????????????????????????????????????????????????????????

The editor allows you to print either your entire current file or a
portion of the current file.

To print the entire current file, enter the PrintAll <Alt P><A> command.
The entire current file is printed.

To print a portion of the current file, first mark the portion of the
file to be printed using the Block-marking commands.  (Refer to the
"Block Commands" section in this chapter.)  Next, enter the PrintBlock
<Alt P><B> command.  Only the marked Block portion of the file is
printed.


Print Formatting
????????????????

The editor contains various commands to make printing easier and more
useful. There are commands to set the left margin, the top margin, and
the bottom margin; to specify the number of lines per page; to indicate
the output destination; to select single-, double-, or triple-spacing;
and to indicate whether you want to print line numbers.


  This command specifies the number of blank spaces to be used as a left
  margin.  Valid values are zero to 200.


  This command specifies the number of lines to be printed on each page.
  Valid values are zero to 200.  A value of zero instructs the editor to
  print continuously without page breaks.


  This command specifies the number of lines printed at the top of each
  page before the text is printed.  Valid values are zero to 200.  If
  the print page size is zero, the editor treats the document as one
  page and the top margin is ignored for all pages except the first
  printed page.


  This command specifies the number of lines left blank at the bottom of
  each page.  Valid values are zero to 200.  If the print page size is
  zero, this command has no effect.


  This command identifies the print output destination.  Choices are
  PRN, LPT1, LPT2, LPT3, or any valid DOS filename (for printing to
  disk).


  This command indicates the number of lines to advance for each new
  line of text to be printed.  Valid values are 1 to 200.  A value of 1
  signifies single-spaced output, 2 signifies double-spaced output, etc.


  This command determines whether line numbers are printed.  Set this
  option ON to have file line numbers printed at the beginning of each
  line; set this option OFF if you do not want line numbers added to the
  print output.


  This command determines whether the editor suspends printing between
  pages.

  To have the editor pause after each page is sent to the printer, set
  this option ON.  (For this option to operate effectively, the print
  page size must be set to an appropriate value greater than 0.  Refer
  to SetPrintPageSize in this section.)  The editor then requires a
  keypress after every page is printed before continuing.  This allows
  you to manually feed paper to the printer, one sheet at a time.

  Set this option OFF for the editor to automatically send each
  subsequent page to the printer without pausing.


Formfeeds
?????????

The editor automatically sends a formfeed character (ASCII 12) to the
printer between each printed page.  A page is determined according to
the value of SetPrintPageSize (refer to the previous section).

By default, the editor also sends a formfeed character when printing is
complete (after the last printed page).  You can configure the editor so
that it does not send a final formfeed.  To change the default behavior,
set the configuration option "Add formfeed after printing" to <N>.
(Refer to the "Printer Options" section of Chapter 2.)  You can also
change this option interactively for the current session only, with the
following command:


  This command determines whether the editor sends a formfeed character
  when printing is complete (after the last printed page).

  To have the editor send a final formfeed character to the printer, set
  this option ON.  Set this option OFF to prevent the editor from
  automatically sending a final formfeed character.


At times you may find it desirable to insert formfeed characters
directly into your text.  For example, you want the page size for your
text to be 55 lines, which you have set using the SetPrintPageSize
command, but there is a 15-line table in the text that should appear on
a page by itself.  To accomplish this, simply insert formfeed characters
immediately before and after the table.

To insert a formfeed character in the text, enter the Literal <Ctrl P>
command followed by a formfeed <Ctrl L> character.  Alternatively, you
can insert a formfeed character by holding down the <Alt> key and typing
"12" on the alternate numeric keypad.  (You can also use the built-in
ASCII-chart feature to insert a formfeed character.  Refer to the
AsciiChart command in the section "Adding Text" of this chapter.)  If
you need to insert formfeed characters into your text repeatedly, you
may want to use a macro.  An example of a macro to insert formfeed
characters can be found in the "Example of a Keyboard Macro" in the file
MACRO.DOC.

It is also possible, from within the editor, to send a formfeed
character directly to the printer, causing the printer to eject a page.
To do this, simply execute the PrintEject <Alt P><F> command.


THE SHELL AND DOS COMMANDS
??????????????????????????????????????????????????????????????????????

(For the following discussion, "Dos" is an editor command, while "DOS"
refers to the computer's operating system.)

Two very helpful commands allow you to interact with DOS from within the
editor.  The commands, Shell and Dos, allow you to perform most
functions that you would normally execute from the DOS command line,
then return you to your original position in the editor.

The editor also has an option which frees up memory when executing the
Shell and Dos commands.  For details, see "Swapping, [JR] Shell
Indicator" later in this section.


  This command should be used when executing multiple DOS commands. Upon
  executing the Shell command, control is passed to DOS. The DOS prompt
  appears on the screen, just as if no other programs were running. You
  may now enter most DOS commands. (Some exceptions are noted below.)
  Once you have entered all the desired DOS commands, simply type "exit"
  and press <Enter>, and control passes back to the editor.  You are
  then positioned in the file exactly where you were when the Shell
  command was executed.


  This command should be used when executing a single DOS command. Upon
  executing this command, the editor prompts with:

  ??????????????????????????????????????????????????????????????
  ?Execute what:                                               ?
  ?                                                            ?
  ??????????????????????????????????????????????????????????????

  You may now enter almost any DOS command.  (Some exceptions are noted
  below.)  Once the DOS command has completed, pressing any key causes
  control to pass back to the editor.

You should not execute any TSR programs (programs that terminate but
remain resident in your computer) from the Shell or Dos commands.  For
example, the DOS PRINT and GRAPHICS commands are TSR programs.

If you mistakenly execute a TSR program from the Shell or Dos command,
the computer's memory allocation scheme will probably become fragmented,
and as a result, the editor's available memory may become severely
limited.  You should save your files, terminate the editor, and then
reboot the computer.


Swapping, [JR] Shell Indicator
??????????????????????????????
The Dos and Shell commands can optionally swap the editor out to disk or
expanded memory leaving only a 2K kernel in memory.  This allows much
more memory for running memory-hungry programs (such as compilers) from
within the editor.  You can set this option by default using the
configuration program (Advanced Options), or you can toggle it ON and
OFF using the ToggleSwap command.

While in a shell with swapping ON, the editor will maintain a file with
a ".SWP" file extension in your root directory.  It is very important
that you do not delete this file while in the shell.


Once in the shell, the editor will optionally append "[JR]" to the DOS
prompt string, provided that:

1. You have defined the prompt environment variable.

2. There is enough space left in the environment.

3. You have set the "Change DOS PROMPT during a Shell" option to <Y> via
   the configuration program.  (For more information, refer to the
   "Advanced Options" section of Chapter 2.)

If you have NOT defined the prompt environment variable, then we suggest
you do so.  It is helpful with DOS command-line operations in general.
A suggested prompt is (this should go in your AUTOEXEC.BAT file):

    set prompt=$p $t $g

If you do have a prompt string defined, but you do not get the "[JR]"
prompt in the editor's shell, add the following to your AUTOEXEC.BAT:

    set x=x


WORD-PROCESSING COMMANDS
??????????????????????????????????????????????????????????????????????

The editor has all the features you need to do basic word processing.
In addition to the commands which enable you to view and edit your text
(discussed in previous sections), the editor provides word-wrapping,
paragraph-reformatting capabilities, and a line-centering command.

The editor also contains commands for changing case and for filling a
Block. Refer to the sections in this chapter on "Changing Case" and
"Manipulating Blocks Directly," respectively, for more information on
these two functions.



  To benefit from the word-wrap and paragraph-reformatting features of
  the editor, an appropriate right margin must first be set.  The
  default setting is column 72.  This may be changed using the
  configuration program.  (Refer to the "General Options" section of
  Chapter 2 for instructions on how to change the right margin setting.)
  The value of the right margin is used each time the editor is
  initiated.

  The editor provides the ability to change the right margin setting
  temporarily while the editor is running without affecting the
  permanent setting.  To change the right margin setting temporarily,
  execute the SetRmargin <Ctrl O R> command.  The editor prompts with:

  ??????????????????????????????????????
  ?Right margin [1..2032]:             ?
  ?                                    ?
  ??????????????????????????????????????

  Enter the desired column number for the right margin.  The new setting
  is in effect until the SetRmargin command is executed again or the
  next time the editor is initiated.  WordWrap mode (see below) is
  automatically switched ON whenever the right margin is set using this
  command.


  WordWrap is an editing mode which can be switched ON and OFF using the
  ToggleWordwrap <Ctrl O W> command.  When switched ON, this mode causes
  the cursor to advance automatically to the next line as text is
  entered.

  The cursor advances to the next line based on the right margin, which
  is set using the SetRmargin <Ctrl O R> command (see above).  Once the
  cursor reaches the right margin and a non-blank character is typed,
  the cursor, along with the word (that is, any continuous string of
  non-blank characters) currently being typed, will be advanced to the
  next line.

  The cursor does not advance to the next line if the current line does
  not contain at least one space.



  The WrapPara <Alt B> command reformats text from the current cursor
  position to the next blank line or the end of the file.

  The right-hand side of the text is reformatted based on the right
  margin.  The right margin is set using the SetRmargin <Ctrl O R>
  command (see above).

  The left-hand side of the text is reformatted based on AutoIndent
  mode.  If AutoIndent mode is switched OFF, the left margin is column
  one.  If AutoIndent mode is switched ON, the first non-blank character
  on the line immediately AFTER the cursor line is used for the left
  margin.  Using the line AFTER the cursor line allows for special
  indentation for the first line of a paragraph.  (For more information
  on AutoIndent mode, refer to the "Modes" section of this chapter.)


  Centers the current cursor line based on column 1 and the right
  margin.  Use the SetRmargin <Ctrl O R> command to change the right
  margin (see above).

  With the cursor inside of a line Block, you can execute this command
  to center several lines at once.  With the cursor inside of a column
  Block, you can center lines based on the left and right Block
  boundaries.


MODES
??????????????????????????????????????????????????????????????????????

The editor uses modes to affect its operation.  In general, an editor
mode is a state during which certain commands or keystrokes behave
differently.  Following is an explanation of various editor modes.


  Insert mode can be switched ON and OFF by pressing the <Ins> key. When
  Insert mode is ON, an "I" appears on the StatusLine.  The following
  table describes the commands and keystrokes which are affected by
  Insert mode.


  Command/
  Keystroke      Insert ON                 Insert OFF
  ???????????    ??????????????????????    ??????????????????????
  Characters,    Shifts text to right      Overwrites existing
  Space          of cursor, one column     text.
                 to the right.

  Backspace      Deletes character/word    Deletes character/word
                 to left of cursor. Text   to left of cursor. Text
                 to right of cursor        to right of cursor does
                 shifts left one column.   not shift.

  Return         Splits line at cursor     Does not split line.
                 position.  Cursor moves   Cursor moves to next
                 to next line.             line.

  TabLt,         Tabs cursor and shifts    Tabs cursor only.
  TabRt          text same number of
                 positions.




  This mode enables CUA-style Block marking, using the shifted cursor
  keys.  CUA-Style Block Marking mode can be switched ON and OFF using
  the ToggleCUAMarking command.  You can also set this mode as the
  default mode by setting the configuration option "Use CUA-style (shift
  cursor) block marking" to <Y>.  (Refer to the "Advanced Options"
  section of Chapter 2.)

  When switched ON, this mode forces the shifted cursor keys to mark
  non-inclusive character Blocks.  The "CUA-Style Block Marking" section
  of this chapter provides additional information about this mode.



  AutoIndent mode is switched ON and OFF using the ToggleIndent
  <Ctrl Q I> command.  This mode, when ON, positions the cursor at the
  current left margin (This is not the same as the print left margin.)
  whenever the <Enter> key is pressed.  The current left margin is
  determined by the first non-blank character on the immediately
  preceding line.  When AutoIndent mode is ON, an "A" appears on the
  StatusLine.  The following table describes the commands and keystrokes
  which are affected by AutoIndent mode.


  Command/
  Keystroke    AutoIndent ON                 AutoIndent OFF
  ?????????    ??????????????????????????    ????????????????????????

  Return       Cursor positioned below       Cursor positioned at
               first non-blank character     column one.
               of previous line.

  WrapPara     When reformatting, the left   A left margin of zero is
               margin is determined from     used when reformatting.
               the first non-blank
               character on the line
               immediately following the
               cursor line.



  This mode is specifically for "C" language programming.  It is
  switched ON and OFF using the configuration program.  (Refer to the
  "General Options" section of Chapter 2 for information on switching C
  mode ON and OFF.)  C mode is only in effect when AutoIndent mode is
  also ON.

  C mode, when switched ON, affects files with a ".c", ".cpp", ".cxx",
  ".h", ".hpp", or ".hxx", file extension.  When the current cursor line
  contains a "{" and the <Enter> key is pressed, the editor issues a
  normal Return followed by a TabRt command.  Additionally, when a "}"
  character is entered, the editor first issues a TabLt command and then
  enters the "}" character.



  WordWrap mode is switched ON and OFF using the ToggleWordwrap
  <Ctrl O W> command.  When switched ON, this mode causes the cursor to
  advance to the next line automatically as text is entered.

  The cursor advances to the next line based on the right margin, which
  is set using the SetRmargin <Ctrl O R> command.  Once the cursor
  reaches the right margin and a non-blank character is typed, the
  cursor, along with the word (i.e., any continuous string of non-blank
  characters) currently being typed, is advanced to the next line.

  The cursor does not advance to the next line if the current line does
  not contain at least one space.  When WordWrap mode is ON, a "W"
  appears on the StatusLine.



  BackUp mode is switched ON and OFF using the ToggleBakups <Esc><O><B>
  command.  When BackUp Mode is switched ON, the editor creates a backup
  copy (using the .bak file extension) for any file that is edited and
  saved. The backup copy of the file is an image of the file before it
  was last edited and saved.  When BackUp mode is OFF, no backup files
  are created.



  MacroRecord mode is switched ON and OFF using the MacroRecord <Ctrl M>
  command.  This mode, when ON, records and assigns a series of commands
  and keystrokes to a designated key (or scrap area).  This creates a
  Keyboard Macro.  For a complete explanation of macros and their use,
  refer to the file MACRO.DOC.  When MacroRecord mode is ON, an "R"
  appears on the StatusLine.



  EnterMatching mode is switched ON and OFF using the ToggleEnterMatching
  <Esc><O><E> command.  If switched ON, the editor automatically inserts
  into the text a corresponding ), ], }, or " character each time a (, [,
  {, or " character, respectively, is entered.



  Box Drawing mode is switched ON and OFF using the ToggleBoxDraw <Shift
  F1> command.  If switched ON, the cursor movement keys (up, down,
  right, left) can be used to "draw" lines in the text.  This can be
  very useful for creating charts and tables.  The ToggleBoxType command
  allows you to select different line drawing styles.  When Box Drawing
  mode is ON, a "B" appears on the StatusLine.



  Synchronized Scrolling mode is switched ON and OFF using the
  ToggleSyncScroll <Ctrl O Y> command.  If switched ON, and there are
  multiple windows on the screen, the editor simultaneously performs
  cursor movement and scrolling activity in all other windows as you
  move the cursor or scroll the text in the current window.  When
  Synchronized Scrolling mode is ON, an "S" appears on the StatusLine.

  The "Synchronized Scrolling in Windows" section of this chapter
  provides additional information about this mode.



  Fixed Tabs mode is selected using the SetTabType <Esc><O><Y> command.
  If selected, the TabRt and TabLt commands move the cursor to the next
  (or previous) tabstop as defined by the value of the cursor tab width
  (set by the SetCtabwidth <Esc><O><C> command).



  Smart Tabs mode is selected using the SetTabType <Esc><O><Y> command.
  If selected, the TabRt and TabLt commands place the cursor beneath the
  first character of the next (or previous) word on the first nonblank
  line preceding the current cursor line.



  Variable Tabs mode is selected using the SetTabType <Esc><O><Y>
  command.  If selected, the TabRt and TabLt commands move the cursor to
  the next (or previous) tabstop as defined by the variable tab stops
  (set by the SetVarTabStops <Esc><O><V> command).

  Note that all of the supported tab modes may be set via the Tab type
  menu (<Esc><O><Y>).



  Physical Tab Expansion mode is switched ON and OFF using the
  ToggleTabsExpand <Alt V> command.  If switched ON, physical tab
  characters (ASCII 9) found in a file are expanded into spaces
  according to the Physical Tab Width set in the configuration program.
  (Refer to the "Tab Settings" section of Chapter 2.)  If switched OFF,
  physical tabs are displayed on the screen and a physical tab character
  is placed in the text each time the TabRt command is executed.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   In general, Physical Tab Expansion mode should always be   ?
?   set ON.  You would only want to set it OFF if you are      ?
?   editing binary or data files that contain or require       ?
?   physical tabs.                                             ?
????????????????????????????????????????????????????????????????



  Tabs Out mode is switched ON and OFF using the ToggleTabsOut <Alt I>
  command.  If switched ON, continuous spaces in a line of text are
  replaced with physical tabs (ASCII 9) according to the Physical Tab
  Width set in the configuration program.  (Refer to the "Tab Settings"
  section of Chapter 2.)  Spaces falling between single or double quotes
  are not replaced.


CHAPTER 2.  CUSTOMIZING THE EDITOR
??????????????????????????????????????????????????????????????????????

The editor provides a configuration capability that allows you to
customize the editor to suit your individual preferences.  There are a
wide range of options which may be customized, including key
assignments, colors, tab settings, and printer options.

Of course, customizing the editor is not a requirement.  If you like the
editor exactly the way it is, it is not necessary to use the
configuration program.

The configuration program is QCONFIG.EXE and is included on the
distribution diskette, along with the other editor files.  The
configuration program customizes the editor by actually modifying the
editor program itself - Q.EXE.


INITIATING THE CONFIGURATION PROGRAM
??????????????????????????????????????????????????????????????????????

To initiate the configuration program, type "qconfig" from the DOS
command line, and press <Enter>.  The program displays a prompt to
request the name of the editor program to customize.  The following
prompt is issued by the configuration program:

    Enter program name to config, <CR> for Q.EXE :


Simply press <Enter>, unless you have previously renamed the editor, or
if the editor is located in another directory.

If you have renamed the editor, enter the appropriate filename and press
<Enter>.  If it is located in another directory, enter the full pathname
and press <Enter>.

If the file to be customized could not be located on disk, the error
message "File not found" is displayed.  Check the editor's filename
and/or path for accuracy.

If the version numbers of the editor and the configuration program are
not the same, the error message "Configuration area not found" is
displayed.  Try reloading the editor software from the distribution disk
(in particular, Q.EXE and QCONFIG.EXE).


THE CONFIGURATION MENU
??????????????????????????????????????????????????????????????????????

The configuration program displays the following menu from which to
select the desired functions for customization.

????????????????????????????????????????????????????????????????
?  Configuration choices.                                      ?
?  Choose One of the Following by pressing the indicated Key:  ?
?                                                              ?
?  Advanced options                                            ?
?  Colors/screen                                               ?
?  General options                                             ?
?  Help install                                                ?
?  Keys                                                        ?
?  Printer options                                             ?
?  Quit                                                        ?
?  Save changes and quit                                       ?
?  Tab settings                                                ?
????????????????????????????????????????????????????????????????

Following is a brief explanation of these menu items.  They are
discussed in detail later in this chapter.


    Contains a variety of configurable options, including those related
    to video display, DOS memory, editor menus, and the mouse.


    Allows you to change colors of various display items and to specify
    numerous other editing display options.


    A miscellaneous category of options.


    Allows you to install your own Help Screen.


    Allows you to reassign editor commands to different keys.


    Allows you to set options for printing text, such as page size.


    Terminates the program.  You are first prompted to save or not save
    changes.


    Terminates the program, unconditionally saving your changes.


    Allows you to set various tab-related options, including the
    physical and cursor tab widths.


To make a selection from the menu, type the first letter of the desired
menu item.  You are prompted for a response to each option within the
category.  Each configuration option is displayed along with its current
value.  (The Keys and Help install categories, however, work a little
differently and simply request a filename.)

For each option displayed, you may enter a new value.  If you do not
wish to change the current value, simply press <Enter>.  After you have
reviewed all options in a category, you are returned to the main
configuration menu where you can select another category.

Once you have completed customizing, you may save all the changes you
have made either by simply typing "S" at the main menu prompt; or by
typing "Q" at the main menu prompt, and then typing "Y" at the prompt,
"Save Changes (Y/N)?".  Your changes are made permanent (that is,
effective the next time you execute the editor) by writing them to the
editor program itself (Q.EXE or QMR.EXE).  The configuration program
then terminates.

If you decide that you do not want to save your changes, type "Q" at the
main menu prompt, then type "N" at the prompt, "Save Changes (Y/N)?". No
changes are saved, and the configuration program terminates.


ADVANCED OPTIONS
??????????????????????????????????????????????????????????????????????

This section contains a list of the Advanced Options which can be
customized using the configuration program.  The configuration program
prompt message, the default value, and a description are given for each
option.


    If your system has an enhanced (101-key) keyboard, set this option
    to <Y> for the editor to recognize the additional keys such as F11,
    F12, and the grey cursor keys.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   Many TSRs, including mouse drivers, do not properly        ?
?   recognize the enhanced keyboard.  If you are using a TSR   ?
?   and it is not working with the editor, try setting this    ?
?   option to <N>.                                             ?
????????????????????????????????????????????????????????????????



    Select <Y> if you want the editor to swap itself out of DOS memory
    and to expanded memory or disk whenever the Dos or Shell commands
    are executed.  This will leave a small 2K editor kernel in DOS
    memory, freeing up the rest of DOS memory for running other
    applications, such as compilers or spreadsheets, out of the Dos or
    Shell commands.


    If you selected <Y> for the previous option, then specify here the
    disk drive and path to be used for swapping.  Enter an asterisk
    ("*") if you want the editor to default to your current drive for
    swapping.


    By default, the editor uses a small cursor when Insert mode is OFF,
    and a medium cursor when Insert mode is ON.  Select <N> if you do
    not want the editor to change the cursor size.


    If you want to use a large flashing block cursor, set this option to
    <Y>.  This option is great for laptop users.


    Determines the size of the cursor when Insert mode is ON.  A value
    of 0 indicates that no cursor indication is to be displayed.  Values
    1 to 7 indicate increasingly larger flashing cursor sizes.


    Determines the size of the cursor when overwrite mode is ON.  A
    value of 0 indicates that no cursor indication is to be displayed.
    Values 1 to 7 indicate increasingly larger flashing cursor sizes.


    FOR NON EGA/VGA SYSTEMS ONLY.  Set this option to <Y> if you want
    the editor to automatically detect the number of rows on your
    screen.

    Setting this option to <Y>, to automatically detect the number of
    rows on your screen, only works if you have an IBM PC-AT or 100%
    compatible.  For example, setting this option to <Y> does NOT work
    on AT&T 6300s.


    FOR NON EGA/VGA SYSTEMS ONLY.  If you set the previous option to
    <N>, then you must provide the number of rows on your screen here.

    You should set this option to 25 unless you have a special card and
    monitor (such as a Genius Video System) that allow you to display
    more than 25 rows.


    Normally, the Return command splits the current line at the cursor
    when executed with Insert mode ON.  This means that the portion of
    the line following the cursor is inserted on a new line.  If Insert
    mode is OFF, the Return command simply places the cursor at the
    beginning of the next line.

    If you select <N> for this option, the Return command always acts as
    if Insert mode is OFF.  Return moves the cursor to the beginning of
    the next line with no effect on the text.


    If you enter <Y> for this option, the current cursor line is used
    when you execute the Cut or Copy command and no Block is marked in
    the current file.


    By default, the Escape command displays the pull-down menu, when
    executed outside of the menu or any editor prompts.  If you do NOT
    want the Escape command to do this, select <N> for this option.


    Set this option to <Y> if you want to return to the original DOS
    drive and directory on program exit regardless of which drives and
    directories you have accessed with the editor's directory picker or
    the Dos or Shell commands.


    Set this option to <Y> if you want the following to be appended to
    the DOS prompt during an editor Shell: [JR].


    Set this option to <Y> if you want the TabRt and TabLt commands to
    shift entire marked Blocks when the cursor is within the marked
    Block and Insert mode is ON.


    Determines the date format used by the InsertDate command.  The date
    string consists of a three-character abbreviation for the day of the
    week, followed by the numerical date of the month.  The order of the
    elements of the date of the month can be selected from three
    options:  select <1> for month, followed by day of the month,
    followed by 2-digit year; select <2> for day of the month, followed
    by month, followed by 2-digit year; select <3> for 2-digit year,
    followed by month, followed by day of the month.


    Determines the separator character used by the InsertDate command.
    Select the character to be used to separate the day, month, and year
    elements of the date.


    Determines the time format used by the InsertTime command.  Select
    <1> for 24-hour time format; select <2> for 12-hour time format.


    Determines the separator character used by the InsertTime command.
    Select the character to be used to separate the hours and minutes
    (and seconds for 24-hour format) elements of the time.


    Identifies the directory where the editor's supplemental files are
    stored.  These supplemental files are:  the files used by the
    spelling checker (in the registered version); and any loadable
    macro files (that is, Keyboard Macros and macros created with QMac).

    If you are using DOS 3 or above and you store all supplemental files
    in the same directory as the editor, you do not need to set this
    option.


    Determines whether the editor recognizes use of a mouse for editing
    operations.  If this option is set to <Y>, and a mouse driver is
    loaded, the mouse will be active in the editor.  Set this option to
    <N> to disable mouse operation within the editor.


    Determines whether the mouse operates as a left-handed mouse.  Set
    this option to <Y> to swap the functions of the outside buttons on
    the mouse for use with your left hand.  Set this option to <N> for
    standard operation of the mouse buttons.


    Indicates the amount of time a mouse button must be held down to
    distinguish between the mouse button being clicked (pressed and
    immediately released) versus being pressed and held.

    When a mouse button is clicked, a command executed from a mouse
    scrollbar is executed one time only.  When a mouse button is pressed
    and held, the command is executed repeatedly until the mouse button
    is released.  (See "Mouse repeat-delay factor" below.)  Only the
    scrolling operations are repeatable.

    To select the amount of time that you must hold down the mouse
    button before the editor begins repeating a mouse-executed command,
    set this option to the desired value, from 1 through 36.  The time
    is measured in terms of machine timer ticks, in 1/18-second
    increments.

    For example:  A value of 9 means that the mouse button is considered
    clicked if pressed and released within 1/2 second; otherwise, if the
    mouse button is pressed and held for longer than 1/2 second, the
    editor begins repeating the selected command.


    Indicates the relative amount of time the editor is to wait between
    repetitions of a command when a mouse button is pressed and held.
    (See "Mouse hold time" above.)  When a mouse button is pressed and
    held, a command executed from a mouse scrollbar is repeated as long
    as the mouse button is held down.

    To control the amount of time that the editor delays between each
    repetition of a mouse-executed command, set this option to an
    appropriate value, from 0 through 32767.  This option is hardware
    dependent, and is relative to the speed of your particular machine.
    To slow down repetition, increase the value of this option; to speed
    up repetition, decrease the value.


    Determines whether CUA-Style Block Marking mode is initially ON or
    OFF each time the editor is executed.  If this option is set to <Y>,
    the editor forces the following shifted cursor keys to operate as
    indicated (regardless of the commands asssigned to these keys in
    QCONFIG.DAT):

 CUA-style Key          Block-marking Operation
 ????????????????????   ???????????????????????????????????????????????

 <Shift Cursor Left>    Mark/extend Block and move left one character
 <Shift Cursor Right>   Mark/extend Block and move right one character
 <Shift Cursor Up>      Mark/extend Block and move up one line
 <Shift Cursor Down>    Mark/extend Block and move down one line
 <Shift Home>           Mark/extend Block and move to beginning of line
 <Shift End>            Mark/extend Block and move to end of line
 <Shift PgUp>           Mark/extend Block and move up one page
 <Shift PgDn>           Mark/extend Block and move down one page

    Set this option to <N> to have the shifted cursor keys operate
    according to their assignments in QCONFIG.DAT.


    Determines whether a Block marked using the CUA-style marking keys
    (with CUA-Style Block Marking mode ON) will remain marked after you
    type a non-CUA-style Block marking or command key.  Set this option
    to <Y> for such Blocks to remain marked.  Set this option to <N> if
    you want such Blocks to be automatically unmarked once you type a
    non-CUA-style Block marking or command key.


COLORS/SCREEN OPTIONS
??????????????????????????????????????????????????????????????????????

This section contains a list of the Screen and Screen Color Options
which can be customized using the configuration program.  The
configuration program prompt message, the default value, and a
description are given for each option.


    Indicates whether the StatusLine is to be positioned at the top line
    or the bottom line of the screen.


    This character is used to "break up" the information on the editor's
    StatusLine.  The default is the space character.  For example, if
    the dash character is specified, the StatusLine would look like
    this:

    ???????????????????????????????????????????????????????????????
    ?L 15-- C 15---IAW-BS--411K-----*c:\semware\editor.doc--------?
    ???????????????????????????????????????????????????????????????


    Shows the hexadecimal and decimal values of the current character at
    the right-hand edge of the StatusLine.


    Indicates whether the editing screen is to be completely enclosed in
    a box, so that each window on the screen has a border.  To fully use
    the mouse capabilities, set this option to <Y>.  This is because the
    mouse uses the border area to scroll text and perform many window
    operations.


    Determines whether the editor is to restore the original screen upon
    exiting the program.  Be aware that setting this option to <Y>
    causes the editor to require an additional 4K of memory; however,
    this can be very handy after long editing sessions to see what you
    were doing before you started.


    Determines whether the editor should slow down screen updating to
    eliminate "snow" (a sparkling appearance on the screen that results
    from updating the screen too quickly).

    If this option is set to <Y>, and the editor determines that your
    system has a Color/Graphics Adapter card (CGA), the editor does not
    write to the screen at full speed, in order to avoid "snow".  If you
    have a CGA card that does not create snow effects, set this option
    to <N> so that the editor updates the screen as quickly as possible.

    If you have a VGA, EGA, COMPAQ, ZENITH, or other color adapter that
    allows full speed screen updating without "snow", then set this
    option to <N>.

    This option has no effect on monochrome and true EGA/VGA cards.


    Specifies the number of columns that the editor should scroll when
    you execute the ScreenLeft or ScreenRight commands.


    Determines whether the editor sets an initial video mode upon
    startup.

    0:  Use the current video mode
    1:  Set the monitor to 25-line mode
    2:  Set the monitor to 28-line mode     (VGA only)
    3:  Set the monitor to 43/50-line mode  (EGA = 43, VGA = 50)


    Determines whether the editor uses color or monochrome attributes
    for the screen display.  If you set this option to <0>, the editor
    will automatically detect the monitor type (color or monochrome) and
    use the appropriate attributes.


    Select <Y> if you wish to specify the attributes to use for the
    monochrome attribute set.


    Select <Y> if you wish to specify the attributes to use for the
    color attribute set.  (This option is skipped if you select <Y> for
    the previous option.)

If you select <Y> for either of the previous two options, the following
color chart and screen display options are presented:

??????????????????????????????????????????????????????????????????????????????????
?Attribute chart/guide. [0..127]                                                 ?
?                                                                                ?
?[  0][  1][  2][  3][  4][  5][  6][  7][  8][  9][ 10][ 11][ 12][ 13][ 14][ 15]?
?[ 16][ 17][ 18][ 19][ 20][ 21][ 22][ 23][ 24][ 25][ 26][ 27][ 28][ 29][ 30][ 31]?
?[ 32][ 33][ 34][ 35][ 36][ 37][ 38][ 39][ 40][ 41][ 42][ 43][ 44][ 45][ 46][ 47]?
?[ 48][ 49][ 50][ 51][ 52][ 53][ 54][ 55][ 56][ 57][ 58][ 59][ 60][ 61][ 62][ 63]?
?[ 64][ 65][ 66][ 67][ 68][ 69][ 70][ 71][ 72][ 73][ 74][ 75][ 76][ 77][ 78][ 79]?
?[ 80][ 81][ 82][ 83][ 84][ 85][ 86][ 87][ 88][ 89][ 90][ 91][ 92][ 93][ 94][ 95]?
?[ 96][ 97][ 98][ 99][100][101][102][103][104][105][106][107][108][109][110][111]?
?[112][113][114][115][116][117][118][119][120][121][122][123][124][125][126][127]?
?                                                                                ?
?Select attributes from the chart above.                                         ?
??????????????????????????????????????????????????????????????????????????????????


The chart above is for use with the following Screen Color Options.
Enter a number, in response to each option, based on the color in which
the number appears on the chart.

If you have a monochrome screen, many of the values in the chart will
appear to be the same color.  However, you still have the options of
normal, highlighted, underlined, and reverse video.  If you have a color
monitor, you can take advantage of a wider array of options.  (The
default monochrome setting is shown in the text of each prompt message
below.  The default color setting is shown to the right of the prompt
message.)


    The color used for marked Blocks.


    The color used for warning and error messages.


    The color used for normal text (the editing screen).


    The color used for the StatusLine.


    The color used for the cursor line.  Reverts to normal when a
    Block is marked.


    The color used for messages.


    The color used for "found" search strings when using the Find and
    FindReplace commands.


    The color used for the "End of File" line.


    The color used for the Help Screen.


    The color used for the border around the editor, if the editing
    screen is boxed.


    The color used for the border around the pull-down menus and the
    prompt boxes.


    The color used for items within sub-menus of the pull-down menu.


    The color used for selected items within the pull-down menus.


    The color used for the highlighted quick-key letter for each item
    listed on the pull-down menus.


                                             Default Color Setting: [36]
    The color used for the highlighted quick-key letter for the selected
    item on the pull-down menus.


GENERAL OPTIONS
??????????????????????????????????????????????????????????????????????

This section contains a list of the General Options which can be
customized using the configuration program.  The configuration program
prompt message, the default value, and a description are given for each
option.


    Affects the behavior of the DelCh command.  Set this option to <N>
    if you want the DelCh command to be restricted so that it only works
    on the current line.  Set this option to <Y> if you want the DelCh
    command to work across line breaks.  This means that if you issue
    DelCh at the end of the line, the following line is joined to the
    end of the cursor line (just as if you had issued a JoinLine
    command).


    If only 1 file is being edited, the editor can either terminate or
    ask for another file to edit whenever the PQuit, Exit, or File
    commands are executed.  To have the editor terminate, select <N>.


    Set this option to <Y> if you want WordWrap mode to be ON each time
    the editor is started; otherwise, set it to <N>. Refer to the
    "Word-Processing Commands" section of Chapter 1 for more information
    on WordWrap mode.


    Indicates the default right margin setting to be used each time the
    editor is executed.  Set this option to a value from 1 to 2032.
    Refer to the "Word-Processing Commands" section of Chapter 1 for
    more information.


    Set this option to <Y> if you want Insert mode to be ON each time
    the editor is started; otherwise, set it to <N>. Refer to the
    "Modes" section of Chapter 1 for more information on Insert mode.


    Set this option to <Y> if you want AutoIndent mode to be ON each
    time the editor is started; otherwise, set it to <N>. Refer to the
    "Modes" section of Chapter 1 for more information on AutoIndent
    mode.


    Set this option to <Y> if you want autoindenting to search back more
    than one line, if necessary, to find a nonblank line.  AutoIndent
    mode must be set ON for this option to work.  Refer to the "Modes"
    section of Chapter 1 for more information on AutoIndent mode.


    Affects the editor's behavior when filenames are specified
    containing wildcard characters (* or ?), from the DOS command line.
    Set this option to <Y> if you want the editor to load every file
    that matches the wildcarded specification.  (For example, if you
    enter "q *.doc", the editor loads all files with the extension
    ".doc").  Set this option to <N> if you want the editor to display a
    pick list of all the files which match the wildcarded specification.
    (You can then choose the file you want to edit by using the cursor
    keys to move to the desired file and then pressing <Enter>.)


    Affects the editor's behavior when filenames are specified
    containing wildcard characters (* or ?) within the prompt box for
    the EditFile command.  Set this option to <Y> if you want the editor
    to load every file that matches the wildcarded specification.  (For
    example, if you enter "*.doc", the editor loads all files with the
    extension ".doc"). Set this option to <N> if you want the editor to
    display a pick list of all the files which match the wildcarded
    specification. (You can then choose the file you want to edit by
    using the cursor keys to move to the desired file and then pressing
    <Enter>.)


    Set this option to <Y> if you want EnterMatching mode to be ON each
    time the editor is started; otherwise, set it to <N>.  Refer to the
    "Modes" section of Chapter 1 for more information on EnterMatching
    mode.


    Set this option to <Y> if you want C mode to be ON each time the
    editor is started; otherwise, set it to <N>.  Refer to the "Modes"
    section of Chapter 1 for more information on C mode.


    Indicates the number of deleted lines that are saved by the editor,
    and can later be recalled using the UnKill command.  For every file
    that is loaded in an editing session, this maximum number of lines
    is available.  Enter a value from 0 to 300.  (A value of 0 indicates
    that no deleted lines are to be saved.)


    Determines whether the editor is to remove trailing blanks from each
    line of text that is edited.  Set this option to <Y> if you want
    trailing blanks removed. (For most purposes, this setting is
    preferable, as it generally results in smaller files.)  Set this
    option to <N> if you want spaces at the end of lines to be
    preserved.


    Determines whether the editor is to add a Control Z to the end of a
    file when it is saved to disk.  Set this option to <Y> if you want
    to have a Control Z added to the end of files; otherwise, set this
    option to <N>.

    MS/PC-DOS versions 2.0 and above do NOT require an end-of-file
    terminator.  (The exact size of the file is stored in the
    directory.)  However, some programs that were directly translated
    from their CP/M versions still require the Control Z end-of-file
    marker.  If you have one of these programs for which you are
    creating text files, you should select <Y> for this option.


    Determines whether the editor is to create a backup file (an image
    of the file before you did any editing) with the .bak extension each
    time you save a file.  Set this option to <Y> to have backups
    created; otherwise, set this option to <N>.


    Affects the editor's behavior when the HorizontalWindow command is
    executed.  Set this option to <Y> to have the editor prompt for the
    name of the file you want to load into the new window.  Set this
    option to <N> to have the editor load the next file in the ring into
    the new window.  (If only one file is loaded, another window
    containing the same file is opened.)


    Affects the editor's behavior when more than one window is open on
    the screen and a command is executed that discards a file from the
    editor.  Set this option to <Y> to have the editor close the window
    containing the discarded file.  Set this option to <N> to have the
    editor load the next file in the ring into that window.


    Determines whether the editor displays an indicator line at the end
    of the file, in the following format:

               <*** End of File ***>

    Set this option to <Y> to have the end-of-file indicator line
    displayed; set this option to <N> if you do not want this line
    displayed.


    Determines whether the editor is to insert line Blocks above or
    below the cursor line when the Paste, CopyBlock, or MoveBlock
    commands are executed.  Set this option to <Y> to have line Blocks
    inserted above the cursor line; set this option to <N> to have line
    Blocks inserted below the cursor line.


    Determines whether the editor sounds the bell on any warning message
    and when there is no match resulting from a Find or FindReplace
    operation.  If you want the bell to sound, select <Y>; otherwise,
    select <N>.


    Indicates the default search options when using the Find command.
    The available default options are: "I" (Ignore case), "W" (Words
    only), "B" (Backwards search), and "G" (Global search).  Multiple
    options can be specified.

    Note that even when these options are not selected as defaults, they
    can still be selected from within the editor when the Find command
    is executed.  For more information on the Find command and the
    available Find options, refer to the "Finding Text" section of
    Chapter 1.


    Indicates the default search and replace options when using the
    FindReplace command. The available default options are: "I" (Ignore
    case), "W" (Words only), "B" (Backwards search), "N" (No prompting),
    and "G" (Global search).  Multiple options can be specified.

    Note that even when these options are not selected as defaults, they
    can still be selected from within the editor when the FindReplace
    command is executed.  For more information on the FindReplace
    command and the available FindReplace options, refer to the
    "Replacing Text" section of Chapter 1.


    Affects the editor's behavior when the Find, RepeatFind, or
    IncrementalSearch commands are executed.  Set this option to <Y> to
    have the line containing the found text centered vertically within
    the current window.  Set this option to <N> to have line containing
    the found text positioned on the same row as the current line.


    Specifies the first default file extension.  See explanation below.


    Specifies the second default file extension.  See explanation below.


    Specifies the third default file extension.  See explanation below.


    Specifies the fourth default file extension.  See explanation below.


    Specifies the fifth default file extension.  See explanation below.


    Specifies the sixth default file extension.  See explanation below.

    Six default file extensions are provided to save keystrokes each
    time a filename to edit is entered.  These file extensions are used
    when the editor is executed with a filename from the command line or
    when the EditFile command is entered.

    If the filename entered does not end with a period (and does not
    include the DOS wildcard characters) and that file does NOT exist as
    named, the editor appends the first default file extension to the
    name and tries to load that file.  If that file exists, then the
    editor loads it for editing.  If it does not exist, the editor
    repeats the process with the other default file extensions.  If no
    matching file is found, then the editor creates a new file as
    originally named.

    For each of the six previous options, enter the desired file
    extension.


    Indicates the default case-sensitivity selection when the Sort
    command is executed.  Set this option to <Y> to have the Sort
    command ignore the case of characters; set this option to <N> to
    have the Sort command respect the upper/lower case of characters.


    Indicates the default sort order when the Sort command is executed.
    Set the option to <Y> to sort in descending order; set this option
    to <N> to sort in ascending order.


THE HELP SCREEN
??????????????????????????????????????????????????????????????????????

The editor allows you to create a customized one-page Help Screen, which
may be displayed at any time from within the editor by executing the
QuickHelp <F1> command.  This section contains instructions for
installing your own Help Screen using the configuration program.

Of course, you may prefer to use the default Help Screen which is
already loaded into the editor.  In that case no action is required.
However, if you want to design and use your own Help Screen, simply
follow these steps:

1. Create an 80 x 25 (80 columns by 25 lines) text file (you can use the
   editor to create this file) and list all of the information that
   should appear on the screen when the QuickHelp command is executed.
   We suggest that you list less frequently used commands in this file,
   while leaving out more familiar commands such as cursor movement and
   paging.

2. Run QCONFIG and select option <H> from the configuration menu.

3. At the prompt, enter the name of the Help file just created.

That is all there is to it!  Now when you execute QuickHelp from within
the editor, your customized Help Screen is displayed.


KEYBOARD CONFIGURATION
??????????????????????????????????????????????????????????????????????

The editor provides the extremely helpful capability of assigning editor
commands (as well as strings of characters) to almost any key you
prefer.

This allows you to assign frequently-used commands to keys which are
most convenient for your use, and even to completely reassign commands
to emulate another text editor or word processor with which you are
already familiar.

By taking a few minutes to review this section, your future text editing
may become significantly more comfortable as a result of customizing
your keyboard to suit your individual preferences.


The Keyboard Definition File
????????????????????????????

The editor uses the Keyboard Definition file to customize the keyboard.
This file contains a list of all the keys to which commands may be
assigned.  Supplied with the editor is a Keyboard Definition file called
QCONFIG.DAT which contains the default settings for the keyboard.  Other
files are supplied which emulate certain common word processors and
editors.  The READ.ME file contains a list of these other emulations.

The Keyboard Definition file consists of a list of configurable keys and
the commands or macros which are assigned to them.  The configurable
keys are on the left side of the file, with the commands or macros
assigned to the keys on the right.  Blank lines and lines starting with
an asterisk "*" are ignored. The QCONFIG.DAT file contains a complete
list of configurable keys.

Control keys are specified by a "^".  For example:

  ^f1 or ^F1 specifies Control F1
  ^c  or ^C  specifies Control C

Alternate keys are specified by a "@".  For example:

  @c  or @C  specifies Alt C
  @PgUp      specifies Alt PgUp

Shift keys are specified by a "#".  For example:

  #f1 or #F1 specifies Shift F1

The format of a line in the Keyboard Definition file is simply the
keystroke followed by the command.  For example:

  f1                      QuickHelp
  #f5                     MakeCtrofScreen
  @f2                     InsertLine
  cursorup                CursorUp
  ^cursorleft             WordLeft
  @a                      DropAnchor
  ^a                      WordLeft


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   The configuration program ignores the case of the key      ?
?   name, and ignores the case of the commands and of any      ?
?   underscores that may be embedded in the commands.  This    ?
?   means that PGUP, PgUp, and pgup all refer to the same key, ?
?   and InsertLine, insert_line, and Insert_Line all refer to  ?
?   the same command.                                          ?
?                                                              ?
?   Also, the order of the keys does not matter.  The          ?
?   configurable keys may be put in any order desired.         ?
????????????????????????????????????????????????????????????????


There is also a provision for assigning commands or macros to a
"two-key".  A two-key consists of two distinct keystrokes, such as
<Ctrl B> immediately followed by <A>.  To assign a command or macro to a
two-key, enter both keystrokes of the two-key in the first column
(keystroke column) separated by an underline.  For example, to assign
the Exit command to the two-key, <Ctrl F1> <F2>, enter the following
into the Keyboard Definition file:

  ^f1_f2     Exit

(Note that if you assign a command or macro to a single key, and then
use that same key as the initial key of a two-key sequence, you lose the
two-key assignment.  For example, if you assign a command to <Ctrl B>,
you would not be able to use a two-key assignment such as <Ctrl B A>.)


To allow you to further customize the editor, multiple commands and/or
text can be assigned to any configurable key (or two-key).  This is
accomplished through the use of macros.  For more information on
creating macros and assigning them to keys, refer to "Creating Macro
Programs" in the file MACRO.DOC.


Creating a Keyboard Definition File
???????????????????????????????????

To customize the keyboard using the default Keyboard Definition file,
QCONFIG.DAT, no action is required.  the editor is distributed with this
Keyboard Definition file already installed.

The following outlines steps to create and install your own Keyboard
Definition file.  (To customize the keyboard using one of the supplied
word-processor or editor emulation Keyboard Definition files, skip to
step number 6.)

1.  Load the file QCONFIG.DAT into the editor.  (From the DOS command
    line, type "q qconfig.dat" and press <Enter>).

2.  Rename the file using the ChangeFilename command <Alt O>.

3.  Browse through the file using the Cursor Up and Down keys.  Notice
    that the left side of the file contains a list of all configurable
    keys.  To the right of each key is the command or macro currently
    assigned to the key.  Some keys have no commands assigned.

4.  Change the commands assigned to the keys to suit your particular
    needs.  For more information on how to assign keys, refer to the
    previous section, "The Keyboard Definition File."

5.  Save the file and exit the editor by pressing <Alt X>.

6.  Run QCONFIG and select option <K> from the menu.

7.  You will be prompted for the name of the Keyboard Definition file.
    Enter the name of the Keyboard Definition file you wish to load.  If
    you are creating your own file, enter the new name chosen in step 2.

8.  Your key assignments are then incorporated into the editor program,
    Q.EXE, and the configuration menu reappears.

9.  Press <S> to save your changes and terminate the program.

10. Run the editor to insure that your key assignments function as
    desired.


PRINTER OPTIONS
??????????????????????????????????????????????????????????????????????

This section contains a list of the Printer Options which can be
customized using the configuration program.  The configuration program
prompt message, the default value, and a description are given for each
option.


    Indicates the number of spaces the editor skips before printing each
    line.  If you do not want the editor to skip any spaces at the
    beginning of each line, select zero.


    Indicates the number of lines to be printed per page.  The editor
    sends a formfeed character to the printer after printing this number
    of lines.  If you do NOT want the editor to send formfeed characters
    (for continuous printing), select zero.


    Determines whether the editor sends a formfeed character when
    printing is complete.  Select <Y> if you want a formfeed character
    to be sent at the end of the document.  (This is helpful for
    correctly lining up the printer in preparation for the next printing
    operation.)  Select <N> if you do not want a final formfeed
    character to be sent.


    Indicates the number of lines to be left blank at the top of each
    page during printing.


    Indicates the number of lines to be left blank at the bottom of each
    page during printing.


    Determines whether the editor prints line numbers at the beginning
    of each line.  To include line numbers in the printed output, select
    <Y>; otherwise, select <N>.


    Indicates the line spacing to be used when printing.


    Determines whether the editor pauses between each printed page.  To
    have the editor pause between pages, select <Y>.  (For this option
    to be effective, the print page size must be non-zero.)  If you do
    not want the editor to pause between pages, select <N>.


    Determines the initial print device.


TAB SETTINGS
??????????????????????????????????????????????????????????????????????

This section contains a list of all Tab Setting Options which can be
customized using the configuration program.  The configuration program
prompt message, the default value, and a description are given for each
option.



    Determines whether Physical Tab Expansion mode is initially ON or
    OFF each time the editor is executed.  Set this option to <Y> if you
    want Physical Tab Expansion mode to be ON each time the editor is
    started; otherwise, set it to <N>.  Refer to the "Modes" section of
    Chapter 1 for more information on Physical Tab Expansion mode.


    Determines whether Tabs Out mode is initially ON or OFF each time
    the editor is executed.  Set this option to <Y> if you want Tabs Out
    mode to be ON each time the editor is started; otherwise, set it to
    <N>. Refer to the "Modes" section of Chapter 1 for more information
    on Tabs Out mode.


    Specifies the tab width that the editor uses when Physical Tab
    Expansion mode or Tabs Out mode is ON.


    Specifies the tab width that the editor uses the TabRt and TabLt
    commands are executed.


  Physical tab width for above [4]:
  Cursor tab width for above [4]:
    Specifies the first default file extension for default tabs.  See
    explanation below.


  Physical tab width for above [2]:
  Cursor tab width for above [2]:
    Specifies the second default file extension for default tabs.  See
    explanation below.


  Physical tab width for above [2]:
  Cursor tab width for above [2]:
    Specifies the third default file extension for default tabs.  See
    explanation below.


  Physical tab width for above [8]:
  Cursor tab width for above [8]:
    Specifies the fourth default file extension for default tabs.  See
    explanation below.


  Physical tab width for above [4]:
  Cursor tab width for above [4]:
    Specifies the fifth default file extension for default tabs.  See
    explanation below.


  Physical tab width for above [8]:
  Cursor tab width for above [8]:
    Specifies the sixth default file extension for default tabs.  See
    explanation below.

    The editor allows you to set default physical and cursor tab widths
    for up to six different file extensions.  When a file is loaded that
    matches one of these extensions, the indicated defaults are used.
    Otherwise, the defaults set in the previous two default tab options
    are used.

    For each of the six options, enter the desired file extension and
    the appropriate physical and cursor tab width values.


    Determines the tab type to use each time the editor is executed.
    Select <0>, <1>, or <2>, for Fixed, Smart, or Variable Tabs,
    respectively. Refer to the "Modes" section of Chapter 1 for more
    information on the behavior of each tab type.


   [4 8 16 24 40]
   :
    Specifies the columns at which Variable Tab stops are to be set.
    Enter the appropriate column numbers, each separated by a single
    space.  The last column at which you can set a Tab is column 255.  A
    maximum string of 255 characters can be specified.

    If you press <Enter> without entering any tabs stops, you are
    prompted with:

  Delete all Variable Tab stops (Y/N)? [N] :

    Select <Y> to remove all existing Variable Tab stops.  Select <N> to
    leave the tab stops unchanged.


CHAPTER 3.  COMMAND REFERENCE
??????????????????????????????????????????????????????????????????????

This chapter contains a description of each of the editor commands.
Where applicable, the default key assignments are provided.
Additionally, <Esc> sequences are given for those commands that can be
accessed through the pull-down menus.

To assign commands which do not have a default assignment or to change
existing key assignments, refer to the "Keyboard Configuration" section
of Chapter 2 for instructions.


AddLine             <F2> or <Esc><E><A>
????????????????????????????????????????????????????????????????????
Adds a blank line after the cursor line, placing the cursor on the newly
created line.  The cursor column does not change.


Align
????????????????????????????????????????????????????????????????????
Aligns the text on the cursor line with the text on the line immediately
before the cursor line and then positions the cursor on the next line.
The cursor column does not change.  If the cursor is on line one, or the
previous line is blank, or the cursor line is blank, this command simply
moves the cursor to the next line.

Align searches backward up to 100 lines for a line containing text to
align with.

AltWordSet
????????????????????????????????????????????????????????????????????
Instructs the editor to recognize an expanded set of characters as
"word" characters.

The default word set contains the following characters: 0 through 9,
upper and lower case A through Z, and the underline character.  The
AltWordSet command causes additional characters to be considered "word"
characters.  These additional characters are: ! # $ % & ` ' ( ) - . / \
@ { } ~ : ^

The AltWordSet command affects the operation of these commands:

    DelLtWord                MarkWord
    DelRtWord               *RepeatFind
   *Find                     SwapWords
   *FindReplace              WordLeft
    isWord                   WordRight

   * These commands are affected if the "W" (word) search option is
     selected.

The default word set can be re-installed by executing the DefaultWordSet
command.


AppendScrBuff       <Ctrl B A>
????????????????????????????????????????????????????????????????????
Appends the currently marked Block to the end of the named Scratch
Buffer.  The existing contents of the named Scratch Buffer are not lost.
If the named Scratch Buffer does not exist, a new Scratch Buffer is
created.


AsciiChart          <Esc><O><T>
????????????????????????????????????????????????????????????????????
Displays a scrollable ASCII chart on the screen.  Press <Enter> to have
the selected character inserted into the text at the current cursor
position.  Press <Esc> to remove the ASCII chart from the screen without
placing a character into the text.

When the ASCII chart is initially displayed, the cursor bar is located
on the entry that corresponds to the character at the cursor position in
the text; or on the first item in the ASCII chart (the null character),
if the cursor is positioned beyond the end of the line.


Backspace           <Backspace>
????????????????????????????????????????????????????????????????????
If Insert mode is ON:
 Deletes the character to the left of the cursor.  The text to the right
 of, and including the cursor position, shifts left one position. If the
 cursor is in column one, the cursor line is appended to the end of the
 preceding line.

If Insert mode is OFF:
 Deletes the character to the left of the cursor.  The text to the right
 of the cursor does NOT close in or shift.  If the cursor is in column
 one, the cursor line is still appended to the end of the previous line.


BegFile             <Ctrl PgUp>
????????????????????????????????????????????????????????????????????
Positions the cursor at column one on the first line of the current
file.  (If you are in the process of marking a Block using the
MarkColumn command, the cursor column position does not change when you
execute BegFile.)


BegLine             <Home>
????????????????????????????????????????????????????????????????????
Positions the cursor at column one of the current cursor line.


BegScreen           <Ctrl Home>
????????????????????????????????????????????????????????????????????
Positions the cursor at the top line of the current window.  The cursor
column does not change.


CenterLine          <Ctrl O T>
????????????????????????????????????????????????????????????????????
Centers the current cursor line based on column 1 and the right margin.
Use the SetRmargin <Ctrl O R> command to change the right margin.

With the cursor inside of a line Block, you can execute this command to
center several lines at once.  With the cursor inside of a column Block,
you can center lines based on the left and right Block boundaries.


ChangeFilename      <Alt O> or <Alt F><C> or <Esc><F><C>
????????????????????????????????????????????????????????????????????
Changes the name of the current file.  The editor prompts for the new
name.  If the file already exists, you are given the opportunity to
rename the file.  The current file is marked as being a changed file.
(An asterisk appears on the StatusLine preceding the filename.)  Note
that the file is not written (or overwritten) to disk until the renamed
file is saved.


CloseWindow         <Ctrl O C> or <Esc><W><C>
????????????????????????????????????????????????????????????????????
Closes the current window, unless it is the only window which is open,
in which case the command has no effect.


Copy                <Grey +>
????????????????????????????????????????????????????????????????????
Copies the marked Block into the Scrap Buffer.  The Block is then
unmarked.  If no Block is marked, the cursor line is copied into the
Scrap Buffer.  The copying of the cursor line, when a Block is not
marked, is configurable.  Refer to the "Advanced Options" section of
Chapter 2 for more information.


CopyBlock           <Alt C> or <Esc><B><C>
????????????????????????????????????????????????????????????????????
Copies the marked Block to the cursor position.  If the Block is a
character Block (created using the DropAnchor, MarkCharacter, or
MarkBlockBegin/End commands) or a column Block (created using the
MarkColumn command), the Block is inserted into the text beginning at
the current cursor position. If the Block is a line Block (created using
the MarkLine command), it is inserted before or after the current cursor
line, depending on the configuration setting, "Insert line blocks ABOVE
the cursor line" (refer to the "General Options" section of Chapter 2).
The Block remains marked.  Blocks may be copied from one file to
another.


CopyOverBlock       <Alt Z>
????????????????????????????????????????????????????????????????????
Copies the currently marked column Block to the current cursor position
by overlaying existing text and without shifting text to the right.
This command only works with column Blocks.  The Block remains marked.
Blocks may be "copied over" from one file to another.


CurrentFilename
????????????????????????????????????????????????????????????????????
Returns the name of the currently edited file, as if it had been typed
at the keyboard.  This command is useful for manipulation of files from
within macros.


CursorDown          <Cursor Down>
????????????????????????????????????????????????????????????????????
Moves the cursor downward in the file to the next line.


CursorLeft          <Cursor Left>
????????????????????????????????????????????????????????????????????
Moves the cursor one character to the left.  When the cursor reaches the
left edge of the screen, it stops, unless the text has been scrolled
left, in which case the text scrolls right one position.


CursorRight         <Cursor Right>
????????????????????????????????????????????????????????????????????
Moves the cursor one character to the right.  When the cursor reaches
the right edge of the screen, the text starts scrolling left until the
cursor reaches the maximum line length.


CursorUp            <Cursor Up>
????????????????????????????????????????????????????????????????????
Moves the cursor upward in the file to the previous line.


Cut                 <Grey ->
????????????????????????????????????????????????????????????????????
Copies the marked Block into the Scrap Buffer.  The Block is then
deleted from the file being edited.  If no Block is marked, the cursor
line is cut into the Scrap Buffer.  The cutting of the cursor line, when
a Block is not marked, is configurable.  Refer to the "Advanced Options"
section of Chapter 2 for more information.


DefaultWordSet
????????????????????????????????????????????????????????????????????
Re-installs the default word set.  Refer to the AltWordSet command for
more information about word sets.


DelCh               <Del>
????????????????????????????????????????????????????????????????????
Deletes the character at the current cursor position.  The text on the
line to the right of the cursor shifts left one position.  If the cursor
position is past the last character on the line, the next line is
appended to the cursor line.  The "joining" of the next line when the
cursor is past the last character on the line is configurable. Refer to
the "General Options" section of Chapter 2 for more information.


DeleteBlock         <Alt G> or <Esc><B><D>
????????????????????????????????????????????????????????????????????
Deletes the currently marked Block.  If there is not a Block marked in
the current file, this command has no effect.


DelLine             <Alt D> or <Ctrl Y> or <Esc><E><D>
????????????????????????????????????????????????????????????????????
Deletes the cursor line.  The line following the cursor line becomes the
new cursor line.


DelLtWord           <Ctrl Backspace>
????????????????????????????????????????????????????????????????????
Deletes the "word" to the left of the cursor.  If the cursor is in
column one, the cursor line is appended to the end of the preceding
line.


DelRtWord           <Ctrl T>
????????????????????????????????????????????????????????????????????
Deletes the "word" to the right of the cursor.  If the cursor position
is past the last character on the line, the next line is appended to the
cursor line.


DelScrBuff          <Ctrl B D>
????????????????????????????????????????????????????????????????????
Deletes the requested Scratch Buffer. The editor prompts for the name of
the Scratch Buffer to be deleted.  Press <Enter> on a blank entry to
bring up a list of all named Scratch Buffers.  The appropriate buffer
can be selected from this list by moving the cursor to an entry and
pressing <Enter>.


DelToEol            <F6> or <Esc><E><E>
????????????????????????????????????????????????????????????????????
Deletes text on the cursor line, from the cursor position to the end of
line.


DirTree             <Esc><F><I>
????????????????????????????????????????????????????????????????????
Displays a pick list of all the drives on your system, along with a
directory tree for the current drive.  The current drive or directory
can be changed from this pick list.

To switch to a different directory, move the cursor bar to the desired
entry, and press <Enter>.   To change to a different drive, move the
cursor bar to the desired drive, and press <Enter>.  The selected drive
becomes the current drive, and the directory tree for that drive is
displayed in the pick list.

Following is an example of a directory tree pick list:

????????? Dir Tree ??????????
?   A:                      ?
?   B:                      ?
?   C:                      ?
?   D:                      ?
?   ????TSEJR               ?
?   ?   ????MAC             ?
????????????DOC??????????????
?   ?   ????SPELL           ?
?   ?       ????TEMP        ?
?   ?       ????WORD        ?
?   ????TSEPRO              ?
?       ????DOC             ?
?       ????MAC             ?
?   E:                      ?
?????????????????????????????


Dos                 <Alt F9>
????????????????????????????????????????????????????????????????????
The editor prompts for a command, which is passed to DOS for execution.
After the command is executed by DOS, control is returned to the editor.
If you want to execute a series of commands in DOS, you should use the
Shell command, described later in this chapter.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   You should NOT execute any TSR (terminate and stay         ?
?   resident) programs from the editor's Dos command.  This    ?
?   includes the DOS print and graph commands, and             ?
?   memory-resident programs such as Sidekick and Superkey.    ?
????????????????????????????????????????????????????????????????


DropAnchor          <Alt A>
????????????????????????????????????????????????????????????????????
This command is used to mark a character Block.  Initially executing
this command marks one end of a Block at the cursor position.  As the
cursor is moved, the Block "grows" with it.  Executing this command
again marks the other end of the Block at the cursor position.  If
DropAnchor is executed in a file that already contains a character
Block, the Block is extended to the current cursor position.


DupLine             <F4>
????????????????????????????????????????????????????????????????????
Makes a copy of the current cursor line and inserts the copy immediately
following the cursor line.  The cursor is moved to the new line.


EditFile            <Alt E> or <Alt F><L> or <Esc><F><L>
????????????????????????????????????????????????????????????????????
The editor prompts for the name(s) of the additional file(s) to be
edited.  Wildcard characters (* or ?) are permissible, as are multiple
filenames.  The editor does not load multiple copies of the same file.
If you issue the EditFile command using the name of a file that has
already been loaded, the editor makes that file the current file.

The option "Load wildcarded filespecs from inside the editor" has an
effect on the behavior of this command when wildcard characters are
included.  (Refer to the "General Options" section of Chapter 2.)


EndFile             <Ctrl PgDn>
????????????????????????????????????????????????????????????????????
Positions the cursor on the last line of the file immediately following
the last non-blank character.  If the last line of the file is blank,
the cursor is positioned in column one.  (If you are in the process of
marking a Block using the MarkColumn command, the cursor column position
does not change when you execute EndFile.)


EndLine             <End>
????????????????????????????????????????????????????????????????????
Positions the cursor immediately following the last non-blank character
on the cursor line.


EndPara
????????????????????????????????????????????????????????????????????
Positions the cursor immediately following the last nonblank character
of the current paragraph.


EndScreen           <Ctrl End>
????????????????????????????????????????????????????????????????????
The cursor is positioned on the last line of the current window.  The
cursor column does not change.


Escape              <Esc>
????????????????????????????????????????????????????????????????????
If executed while editing, the pull-down menus are displayed.
Otherwise, this command terminates any editor prompt.


ExecuteScrap        <Ctrl Enter> or <Esc><M><E>
????????????????????????????????????????????????????????????????????
Plays back the latest macro that was created using the MacroRecord
command.


Exit                <Ctrl K D>
????????????????????????????????????????????????????????????????????
Conditionally discards the current file.  If the file has not been
modified, the file is discarded without prompting.  If the file has been
modified, the editor prompts with:

    ? Save Changes? ??
    ??Yes?????????????
    ? No             ?
    ? Cancel         ?
    ??????????????????

Press <Y> to save and then discard the file.  Press <N> to discard the
file without saving any changes.  Press <C> or <Esc> to halt the command
and return control back to the editor, without saving or quitting the
file.

The editor can be configured, when only a single file is being edited
and the Exit command is issued, to either terminate or prompt for
another file to edit.  Refer to the "General Options" section of Chapter
2 for more information.


File                <Ctrl K X> or <Alt F><F> or <Esc><F><F>
????????????????????????????????????????????????????????????????????
Saves and then discards the current file.

The editor can be configured, when only a single file is being edited
and the File command is issued, to either terminate or prompt for
another file to edit.  Refer to the "General Options" section of Chapter
2 for more information.


FillBlock           <Ctrl K L> or <Esc><B><F>
????????????????????????????????????????????????????????????????????
Fills an entire marked Block with any ASCII character.  You are prompted
to enter the desired character.  FillBlock is recommended for use with
column and word Blocks only.  When used with line or character Blocks,
the indicated character fills the Block out to the maximum length of the
line.


Find                <Ctrl Q F> or <Esc><S><F>
????????????????????????????????????????????????????????????????????
Searches for a specified string of characters within the current file.
The User is prompted for a search string and search options. Available
search options are:

      [B] Search backwards from the current cursor position.
      [G] Global search.  Begin searching from the beginning of the file
          (or Block, if the [L] option is also selected).
      [L] Local search.  Limit the search to the marked Block.
      [I] Ignore the case of the search string.
      [W] Search for whole words only.
      [^] Anchor the search string to the beginning of the line (or
          Block, if the [L] option is also selected).
      [$] Anchor the search string to the end of the line (or Block, if
          the [L] option is also selected).


FindReplace         <Ctrl Q A> or <Esc><S><R>
????????????????????????????????????????????????????????????????????
Searches and replaces strings within the current file.  The User is
prompted for a search string, a replace string, and options.  Available
search options are:

      [B] Search backwards from the current cursor position.
      [G] Global search and replace.  Begin searching from the beginning
          of the file (or Block, if the [L] option is also selected).
      [L] Local search and replace.  Limit the search to the marked
          Block.
      [I] Ignore the case of the search string.
      [W] Search for whole words only.
      [^] Anchor the search string to the beginning of the line (or
          Block, if the [L] option is also selected).
      [$] Anchor the search string to the end of the line (or Block, if
          the [L] option is also selected).
      [N] Find and replace with NO prompting.
      [#] Replace the indicated number of times (where "#" is an actual
          number).

At every occurrence of the search string in the file, the User is given
the following replace options (unless the [N] or [#] serach option is
specified):

      [Y] Replace the search string with the replace string and continue
          on to the next occurrence of the search string.
      [N] Do not make any changes but continue on to the next occurrence
          of the search string.
      [O] Replace the search string with the replace string and then
          terminate the FindReplace process.
      [R] Replace the search string with the replace string for this and
          the rest of the occurrences throughout the file without any
          further prompting.
      [Q] Terminate the FindReplace process.

You can press <Ctrl Break> to halt a global FindReplace.


FirstNonWhite
????????????????????????????????????????????????????????????????????
Intended as a replacement and/or supplement to the BegLine command.
Places the cursor at the first non-white character on the line, or
column 1 if the line does not have any non-white characters. "White"
characters are tabs or spaces. A useful macro would be:

     Home  BegLine  MacroQuitTrue  FirstNonWhite

(Explanation: If already at the beginning of a line, go to the first
non-white character on the line; otherwise, go to the beginning of the
line.)


Flip                <Alt 3>
????????????????????????????????????????????????????????????????????
Reverses the case (upper to lower and lower to upper) of all characters
in a marked Block.  The cursor must be within the marked Block.  If the
cursor is outside of the marked Block or if no Block is marked, the case
of the character at the current cursor position is reversed.


GetPrev             <Ctrl - (dash)>
????????????????????????????????????????????????????????????????????
Duplicates the character immediately above the cursor at the cursor
position.


GetScrBuff          <Ctrl B L>
????????????????????????????????????????????????????????????????????
Inserts the contents of the named Scratch Buffer at the cursor position.
Refer to the "Block Commands" section of Chapter 1 for more information.


GExit               <Alt X> or <Alt Q><X> or <Esc><Q><X>
????????????????????????????????????????????????????????????????????
Issues the Exit command for all files that have been loaded.  If no
files have been modified, this command immediately terminates the editor
and returns control to DOS.  If any files have been modified, you are
prompted with the following menu for each modified file:

    ? Save Changes? ??
    ??Yes?????????????
    ? No             ?
    ? Cancel         ?
    ??????????????????

Press <Y> to save and then discard the file.  Press <N> to discard the
file without saving any changes.  Press <C> or <Esc> to halt the command
and return control back to the editor, without saving or quitting the
file.

For example, if you have ten files loaded and two of them have been
modified, then you are prompted to save changes twice, once for each
modified file.


GFile               <Alt F><G> or <Esc><F><G>
????????????????????????????????????????????????????????????????????
Instructs the editor to discard all files that have been loaded.  Any
files that have been modified are unconditionally saved.

If no files have been changed, this command immediately terminates the
editor and returns control to DOS.


GotoBlockBeg        <Ctrl Q B>
????????????????????????????????????????????????????????????????????
Positions the cursor at the beginning of the currently marked Block. If
the Block is in a file other than the current file, the file containing
the Block becomes the new current file.


GotoBlockEnd        <Ctrl Q K>
????????????????????????????????????????????????????????????????????
Positions the cursor at the end of the currently marked Block. If the
Block is in a file other than the current file, the file containing the
Block becomes the new current file.


GotoColumn          <Esc><S><G>
????????????????????????????????????????????????????????????????????
Positions the cursor at the requested column.  The editor prompts for
the desired column number.


GotoFirstLine
????????????????????????????????????????????????????????????????????
Positions the cursor on the beginning line of the current file.  The
column position is not changed.


GotoLastLine
????????????????????????????????????????????????????????????????????
Positions the cursor on the last line of the current file.  The column
position is not changed.


GotoLine            <Ctrl J>
????????????????????????????????????????????????????????????????????
Positions the cursor at the requested line.  The editor prompts for the
desired line number.


GPQuit              <F3> or <Alt Q><Q> or <Esc><Q><Q>
????????????????????????????????????????????????????????????????????
Issues the PQuit command for all files that have been loaded.


GrowWindow          <Ctrl O G> or <Esc><W><R>
????????????????????????????????????????????????????????????????????
Changes the size of the current window, if there are multiple windows on
the screen.


GSave               <Alt Y>
????????????????????????????????????????????????????????????????????
Issues the SaveFile command for all files that have been modified.


HalfPgDn
????????????????????????????????????????????????????????????????????
Scrolls the text toward the end of the file one-half page.


HalfPgUp
????????????????????????????????????????????????????????????????????
Scrolls the text toward the beginning of the file one-half page.


HorizontalWindow    <Ctrl O H> or <Esc><W><S>
????????????????????????????????????????????????????????????????????
Splits the screen or current window horizontally, creating a new window.


IncrementalSearch   <Ctrl I> or <Esc><S><I>
????????????????????????????????????????????????????????????????????
Searches incrementally for a string.  As you type characters of a search
string, a case-insensitive, forward search immediately begins, based on
the characters currently in the search string.

Within the IncrementalSearch prompt, the following keys are operational:

  <Enter> or <Esc>   Terminates IncrementalSearch operation.

  <Backspace>        Removes the last character from the current
                     IncrementalSearch string.  The editor re-locates
                     the previous string.

  <Ctrl N>           Searches forward for the next occurrence of the
                     current IncrementalSearch string.

  <Ctrl P>           Searches backward for the previous occurrence of
                     the current IncrementalSearch string.

  <Ctrl B>           Searches forward from the beginning of the file for
                     the first occurrence of the current
                     IncrementalSearch string.


InsertDate
????????????????????????????????????????????????????????????????????
Inserts the system date at the current cursor position.


InsertLine          <Alt F2> or <Esc><E><I>
????????????????????????????????????????????????????????????????????
Inserts a blank line above the cursor line and positions the cursor on
the newly created line.  The cursor column does not change.


InsertTime
????????????????????????????????????????????????????????????????????
Inserts the system time at the current cursor position.


isBegLine
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Returns TRUE if the cursor is at column 1; otherwise, FALSE is returned.


isCurrChar
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Used to set a conditional branch based on the value of the character at
the cursor position.  The format is:

    isCurrChar  char

Where "char" is the character in literal format (surrounded by quotes,
either single or double) or in ASCII value format, preceded by a pound
sign (#).

Examples:

    isCurrChar  'a'
    JTrue  found:

    isCurrChar  #97
    JTrue  found:

Both of these examples jump to the label "found" if the current
character is "a".


isCursorInBlock
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Returns TRUE if the cursor is inside a marked Block; otherwise, FALSE is
returned.


isEmptyLine
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Returns TRUE if the current line is empty or contains only white space;
otherwise, FALSE is returned.


isEndLine
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Returns TRUE if the cursor is past the last non-white character on the
current line; otherwise, FALSE is returned, including the case when the
cursor is on an empty line.


isFirstLine
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Returns TRUE if the cursor is on the first line of the currently edited
file; otherwise, FALSE is returned.


isLastLine
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Returns TRUE if the cursor is on the last line of the currently edited
file; otherwise, FALSE is returned.


isWord
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Returns TRUE if the cursor is on a character included in the current
word set; otherwise, FALSE is returned.


JFalse
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

It is used to transfer control to the named label, if the previous
command returned FALSE.


JoinLine            <Alt J> or <Esc><E><J>
????????????????????????????????????????????????????????????????????
Joins the line below the cursor line to the end of the cursor line. If
the cursor is past the end of the line, then the line is joined at the
cursor position.


JTrue
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

It is used to transfer control to the named label, if the previous
command returned TRUE.


Jump
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

It is used to unconditionally transfer control to the named label.


KillFile            <Ctrl K Z>
????????????????????????????????????????????????????????????????????
Erases the currently edited file from disk.  The file remains loaded in
the editor and is marked as being a changed file.  (An asterisk appears
on the StatusLine preceding the filename.)  This command is very useful
when available disk space is low.


LineDown            <Ctrl Cursor Down>
????????????????????????????????????????????????????????????????????
Scrolls the text one line at a time toward the end of the file.  The
cursor remains stationary on the screen.


LineUp              <Ctrl Cursor Up>
????????????????????????????????????????????????????????????????????
Scrolls the text one line at a time toward the beginning of the file.
The cursor remains stationary on the screen.


ListFiles           <Esc><F><T>
????????????????????????????????????????????????????????????????????
Displays a list of the currently loaded files.  To switch to another
file, move the cursor to the appropriate file and press <Enter>.  To keep
editing the current file, press <Esc>.


Literal             <Ctrl P>
????????????????????????????????????????????????????????????????????
Causes the editor to literally interpret the keystroke that is entered
immediately following this command.  It is used to insert control
characters into the currently edited file.  For example, to insert the
ASCII formfeed character (ASCII 12), you would first press <Ctrl P>
then <Ctrl L>.  To insert a "null" character into the file, press
<Ctrl P> and then <Ctrl 2>.  (Note: The "2" must be the "2" key on the
alphanumeric keyboard, NOT the key on the numeric keypad.)  Refer to the
"Adding Text" section of Chapter 1 for more information.


LocateFile          <Esc><F><A>
????????????????????????????????????????????????????????????????????
Searches an entire drive for a specified filename.  A list of all
matching filenames is displayed, allowing the user to select the
appropriate file to edit.

This command prompts for the filename for which to search.  A complete
name or an ambiguous name (with DOS wildcard characters) can be
specified.  By default, the current drive is searched.  However, a
different drive can be searched by prefacing the filename with the drive
name (such as, d:foo).  The default or specified drive is searched, and
all matching filenames are displayed in a pick list.  To select the
desired file to edit, position the cursor bar on that filename in the
pick list, and press <Enter>.  To remove the pick list, press <Esc>.

This command is also available in a "File(s) to edit:" prompt.


Lower               <Alt 2>
????????????????????????????????????????????????????????????????????
Changes all characters in a marked Block to lower case.  The cursor must
be within the marked Block.  If the cursor is outside of the marked
Block or if no Block is marked, the character at the current cursor
position is changed to lower case.


MacroQuit
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

It is used to immediately terminate a macro, thus saving a "jump past
the end of the macro".


MacroQuitFalse
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

It is used to immediately terminate a macro, if the previous command
returned FALSE, thus saving a "jump past the end of the macro on FALSE".


MacroQuitTrue
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

It is used to immediately terminate a macro, if the previous command
returned TRUE, thus saving a "jump past the end of the macro on TRUE".


MacroRead           <Esc><M><R>
????????????????????????????????????????????????????????????????????
Loads the named macro file, with all macros contained therein, from disk
into the editor's internal macro buffer.  The macros are assigned to the
keys exactly as they were originally recorded and saved.  The editor
prompts the user for the name of the file.


MacroRecord         <Ctrl M> or <Esc><M><M>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) macro recording.  If macro recording is OFF, this
turns macro recording ON and prompts for a key to which to assign the
macro.  After pressing the desired key, all following keystrokes are
recorded until the MacroRecord key is pressed again.  After the macro
has been recorded, it can be played back by pressing the key to which
the macro was assigned.

Instead of assigning a macro to a specific key, it can be assigned to a
"scrap" or temporary area by simple pressing <Enter> at the prompt.  A
macro assigned to the scrap area may be played back by entering the
ExecuteScrap <Ctrl Enter> command.  The scrap area is updated each time
the MacroRecord command is executed.


MacroWrite          <Esc><M><W>
????????????????????????????????????????????????????????????????????
Saves all currently defined macros to a binary disk file.  The editor
prompts for the name of the file.


MainMenu            <Esc>
????????????????????????????????????????????????????????????????????
Activates the pull-down menu system.  Many of the editor's commands can
be executed via the menus.


MakeBotofScreen
????????????????????????????????????????????????????????????????????
Scrolls the text in the window so that the cursor line becomes the
bottom line of the window.


MakeCtrofScreen     <Shift F5>
????????????????????????????????????????????????????????????????????
Scrolls the text in the window so that the cursor line becomes the
center line of the window.


MakeTopofScreen     <F5>
????????????????????????????????????????????????????????????????????
Scrolls the text in the window so that the cursor line becomes the top
line of the window.


MarkBlockBegin      <Ctrl K B> or <Esc><B><B>
????????????????????????????????????????????????????????????????????
Marks the beginning of a character Block.  The Block is not shown until
the MarkBlockEnd command is executed at some position beyond the
beginning position of the Block.  For an alternate method of marking
character Blocks, refer to the DropAnchor and MarkCharacter commands.


MarkBlockEnd        <Ctrl K K> or <Esc><B><E>
????????????????????????????????????????????????????????????????????
Marks the end of a character Block.  The Block is not shown until the
MarkBlockBegin command is also executed at some position before the end
of the Block.  For an alternate method of marking character Blocks,
refer to the DropAnchor and MarkCharacter commands.


MarkCharacter
????????????????????????????????????????????????????????????????????
This command is used to mark a character Block.  It is similar to the
DropAnchor command except the cursor position is NOT included as part of
the Block.

This command is provided as a replacement for the DropAnchor command. If
you want the cursor position included in character Blocks, then continue
to use DropAnchor; otherwise, replace the DropAnchor command with this
command.

Note that the editor uses the MarkCharacter command to provide a set of
CUA-style Block-marking keys (using the shifted cursor keys).  Refer to
"CUA-Style Block Marking" in Chapter 1.


MarkColumn          <Alt K>
????????????????????????????????????????????????????????????????????
This command is used to mark a column Block.  Initially executing this
command marks the current cursor position.  As the cursor is moved, the
Block "grows".  Executing this command again marks the other end of the
Block at the current cursor position.  If MarkColumn is executed in a
file that already contains a Block, the Block is extended to the current
cursor position.


MarkLine            <Alt L> or <Esc><B><L>
????????????????????????????????????????????????????????????????????
This command is used to mark a line Block.  Initially executing this
command marks the current cursor line.  As the cursor is moved, the
Block "grows" with it, line by line.  Executing this command again marks
the other end of the Block at the current cursor line.  If MarkLine is
executed in a file that already contains a Block, the Block is extended
to the current cursor line.


MarkWord            <Ctrl K T>
????????????????????????????????????????????????????????????????????
This command is used to mark a word Block.  Executing this command marks
the word at the current cursor position.  If there is no word at the
current cursor position, then no action is taken.


Match               <Alt F3>
????????????????????????????????????????????????????????????????????
Finds the corresponding "(", ")", "{", "}", "[", "]", "<", ">"
character.  This command is primarily intended for programming languages
in which complicated expressions are grouped with one or more of these
characters.  This command is very useful for finding unmatched
parentheses.


MaximizeWindow      <Ctrl O M> or <Esc><W><M>
????????????????????????????????????????????????????????????????????
Makes the current window as large as possible by making all other
windows as small as possible.


MouseMenu
????????????????????????????????????????????????????????????????????
Pops up a menu of Block-related commands.  This command provides access
to a list of Block-related commands for easy selection using a mouse.
When invoked, a menu similar to the following is displayed:

    ?????????  Mouse Menu  ?????????
    ??Cut???????????????????????????
    ? Copy                         ?
    ? Paste                        ?
    ? Paste Over                   ?
    ? UnMark                       ?
    ????????????????????????????????
    ? Copy to Windows Clipboard    ?
    ? Paste from Windows Clipboard ?
    ????????????????????????????????
    ? Copy Block                   ?
    ? Copy Over Block              ?
    ? Move Block                   ?
    ? Delete Block                 ?
    ????????????????????????????????
    ? Fill Block                   ?
    ? Sort                         ?
    ????????????????????????????????
    ? Upper                        ?
    ? Lower                        ?
    ? Flip                         ?
    ????????????????????????????????

If the mouse is not used, this menu can still be accessed by assigning
this command to a key.


MoveBlock           <Alt M> or <Esc><B><M>
????????????????????????????????????????????????????????????????????
Moves (copies and deletes) the currently marked Block to the cursor
position.  If the Block is a character Block (created using the
DropAnchor, MarkCharacter, or MarkBlockBegin/End commands) or a column
Block (created using the MarkColumn command), the Block is inserted into
the text beginning at the current cursor position.  If the Block is a
line Block (created using the MarkLine command), it is inserted before
or after the current cursor line, depending on the configuration
setting, "Insert line blocks ABOVE the cursor line" (refer to the
"General Options" section of Chapter 2).  The Block remains marked.
Blocks may be moved from one file to another.


NewFile
????????????????????????????????????????????????????????????????????
Executes the Exit <Ctrl K D> command followed by the EditFile <Alt E>
command.  Refer to the Exit and EditFile commands in this chapter for
more information.


NextEqualIndent
????????????????????????????????????????????????????????????????????
Moves the cursor to the next line whose text starts in the same column
as the current line.  If the current line is blank, moves to the next
blank line.


NextFile            <Alt N> or <Alt F><N> or <Esc><F><N>
????????????????????????????????????????????????????????????????????
Makes the next file in the ring the new current file when multiple files
are loaded.


NextPara
????????????????????????????????????????????????????????????????????
Positions the cursor on the first character of the next paragraph.


NextWindow          <Ctrl O N> or <Esc><W><N>
????????????????????????????????????????????????????????????????????
Makes the window below the current window the new current window.  If
the current window is at the bottom of the screen, the top window on the
screen becomes the current window.


OneWindow           <Ctrl O O> or <Esc><W><O>
????????????????????????????????????????????????????????????????????
Closes all windows except the current window and expands it to occupy
the entire screen.


PageDown            <PgDn>
????????????????????????????????????????????????????????????????????
Scrolls the text toward the end of the file, one page-full less one
line, at a time.


PageUp              <PgUp>
????????????????????????????????????????????????????????????????????
Scrolls the text toward the top of the file, one page-full less one
line, at a time.


Paste               <Grey *>
????????????????????????????????????????????????????????????????????
Inserts the contents of the Scrap Buffer at the cursor position.  The
Scrap Buffer is loaded using the Cut or Copy commands.  If the Scrap
Buffer contains a character or column Block, it is inserted at the
cursor position.  If the Scrap Buffer contains a line Block, it is
inserted before or after the cursor line depending on the configuration
setting, "Insert line blocks ABOVE the cursor line".  (Refer to the
"General Options" section of Chapter 2.)

Paste is also available within prompt boxes.


PasteOver           <Ctrl PrtSc>
????????????????????????????????????????????????????????????????????
This is a Paste command for column Blocks.  It takes a column Block
which has been loaded into the Scrap Buffer using the Cut or Copy
commands, and places the contents at the current cursor position by
overlaying existing text, without shifting text to the right.


Pause
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Temporarily suspends execution of a macro until either <Enter> or
<Esc> is pressed.  Refer to "Macro Pause" in the file MACRO.DOC.


PQuit               <Ctrl K Q> or <Alt F><Q> or <Esc><F><Q>
????????????????????????????????????????????????????????????????????
This command initiates a protected quit.  If the current file has not
been modified, it is discarded.  If the current file has been modified,
the following prompt is issued:

    ? Lose Changes? ??
    ??Yes?????????????
    ? No             ?
    ? Cancel         ?
    ??????????????????

Press <Y> to quit the current file.  Press <N>, <C>, or <Esc> to cancel
the command, without discarding the current file.

If multiple files are being edited, this command makes the previous file
in the ring the new current file.

The editor can be configured, when only a single file is being edited
and the PQuit command is issued, to either terminate or prompt for
another file to edit.  Refer to the "General Options" section of Chapter
2 for more information.


PrevEqualIndent
????????????????????????????????????????????????????????????????????
Moves the cursor to the previous line whose text starts in the same
column as the current line.  If the current line is blank, moves to the
previous blank line.


PrevFile            <Ctrl K P> or <Alt F><P> or <Esc><F><P>
????????????????????????????????????????????????????????????????????
Makes the previous file in the ring the new current file when multiple
files are loaded.


PrevPara
????????????????????????????????????????????????????????????????????
Positions the cursor on the first character of the previous paragraph.


PrevPosition        <Ctrl Q P>
????????????????????????????????????????????????????????????????????
Positions the cursor at the previous cursor position.  Very helpful when
used with the GotoLine command.  The GotoLine command can be used to go
directly to a certain line of the file.  The PrevPosition can then be
used to return you to the previous cursor position.


PrevWindow          <Ctrl O P> or <Esc><W><P>
????????????????????????????????????????????????????????????????????
Makes the window above the current window the new current window.  If
the current window is at the top of the screen, the bottom window on the
screen becomes the current window.


PrintAll            <Alt P><A> or <Esc><P><A>
????????????????????????????????????????????????????????????????????
Prints the entire contents of the current file.


PrintBlock          <Alt P><B> or <Esc><P><B>
????????????????????????????????????????????????????????????????????
Prints the entire contents of the marked Block.  The marked Block must
be in the current file.


PrintEject          <Alt P><F> or <Esc><P><F>
????????????????????????????????????????????????????????????????????
Sends a formfeed character (ASCII 12) to the printer.


QuickHelp           <F1> or <Alt H>
????????????????????????????????????????????????????????????????????
Displays the Help Screen.  A default Help Screen is provided with the
editor; however, you may wish to design your own Help Screen.  For more
information, refer to "The Help Screen" section of Chapter 2.


Quit
????????????????????????????????????????????????????????????????????
Unconditional quit.  The current file is discarded regardless of any
changes made to it.  This command is for those who do not like software
that "nags" you.  USE WITH CAUTION!


ReadBlock           <Alt R> or <Alt F><R> or <Esc><F><R>
????????????????????????????????????????????????????????????????????
Inserts the named disk file at the current cursor position.


RepeatCmd           <Ctrl Q Q>
????????????????????????????????????????????????????????????????????
Repeats the last character, command, or macro entered from the keyboard
up to 9,999 times.  You are prompted for the number of times to repeat.

Repeating automatically terminates when any command fails.  For example,
if you are repeating a search and get a "Not Found", repeating then
stops.  You can also press <Ctrl Break> at any time from the keyboard to
cancel repeating.


RepeatFind          <Ctrl L> or <Esc><S><A>
????????????????????????????????????????????????????????????????????
Repeats the previous search (Find, FindReplace, IncrementalSearch)
command.


ResizeWindow        <Ctrl O G> or <Ctrl O S> or <Esc><W><R>
????????????????????????????????????????????????????????????????????
Changes the size of the current window, if there are multiple windows on
the screen.


RestoreSettings
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Restores settings saved by the SaveSettings command.


Return              <Enter>
????????????????????????????????????????????????????????????????????
The Return command behaves differently depending on Insert mode and
AutoIndent mode.

If Insert mode is OFF, the cursor is positioned at the first column of
the next line.  If Insert mode is ON, the current cursor line is split
at the cursor position and any text to the right of and including the
cursor position is placed on a new line following the current line.  If
the cursor is past the last character on the line, then a blank line is
added following the current line.  The cursor is then moved to the first
column of the new line.

If AutoIndent is ON, spaces are inserted ahead of the cursor position to
align it with the text on the previous line.

If AutoIndent is OFF, the text is moved to the beginning of the next
line.

The Return command can be configured to split or not split lines when
Insert mode is ON.  Refer to the "Advanced Options" section of Chapter 2
for more information.


SaveFile            <Ctrl K S> or <Alt F><S> or <Esc><F><S>
????????????????????????????????????????????????????????????????????
Saves to disk the file currently being edited.  The file remains loaded,
ready for further editing.


SaveSettings
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Saves the current settings of: Insert, AutoIndent, WordWrap, Sound, and
Screen Updating. See RestoreSettings.


ScreenLeft          <Alt F5>
????????????????????????????????????????????????????????????????????
Shifts the screen to the left, the number of columns specified in the
configuration program.  Refer to the "Colors/Screen Options" section of
Chapter 2 for more information.


ScreenRight         <Alt F6>
????????????????????????????????????????????????????????????????????
Shifts the screen to the Right, the number of columns specified in the
configuration program.  Refer to the "Colors/Screen Options" section of
Chapter 2 for more information.


ScrollDown          <Ctrl Z>
????????????????????????????????????????????????????????????????????
Scrolls the text one line at a time toward the end of the file.  The
cursor remains on the same line of text until it reaches the top of the
screen.


ScrollUp            <Ctrl W>
????????????????????????????????????????????????????????????????????
Scrolls the text one line at a time toward the beginning of the file.
The cursor remains on the same line of text until it reaches the bottom
of the screen.


SetAutoIndentMode
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Sets AutoIndent mode ON.  To set AutoIndent mode OFF, do the following:

     SetAutoIndentMode ToggleIndent


SetBakups
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Enables the automatic creation of file backups, which causes the editor
to create a backup file using the ".bak" file extension whenever a
modified file is saved.  (Refer to ToggleBakups for more information.)


SetBoxDraw
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Enables Box Drawing mode.  The letter "B" appears on the StatusLine when
this mode is ON.  (Refer to ToggleBoxDraw for more information.)


SetCenterFinds
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Enables Find centering, which causes the Find and FindReplace commands
to center the found text vertically in the window.  (Refer to
ToggleCenterFinds for more information.)


SetCtabwidth        <Esc><O><C>
????????????????????????????????????????????????????????????????????
Sets the cursor tab width.  This is the width that is used when the
TabRt or TabLt commands are executed and Fixed Tabs mode is in effect.


SetCUAMarking
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Enables CUA-Style Block Marking mode, which defines shifted cursor keys
to be used to mark Blocks.  (Refer to ToggleCUAMarking for more
information.)


SetEGA25
????????????????????????????????????????????????????????????????????
Switches a monitor with an EGA or VGA card to 25-line mode.  This
command has no effect if the video card is not an EGA or VGA type.


SetEGA43
????????????????????????????????????????????????????????????????????
Switches a monitor with an EGA card to 43-line mode, or a monitor with a
VGA card to 50-line mode.  This command has no effect if the video card
is not an EGA or VGA type.


SetEnterMatching
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Sets EnterMatching mode ON.  (Refer to ToggleEnterMatching for more
information.)


SetInsMode
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Sets Insert mode ON.  To set Insert mode OFF (that is, set overwrite
mode ON), do the following:

     SetInsMode ToggleInsert


SetPrintAddFF
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Enables the automatic sending of a formfeed character to the printer
when each print operation is complete (after the last printed page).
(Refer to TogglePrintAddFF for more information.)


SetPrintBotMargin   <Alt P><O> or <Esc><P><O>
????????????????????????????????????????????????????????????????????
Sets the number of lines that are left blank at the bottom of each page
during printing.


SetPrintDevice      <Alt P><D> or <Esc><P><D>
????????????????????????????????????????????????????????????????????
Allows the setting of the default print device.  Choices include PRN,
LPT1 through LPT3, or any valid filename.  When executed, the following
menu is displayed:

    ? Print Device ??
    ??PRN????????????
    ? LPT1          ?
    ? LPT2          ?
    ? LPT3          ?
    ? Disk File...  ?
    ?????????????????


SetPrintLeftMargin  <Alt P><L> or <Esc><P><L>
????????????????????????????????????????????????????????????????????
Sets the number of spaces that are printed as a left margin at the
beginning of each line.  The default is zero.


SetPrintLineSpacing <Alt P><S> or <Esc><P><S>
????????????????????????????????????????????????????????????????????
Allows the setting of the print line spacing, up to a value of 200.
When executed, the following prompt is displayed:

    ????????????????????????????????????????????????????????????
    ? Printer line spacing [1=single, 2=double, etc.]:         ?
    ?                                                          ?
    ????????????????????????????????????????????????????????????


SetPrintPageSize    <Alt P><P> or <Esc><P><P>
????????????????????????????????????????????????????????????????????
Sets the number of lines to be printed per page before sending a
formfeed.  A value of zero allows continuous printing (no formfeeds
sent).


SetPrintTopMargin   <Alt P><T> or <Esc><P><T>
????????????????????????????????????????????????????????????????????
Sets the number of lines that are left blank at the top of each page
during printing.


SetPtabwidth        <Esc><O><P>
????????????????????????????????????????????????????????????????????
Sets the Physical Tab Width.  This determines the width to which
physical tab characters found in files are expanded if Physical Tab
Expansion is set ON.  It also determines the number of spaces to be used
for Tabs Out mode.  Refer to the ToggleTabsExpand and ToggleTabsOut
commands in this chapter for more information.


SetRmargin          <Ctrl O R> or <Esc><O><R>
????????????????????????????????????????????????????????????????????
Sets the right margin for word-wrap and paragraph reformatting. WordWrap
mode is automatically switched ON whenever the right margin is set using
this command.


SetScreenOff
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Turns screen updating OFF. You must turn screen updating back ON before
your macro prompts for input, or if there is some output from the macro
that you want displayed on the screen.

Note:  The editor AUTOMATICALLY turns screen updating back ON when the
       macro is finished executing.  Thus, it is not necessary to issue
       the SetScreenOn command at the end of the macro.


SetScreenOn
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Turns screen updating ON (see SetScreenOff).


SetSortCaseInsensitive
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Sets the sorting operation to case-insensitive.  (Refer to
ToggleSortCaseInsensitive for more information.)


SetSortDescending
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Sets the sorting operation to descending order.  (Refer to
ToggleSortDescending for more information.)


SetSoundOff
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Disables the tone sounded by the editor on failed searches.


SetSoundOn
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Enables the tone sounded by the editor on failed searches.


SetSwap
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Enables swapping to expanded memory or disk when the Shell and Dos
commands are executed.  (Refer to ToggleSwap for more information.)


SetSyncScroll
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Sets Synchronized Scrolling mode ON.  (Refer to ToggleSyncScroll for
more information.)


SetTabsExpand
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Sets Physical Tab Expansion mode ON.  (Refer to ToggleTabsExpand for
more information.)


SetTabsOut
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Sets Tabs Out mode ON.  (Refer to ToggleTabsOut for more information.)


SetTabType          <Esc><O><Y>
????????????????????????????????????????????????????????????????????
Determines the behavior of the tab key based on the tab type selected.
Choices are Fixed, Smart, and Variable.  (Refer to the "Modes" section
of Chapter 1.)  When executed, the following menu is displayed:

    ??? Tab Type ????
    ??Fixed??????????
    ? Smart         ?
    ? Variable      ?
    ?????????????????


SetVarTabStops      <Esc><O><V>
????????????????????????????????????????????????????????????????????
Allows the setting of the tab stops used when Variable tab type is
selected.


SetVGA28
????????????????????????????????????????????????????????????????????
Switches a monitor with a VGA card to 28-line mode.  This command has no
effect if the video card is not a VGA type.


SetWordWrapMode
????????????????????????????????????????????????????????????????????
This command is intended for use only within macros.

Sets WordWrap mode ON. To set WordWrap mode OFF, do the following:

    SetWordWrapMode ToggleWordWrap


Shell               <F9> or <Alt F><O> or <Esc><F><O>
????????????????????????????????????????????????????????????????????
Invokes a DOS shell.  While in the shell, you can execute DOS and other
commands.  When you are ready to leave the shell, type "exit" and press
<Enter>.  This places you back in the editor, exactly where you left
off.


????????????????????????????????????????????????????????????????
? Tip:                                                         ?
?   You should NOT execute any TSR (terminate and stay         ?
?   resident) programs from the editor's Shell command.  This  ?
?   includes the DOS print and graph commands, and             ?
?   memory-resident programs such as Sidekick and Superkey.    ?
????????????????????????????????????????????????????????????????


ShiftLeft           <Shift F7>
????????????????????????????????????????????????????????????????????
Shifts the contents of the currently marked Block (or the cursor line,
if the cursor is not in a marked Block) one position to the left.  If,
when you issue this command, the leftmost character on a line being
shifted is in the first column of the Block, that character is deleted
to allow the remainder of the line to shift left one position.


ShiftRight          <Shift F8>
????????????????????????????????????????????????????????????????????
Shifts the contents of the currently marked Block (or the cursor line,
if the cursor does not reside in a marked Block) one position to the
right.  If, when you issue this command, the rightmost character on a
line being shifted is in the last column of the Block, that character is
deleted to allow the remainder of the line to shift right one position.


ShowEntryScreen     <Alt F10>
????????????????????????????????????????????????????????????????????
Displays the original DOS screen as it appeared upon initial execution
of the editor.  Press any key to return to the edit screen.

To use this command, the option "Do you want the original screen
restored upon termination (Y/N)?" must be set to "Y" (the default
setting).  This option is set via the QCONFIG program, under
"Colors/screen."


ShrinkWindow        <Ctrl O S> or <Esc><W><R>
????????????????????????????????????????????????????????????????????
Changes the size of the current window, if there are multiple windows on
the screen.


Sort                <Shift F3>
????????????????????????????????????????????????????????????????????
Sorts a range of lines.  The sort key is determined by a marked column
Block.  The lines spanned by the column Block determines the range of
lines to be sorted.  For more information about column Blocks, refer to
the MarkColumn command in this chapter.

Whether the lines are sorted in ascending or descending order is
determined by the ToggleSortDescending command.  Ignoring or respecting
differences in case is determined by the ToggleSortCaseInSensitive
command.  (The initial state of both of these toggles can be set via the
configuration program.  Refer to the "General Options" section of
Chapter 2.)

Note:  The Sort command can only be used with a single, nonzoomed window
       on the screen.


SpacesToTabs        <Esc><O><M>
????????????????????????????????????????????????????????????????????
Compresses occurrences of multiple spaces to tabs, where appropriate.
Spaces within quotes (single and double) are not compressed.  If the
cursor is within a marked Block when this command is executed, only
spaces within the Block are compressed; otherwise, this common operates
on the entire file.


SplitLine           <Alt S> or <Esc><E><S>
????????????????????????????????????????????????????????????????????
Splits the current cursor line at the cursor position.  Any text to the
right of and including the cursor position is placed on a new line
following the current line.  If the cursor is past the last character on
the line, then a blank line is added following the current line. The
cursor position does not change.


StoreScrBuff        <Ctrl B S>
????????????????????????????????????????????????????????????????????
Copies the currently marked Block to the named Scratch Buffer.  The
editor prompts for the name of the Scratch Buffer.  The contents of
all Scratch Buffers are lost when the editor is terminated.


SwapChars
????????????????????????????????????????????????????????????????????
Swaps the character at the cursor position with the character preceding
the cursor.  The cursor column position does not change.  If, when this
command is executed, the cursor is in column 1, or is positioned beyond
the last non-blank character of the line, then no action occurs.


SwapLines           <Ctrl F2> or <Esc><E><P>
????????????????????????????????????????????????????????????????????
Swaps the current line with the line immediately following it.  The
cursor does not change its position relative to the screen.  If the
cursor is on the last line of the file when this command is executed,
then no action occurs.


SwapWords
????????????????????????????????????????????????????????????????????
Swaps the word in which the cursor is positioned with the previous word
on the current line.  Any "non-word" characters between the affected
words are preserved.  If, when this command is executed, the cursor is
not positioned on a character within a word, or if there is no previous
word on the current line, then no action occurs.


TabLt               <Shift Tab>
????????????????????????????????????????????????????????????????????
Positions the cursor at the previous tab position, as defined by the tab
width.  If Insert mode is ON, the text to the right, including the
character at the cursor position, shifts left.

The editor can be configured so that if Insert mode is ON, AND the
cursor is inside a marked Block, the entire Block shifts left by the
current cursor tab width.  For more information on this option, refer to
the "Advanced Options" section of Chapter 2.

TabRt               <Tab>
????????????????????????????????????????????????????????????????????
Positions the cursor at the next tab position, as defined by the cursor
tab width.  If Insert mode is ON, the text to the right, including the
character at the cursor position, shifts right.

The editor can be configured so that if Insert mode is ON, AND the
cursor is inside a marked Block, the entire Block shifts right by the
current cursor tab width.  For more information on this option, refer to
the "Advanced Options" section of Chapter 2.


TabsToSpaces        <Esc><O><X>
????????????????????????????????????????????????????????????????????
Expands tab characters to the appropriate number of spaces. Tabs within
quotes (single and double) are not expanded.  If the cursor is within a
marked Block when this command is executed, only tabs within the Block
are expanded; otherwise, this command operates on the entire file.


ToggleBakups        <Esc><O><B>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) file backups.  If ON, the editor creates a backup
file using the ".bak" file extension whenever a modified file is saved.


ToggleBoxDraw       <Shift F1>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) Box Drawing mode.  If ON, the cursor movement keys
(up, down, right, left) "draw" lines in the text, both up/down and
right/left.  Very useful for creating charts and tables.

The letter "B" appears on the StatusLine when this mode is ON.


ToggleBoxType       <Alt F1>
????????????????????????????????????????????????????????????????????
This command prompts the User to select from different line drawing
styles for use with Box Drawing mode.  The options are: Single, Double
Top, Double Side, Double, and Eraser.  When executed, the following menu
is displayed:

    ??? Box Style ???
    ??Single?????????
    ? Double Top    ?
    ? Double Side   ?
    ? Double        ?
    ? Eraser        ?
    ?????????????????


ToggleCenterFinds   <Esc><S><C>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) Find centering.  If ON, this causes the Find,
FindReplace, and IncrementalSearch commands to center the found text
vertically on the screen. If OFF, the initial row the cursor was on when
the command was initiated does not change.


ToggleCUAMarking
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) CUA-Style Block Marking mode.  If ON, the shifted
cursor keys can be used to mark non-inclusive character Blocks.  (Refer
to "CUA-Style Block Marking" in Chapter 1.)


ToggleEGA43         <Ctrl F1>
????????????????????????????????????????????????????????????????????
Toggles an EGA monitor between 25-line and 43-line mode or a VGA monitor
between 25-line and 50-line mode.  This command has no effect if the
video card is not an EGA or VGA type.


ToggleEnterMatching <Esc><O><E>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) EnterMatching mode.  If ON, the double quote,
parenthesis, square bracket, and curly brace keys all automatically
enter the matching right-hand character when the left-hand character is
entered. For example, typing the "[" key automatically enters a "]"
immediately following.


ToggleIndent        <Ctrl Q I> or <Esc><O><A>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) AutoIndent mode.  If ON, the cursor is positioned
at the current left margin whenever the <Enter> key is pressed. The
current left margin is determined by the first non-blank character on
the immediately preceding line.

Paragraph reformatting and word-wrapping also use the current left
margin when AutoIndent mode is ON.

The letter "A" appears on the StatusLine when this mode is ON.


ToggleInsert        <Ins> or <Esc><O><I>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) Insert mode.  If ON, text to the right of the
cursor on the cursor line is shifted whenever characters, spaces, the
Backspace command, the TabLt command, or the TabRt command is entered.
Also, executing the Return command causes the current line to split at
the cursor position.

The letter "I" appears on the StatusLine when this mode is ON.


TogglePrintAddFF        <Esc><P><R>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) the automatic sending of a formfeed character to
the printer when printing is complete.  If ON, the editor automatically
sends a final formfeed character when printing is complete (after the
last printed page).


TogglePrintLineNumbers   <Alt P><N> or <Esc><P><N>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) the printing of line numbers.


TogglePrintPause    <Alt P><U> or <Esc><P><U>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) pausing between pages while printing.  If ON, the
editor pauses and requires a key press to continue after every page is
printed.  This is useful with single sheet printers.  When OFF, the
editor prints continuously without pausing.


ToggleShowCurrChar  <Esc><O><H>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) the display of the ASCII and Hexadecimal values of
the current character on the StatusLine.  When ON, the ASCII and Hex
values of the current character are displayed in the far right portion
of the StatusLine.  If the cursor is past the end of the text on the
line, <EOL> is displayed.


ToggleSmartTabs     <Ctrl Q T>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) Smart Tabs mode.  If ON, the TabRt and TabLt
commands place the cursor beneath the beginning of the next (or
previous) word on the first nonblank line preceding the current cursor
line.


ToggleSortCaseInsensitive   <Esc><B><I>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) case-insensitive sorting.  When ON, upper and lower
case letters are sorted as if they are of the same case.  When OFF,
upper and lower case letters are sorted strictly by their ASCII value,
which places all upper case letters before the lower case letters.


ToggleSortDescending        <Esc><B><N>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) descending sorting.  When ON, sorting is performed
from highest value to lowest value (descending).  When OFF, sorting is
performed from lowest value to highest value (ascending).


ToggleSwap          <Esc><O><S>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) swapping to expanded memory or disk when the Shell
<F9> and Dos <Alt F9> commands are executed.  (You can specify a default
for swapping, using the configuration program.  Refer to the "Advanced
Options" section of Chapter 2 for more information.)

If ON, the editor swaps itself out of DOS memory and to expanded memory
or disk when a shell command is executed.  This leaves a small 2K editor
kernel in DOS memory, freeing up the rest of DOS memory for running
other applications out of the shell such as compilers or spreadsheets.

While you are in a shell, the editor maintains a file with a ".SWP" file
extension in your root directory.  It is very important that you do not
delete this file while in the shell.


ToggleSyncScroll    <Ctrl O Y> or <Esc><W><Y>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) Synchronized Scrolling mode in each window on the
screen (when multiple windows are open).  When this mode is ON, the
editor attempts to synchronize logical cursor movement and scrolling in
all windows, based on cursor movement and scrolling activity in the
current window.

The letter "S" appears on the StatusLine when this mode is ON.


ToggleTabsExpand    <Alt V>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) Physical Tab Expansion mode.  If ON, physical tab
characters (ASCII 9) found in a file are expanded into spaces according
to the Physical Tab Width set in the configuration program.  If OFF,
physical tabs are displayed on the screen and a physical tab character
is placed in the text each time the TabRt command is entered.


ToggleTabsOut       <Alt I>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) Tabs Out mode.  If ON, continuous spaces in a line
of text are replaced with physical tabs (ASCII 9) according to the
Physical Tab Width set in the configuration program.  Only spaces in
edited lines are replaced with physical tabs.  Spaces falling between
single or double quotes are not replaced.


ToggleVarTabs
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) Variable Tabs mode.  When ON, tab stops are set to
those specified by the SetVarTabStop command, or by the default set by
the configuration program.  When OFF, tab stops are set to a fixed tab
width, as specified by the SetCTabWidth command.


ToggleVGA28
????????????????????????????????????????????????????????????????????
Toggles a VGA monitor between 25-line and 28-line mode.  This command
has no effect if the video card is not a VGA type.


ToggleWordwrap      <Ctrl O W> or <Esc><O><W>
????????????????????????????????????????????????????????????????????
Toggles (ON and OFF) WordWrap mode.  If ON, the cursor, along with the
word currently being typed, automatically advances to the next line
whenever a character is typed beyond the right margin.  The right margin
can be permanently set using the configuration program (refer to the
"General Options" section of Chapter 2) or temporarily changed using the
SetRmargin command.

The letter "W" appears on the StatusLine when this mode is ON.


UndoCursorline      <Ctrl Q L>
????????????????????????????????????????????????????????????????????
Reverses any changes made to the current cursor line (except changes
made with the FindReplace command).  If the cursor has been moved from
the changed line or a file or window command is executed, the changes
cannot be undone.


UnKill              <Ctrl U> or <Esc><E><U>
????????????????????????????????????????????????????????????????????
Recovers the last deleted entry from the current file's Kill Buffer.
Deleted Blocks and lines are inserted immediately before the current
cursor line, and deleted words are inserted immediately before the
current cursor position.

The number of lines saved in the Kill Buffer may be set with the
configuration program.  Refer to the "General Options" section of
Chapter 2 for more information.


UnmarkBlock         <Alt U> or <Esc><B><U>
????????????????????????????????????????????????????????????????????
Unmarks the currently marked Block.


Upper               <Alt 1>
????????????????????????????????????????????????????????????????????
Changes all characters in a marked Block to upper case.  The cursor must
be within the marked Block.  If the cursor is outside of the marked
Block or if no Block is marked, the character at the current cursor
position is changed to upper case.


WinClipCopy
????????????????????????????????????????????????????????????????????
Copies the marked Block into the Microsoft Windows Clipboard.  The Block
is then unmarked.

This command is similar to the Copy command.


WinClipPaste
????????????????????????????????????????????????????????????????????
Inserts the contents of the Microsoft Windows Clipboard into the current
file at the cursor position.

This command is similar to the Paste command.


WordLeft            <Ctrl Cursor Left>
????????????????????????????????????????????????????????????????????
Positions the cursor at the first character of the previous word.


WordRight           <Ctrl Cursor Right>
????????????????????????????????????????????????????????????????????
Positions the cursor at the first character of the following word.


WrapPara            <Alt B>
????????????????????????????????????????????????????????????????????
Reformats text from the current cursor position until a blank line or
end of file is encountered.  If AutoIndent is ON, the line below the
cursor line is used for the left margin.  Otherwise, a left margin of
zero is used.  The right margin is determined by the configuration
program (refer to the "General Options" section of Chapter 2), or
interactively set by the SetRmargin command.


WriteBlock          <Alt W> or <Alt F><W> or <Esc><F><W>
????????????????????????????????????????????????????????????????????
Writes the currently marked Block to the named file.  The editor prompts
for the name of the file.

A Save-As-Filename feature is possible with the WriteBlock command,
allowing you to save your current file under a different name.  To use
this feature, execute the WriteBlock <Alt W> command with no marked
Blocks in the file.  the editor prompts with:

????????????????????????????????????????????????????????????????
?File to write:                                                ?
?                                                              ?
????????????????????????????????????????????????????????????????

Enter the new filename.  If the filename you specify already exists,
the editor prompts with:

    ???????? Choose ?????????
    ? Overlay Existing File ?
    ? Append to File        ?
    ?????????????????????????

Select the desired option, or press <Esc> to cancel.

If there is a marked Block in the file, the WriteBlock command operates
as usual, and writes the currently marked Block to the named file.


ZoomWindow          <Ctrl O Z> or <Esc><W><Z>
????????????????????????????????????????????????????????????????????
Toggles Zoom mode ON and OFF.  If there are multiple windows on the
screen, entering the ZoomWindow command causes the current window to
fill the entire screen.  Press ZoomWindow again to restore the other
windows to the screen.