home *** CD-ROM | disk | FTP | other *** search
/ Phoenix CD 2.0 / Phoenix_CD.cdr / 02a / pedit.zip / PEDIT.DOC < prev    next >
Text File  |  1990-10-09  |  87KB  |  2,858 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.                                     p E D I T
  15.                                -------------------
  16.                                the personal EDITor
  17.  
  18.  
  19.                                   Version 1.75
  20.  
  21.                                   August  1990
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.                            pEDIT COPYRIGHT 1989, 1990
  33.  
  34.  
  35.  
  36.                                _______
  37.                           ____|__     |               (tm)
  38.                        --|       |    |-------------------
  39.                          |   ____|__  |  Association of
  40.                          |  |       |_|  Shareware
  41.                          |__|   o   |    Professionals
  42.                        -----|   |   |---------------------
  43.                             |___|___|    MEMBER
  44.  
  45.  
  46.  
  47.  
  48.  
  49.                                   T. G. Muench
  50.                                  P.O. Box 11536
  51.                              Prescott, AZ 86304-1536
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.                       T A B L E   O F   C O N T E N T S
  60.  
  61.  
  62.          Introduction . . . . . . . . . . . . . . . . . . . . .  1
  63.  
  64.          Installing pEDIT
  65.  
  66.              1. General Information . . . . . . . . . . . . . .  3
  67.              2. Floppy Disk Installation  . . . . . . . . . . .  5
  68.              3. Hard Disk Installation  . . . . . . . . . . . .  7
  69.  
  70.          Starting Up pEDIT  . . . . . . . . . . . . . . . . . .  9
  71.  
  72.          Interacting With pEDIT
  73.  
  74.              1. Command Mode  . . . . . . . . . . . . . . . . . 13
  75.              2. Prompting Mode  . . . . . . . . . . . . . . . . 13
  76.  
  77.          pEDIT Commands
  78.  
  79.              1. Cursor Movement . . . . . . . . . . . . . . . . 14
  80.              2. Text Manipulation . . . . . . . . . . . . . . . 16
  81.              3. Text Deletion . . . . . . . . . . . . . . . . . 19
  82.              4. Searching . . . . . . . . . . . . . . . . . . . 20
  83.              5. Files . . . . . . . . . . . . . . . . . . . . . 22
  84.              6. Buffers . . . . . . . . . . . . . . . . . . . . 23
  85.              7. Windows . . . . . . . . . . . . . . . . . . . . 25
  86.              8. Key Macros  . . . . . . . . . . . . . . . . . . 27
  87.              9. Cut and Paste . . . . . . . . . . . . . . . . . 28
  88.             10. Miscellaneous . . . . . . . . . . . . . . . . . 29
  89.  
  90.          Extended DOS Shell . . . . . . . . . . . . . . . . . . 33
  91.          
  92.          Compiling From pEDIT . . . . . . . . . . . . . . . . . 34
  93.  
  94.          Error Handling
  95.  
  96.              1. Insufficient Internal Storage . . . . . . . . . 35
  97.              2. Out of Disk Space . . . . . . . . . . . . . . . 35
  98.  
  99.          Copyright Notice and Warranty
  100.  
  101.              1. Disclaimer  . . . . . . . . . . . . . . . . . . 36
  102.              2. Registration  . . . . . . . . . . . . . . . . . 36
  103.  
  104.          Association of Shareware Professionals . . . . . . . . 38
  105.  
  106.          Appendices
  107.  
  108.              1. List of pEDIT Commands  . . . . . . . . . . . . 39
  109.              2. Default Key Bindings  . . . . . . . . . . . . . 41
  110.              3. Default Initialization File . . . . . . . . . . 43
  111.              4. Default Help Files  . . . . . . . . . . . . . . 43
  112.              5. DOS File Specification  . . . . . . . . . . . . 44
  113.              6. Color Codes . . . . . . . . . . . . . . . . . . 45
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.                            I N T R O D U C T I O N
  122.  
  123.  
  124.          pEDIT is a text editor for the IBM PC, PC-XT, PC-AT, 80386
  125.          and compatibles. pEDIT requires PC-DOS/MS-DOS Version 2.1 or
  126.          higher and a minimum of 320k of memory; 512k is recommended
  127.          as is a hard disk.
  128.          
  129.          pEDIT is a text editor, also called a text processor. It is
  130.          not a word processor or desktop publisher and does not have
  131.          features like graphics, multiple fonts or the like. It does
  132.          have things programmers need: multiple buffers, split screen
  133.          editing, access to DOS, insert and overstrike modes and auto-
  134.          indent, to name a few.
  135.  
  136.          While the purpose of pEDIT is to create and edit text, it
  137.          does have features normally associated with word processors.
  138.          It has settable margins and automatically wraps text from one
  139.          line to the next. Text can be centered between the defined
  140.          margins and words (or parts of words) can be Capitalized,
  141.          lower-cased or UPPER-CASED. Also, paragraphs can be 'filled'
  142.          or reformatted to fit within the existing margins.
  143.  
  144.          Two files are used to make pEDIT work the way you want it to
  145.          work. The Help file contains any screen you want displayed
  146.          when the HELP function is invoked. The Initialization file
  147.          contains environment settings and key bindings. If these
  148.          files are not defined as PEDITHLP and PEDITINI using the DOS
  149.          SET command, pEDIT looks for them in the current default
  150.          directory.
  151.  
  152.          Every effort has been made to make the editor perform as
  153.          efficiently as possible. Because much of the time in an
  154.          editor is spent updating the screen, pEDIT uses hardware
  155.          scrolling and a minimal screen updating method.
  156.  
  157.          The speed is quite good on an AT (or higher) class machine
  158.          with a hard drive. A 100k file can be loaded in about 6
  159.          seconds on a 10-MHz 80286 machine with a slow (65 msec.)
  160.          hard disk. The time drops to about 4.5 seconds on a PS/2
  161.          Model 50Z, which has a zero wait state processor and a fast
  162.          hard drive.
  163.          
  164.          Text is stored entirely in memory, which makes accessing any
  165.          part of the file very fast. The user can move from the top
  166.          to the bottom of any buffer instantaneously. The maximum
  167.          line length is a huge 32767 characters. Table 1 shows some
  168.          approximate capacities of pEDIT with different amounts of
  169.          memory:
  170.          
  171.  
  172.  
  173.  
  174.                                      - 1 -
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.                                      Table 1
  182.                                 ----------------
  183.                                 pEDIT Capacities
  184.  
  185.  
  186.                  Total           Approximate        Maximum Lines
  187.                Memory (k)        Capacity (k)          of Text
  188.                ----------        ------------       -------------
  189.  
  190.                   320                  64                1550
  191.                   384                  96                2900
  192.                   448                 160                4300
  193.                   512                 192                5650
  194.                   576                 256                7000
  195.                   640                 288                8350
  196.  
  197.          The table assumes 64k is used by DOS, device drivers, TSRs,
  198.          etc. If you have more memory than this allocated for these
  199.          purposes, the capacity will of course be lower. pEDIT tries
  200.          to leave 50-80k free for shelling to DOS using the standard
  201.          Dos and Spawn functions. The eXtended shell functions XDos
  202.          and XSpawn free up all the text memory shown in the table,
  203.          making it possible to shell to DOS with 350k free on a 640k
  204.          machine.
  205.          
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.                                      - 2 -
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.                        I N S T A L L I N G   p E D I T
  244.  
  245.  
  246.                             1. General Information
  247.  
  248.          The distribution diskette contains the following files. Those
  249.          flagged by (*) are included with the registered version only.
  250.  
  251.              READ.ME
  252.  
  253.                  Text file containing information about the INSTALL
  254.                  program and how to get started with pEDIT
  255.  
  256.              PEDIT.DOC
  257.  
  258.                  This document; it is a standard ASCII text file that
  259.                  can be printed
  260.  
  261.              PEDIT.EXE
  262.  
  263.                  The pEDIT executable program
  264.  
  265.              PEDIT.INI
  266.  
  267.                  Initialization file containing default key bindings
  268.                  and environment settings
  269.  
  270.              PED101.HLP
  271.              PED84.HLP
  272.  
  273.                  Help files for both 101 (Enhanced) and 84 (AT style)
  274.                  key keyboards
  275.  
  276.              REGISTER.DOC
  277.  
  278.                  How to register for pEDIT; registered users receive
  279.                  the latest version of pEDIT without the opening share-
  280.                  ware screen and full printed documentation
  281.  
  282.              VENDOR.DOC
  283.  
  284.                  Information for shareware vendors regarding require-
  285.                  ments for distributing pEDIT
  286.  
  287.              INSTALL.EXE
  288.  
  289.                  Program to install pEDIT on floppy or hard disk based
  290.                  systems.
  291.  
  292.  
  293.  
  294.  
  295.  
  296.                                      - 3 -
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.           (*)KEYRATE.COM
  305.  
  306.                  Program to set the keyboard repeat rate on AT and
  307.                  later computers
  308.  
  309.           (*)STAYDOWN.COM
  310.  
  311.                  Memory-resident utility from PC Magazine to allow
  312.                  Ctrl-, Alt- and Shift- commands to be entered as 2
  313.                  keystrokes
  314.  
  315.          The distribution diskette is a MASTER and should be used
  316.          only for making copies. It should be write-protected and you
  317.          should NEVER use the master diskette itself for editing; if
  318.          something should happen to it, you will no longer have
  319.          pEDIT!
  320.          
  321.          The following installation procedures assume you have a basic
  322.          knowledge of PC operation and can format a diskette. Refer to
  323.          your DOS manual as needed.
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.                                      - 4 -
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.                          2. Floppy Disk Installation
  366.  
  367.          This procedure assumes you have 2 floppy disks of at least
  368.          360kb each. pEDIT will not be very usable with a single 360kb
  369.          floppy - there will not be much room for text files.
  370.  
  371.          In a floppy system, Drive A: will contain the program disk
  372.          with the pEDIT executable plus help and initialization files.
  373.          Drive B: will contain a work disk with your document files,
  374.          source programs or other text. There will be only one program
  375.          disk; you can have as many work disks as you want.
  376.  
  377.          1. Format two diskettes; make one (the program disk) a system
  378.             disk if you want to be able to boot from it; label the
  379.             floppies 'pEDIT Program' and 'pEDIT Work'
  380.  
  381.          2. Insert the distribution diskette in Drive A:
  382.  
  383.          3. Determine if your keyboard is a 101-key or 84-key model;
  384.             if neither, pick the one that is closest
  385.  
  386.             Decide if you want to install the optional KEYRATE and
  387.             STAYDOWN utilities (registered version only)
  388.  
  389.          4. Run the installation program; default values are shown
  390.             in brackets
  391.  
  392.             A>INSTALL<Enter>
  393.  
  394.             pEDIT Installation Program
  395.  
  396.             Source drive [A]: <Enter>
  397.             Target drive [C]: B<Enter>
  398.             Target drive directory [\PEDIT]: \<Enter>
  399.             84- or 101-key keyboard (84,101): 101<Enter>
  400.             Install STAYDOWN and KEYRATE (Y,N): Y<Enter>
  401.          
  402.             Source Device   = A
  403.             Target Device   = B:\
  404.             Keyboard Type   = 101
  405.             Install Options = Y
  406.  
  407.             Do you want to continue (Y,N): Y<Enter>
  408.  
  409.             **** Installation started at 13:14.54
  410.  
  411.             Insert blank formatted disk in Drive B:
  412.               Press <Enter> when ready: <Enter>
  413.  
  414.             Copying A:PEDIT.EXE to B:\PEDIT.EXE
  415.  
  416.  
  417.  
  418.                                      - 5 -
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.             Copying A:PEDIT.DOC to B:\PEDIT.DOC
  427.             Copying A:PEDIT.INI to B:\PEDIT.INI
  428.             Copying A:PED101.HLP to B:\PEDIT.HLP
  429.             Copying A:REGISTER.DOC to B:\REGISTER.DOC
  430.             Copying A:VENDOR.DOC to B:\VENDOR.DOC
  431.             Copying A:KEYRATE.COM to B:\KEYRATE.COM
  432.             Copying A:STAYDOWN.COM to B:\STAYDOWN.COM
  433.  
  434.             **** Installation completed at 13:17.36
  435.  
  436.          5. Remove the distribution disk from Drive A; move the
  437.             pEDIT Program disk to Drive A and insert a pEDIT Work
  438.             disk in B:
  439.  
  440.          6. If you want KEYRATE to be run automatically when you
  441.             boot, copy KEYRATE.COM to your system disk and add the
  442.             following line to your AUTOEXEC.BAT file:
  443.  
  444.               KEYRATE FAST
  445.  
  446.          7. If you want STAYDOWN to be installed when you boot, copy
  447.             STAYDOWN.COM to the system (boot) diskette and add this
  448.             line to AUTOEXEC.BAT:
  449.  
  450.               STAYDOWN
  451.  
  452.          8. If you modified AUTOEXEC, reboot your computer so that
  453.             KEYRATE and STAYDOWN can take effect
  454.  
  455.          9. Proceed to "Starting Up pEDIT"
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  
  477.  
  478.  
  479.                                      - 6 -
  480.  
  481.  
  482.  
  483.  
  484.  
  485.  
  486.  
  487.                           3. Hard Disk Installation
  488.  
  489.          This procedure assumes you have 1 floppy disk and a hard disk
  490.          of any size. You will most certainly want to install pEDIT on
  491.          the hard disk for improved speed.
  492.  
  493.          You will need to decide if you want to install pEDIT in its
  494.          own directory, in the root (\) directory or in, for example,
  495.          a \TOOLS or \UTIL directory. The example assumes pEDIT will
  496.          be installed in its own directory (\PEDIT); if not, sub-
  497.          stitute your directory name.
  498.  
  499.          1. Insert the distribution diskette in Drive A:
  500.  
  501.          2. Determine if your keyboard is a 101-key or 84-key model;
  502.             if neither, pick the one that is closest
  503.  
  504.             Decide if you want to install the optional KEYRATE and
  505.             STAYDOWN utilities (registered version only)
  506.  
  507.          3. Run the installation program; default values are shown
  508.             in brackets
  509.  
  510.             A>INSTALL<Enter>
  511.  
  512.             pEDIT Installation Program
  513.  
  514.             Source drive [A]: <Enter>
  515.             Target drive [C]: <Enter>
  516.             Target drive directory [\PEDIT]: <Enter>
  517.             84- or 101-key keyboard (84,101): 101<Enter>
  518.             Install STAYDOWN and KEYRATE (Y,N): Y<Enter>
  519.  
  520.             Source Device   = A
  521.             Target Device   = C:\PEDIT
  522.             Keyboard Type   = 101
  523.             Install Options = Y
  524.  
  525.             Do you want to continue (Y,N): Y<Enter>
  526.  
  527.             **** Installation started at 13:14.54
  528.  
  529.             Copying A:PEDIT.EXE to C:\PEDIT\PEDIT.EXE
  530.             Copying A:PEDIT.DOC to C:\PEDIT\PEDIT.DOC
  531.             Copying A:PEDIT.INI to C:\PEDIT\PEDIT.INI
  532.             Copying A:PED101.HLP to C:\PEDIT\PEDIT.HLP
  533.             Copying A:REGISTER.DOC to C:\PEDIT\REGISTER.DOC
  534.             Copying A:VENDOR.DOC to C:\PEDIT\VENDOR.DOC
  535.             Copying A:KEYRATE.COM to C:\PEDIT\KEYRATE.COM
  536.  
  537.  
  538.  
  539.  
  540.                                      - 7 -
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.             Copying A:STAYDOWN.COM to C:\PEDIT\STAYDOWN.COM
  549.  
  550.             **** Installation completed at 13:15.36
  551.  
  552.          5. Remove the distribution disk from Drive A:
  553.  
  554.          6. If you want KEYRATE to be invoked automatically when
  555.             you boot, copy KEYRATE.COM to the root directory of your
  556.             hard disk and add the following line to the AUTOEXEC.BAT
  557.             file:
  558.  
  559.               C:\KEYRATE FAST
  560.  
  561.          7. If you want STAYDOWN to be installed when you boot, copy
  562.             STAYDOWN.COM to the root directory and add this line to
  563.             AUTOEXEC.BAT:
  564.  
  565.               C:\STAYDOWN
  566.  
  567.          8. Add the pEDIT directory in your DOS path so DOS can find
  568.             the program no matter where you are; refer to the DOS
  569.             manual for how to use the PATH command.
  570.  
  571.             You will also want to define PEDITHLP and PEDITINI to the
  572.             DOS environment so the editor can find them; add the
  573.             following lines to AUTOEXEC.BAT, again substituting your
  574.             directory if other than \PEDIT:
  575.  
  576.               SET PEDITHLP=C:\PEDIT\PEDIT.HLP
  577.               SET PEDITINI=C:\PEDIT\PEDIT.INI
  578.  
  579.          9. If you modified AUTOEXEC, reboot your computer
  580.  
  581.          10. Proceed to "Starting Up pEDIT"
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.                                      - 8 -
  602.  
  603.  
  604.  
  605.  
  606.  
  607.  
  608.  
  609.                       S T A R T I N G   U P   p E D I T
  610.  
  611.  
  612.          The program file (PEDIT.EXE) must be in the current default
  613.          directory or available through your DOS PATH. The help and
  614.          initialization files (PEDIT.HLP, PEDIT.INI) must be defined
  615.          to the DOS environment using the SET command or, again, be
  616.          present in the current directory.
  617.          
  618.          Note: if you are using a floppy-only system, make sure you
  619.          have a copy of COMMAND.COM present. pEDIT must be able to
  620.          find this file to use pEDIT's (X)Dos and (X)Spawn commands.
  621.          
  622.          pEDIT can be started in one of two ways - with or without a
  623.          file specification. If you don't want to start out editing
  624.          an existing file, enter:
  625.          
  626.              C>PEDIT
  627.  
  628.          The normal way of starting pEDIT would be to specify the name
  629.          of a file to be edited:
  630.  
  631.             C>PEDIT D:\PATH\FILENAME.TYP
  632.  
  633.          After entering one of the above commands, the screen will
  634.          clear and you will see pEDIT's inverse status line. Next you
  635.          will see a message that the initialization file is being
  636.          read - provided, of course, that pEDIT can find one.
  637.          Finally, if a file was specified, pEDIT will load the file
  638.          and display the first screenfull of text. The cursor will be
  639.          positioned at the top of the buffer.
  640.          
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.                                      - 9 -
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.  
  674.             +--------------------------------------------------------+
  675.           1 |                                                        |
  676.           2 |                                                        |
  677.           3 |                                                        |
  678.           4 |                                                        |
  679.           5 |                                                        |
  680.           6 |                                                        |
  681.           7 |                                                        |
  682.           8 |                                                        |
  683.           9 |                                                        |
  684.          10 |                                                        |
  685.             +--------------------------------------------------------+
  686.          11 |   BufferName               Mode          Direction     |
  687.             +--------------------------------------------------------+
  688.          12 |                                                        |
  689.          13 |                                                        |
  690.          14 |                                                        |
  691.          15 |                                                        |
  692.          16 |                                                        |
  693.          17 |                                                        |
  694.          18 |                                                        |
  695.          19 |                                                        |
  696.          20 |                                                        |
  697.          21 |                                                        |
  698.             +--------------------------------------------------------+
  699.          22 |   BufferName               Mode          Direction     |
  700.             +--------------------------------------------------------+
  701.          23  Command:
  702.          24  <Message>                                   Working . . .
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.                                    Figure 1
  714.                                  ------------
  715.                                  pEDIT Screen
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.                                      - 10 -
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.          Figure 1 shows a picture of the pEDIT screen. The editor uses
  732.          rows 1-24 for text, status, commands and messages. Note that
  733.          the PC's 25th line is not used.
  734.  
  735.          The pEDIT screen will contain 1 or 2 windows. The windows can
  736.          be either mapped to a buffer or used to display information.
  737.          A single window holds 21 lines of text; if two windows are
  738.          active, each will contain 10 lines. Figure 1 shows pEDIT with
  739.          two windows displayed; the top window uses rows 1-10, the
  740.          bottom window rows 12-21.
  741.  
  742.          Each visible window has a reverse video status line at the
  743.          bottom. What the status line shows depends on what the window
  744.          is used for. If it is a text window, the status line shows
  745.          the buffer name, the current mode (Insert/Overstrike) and the
  746.          current direction (Forward/Reverse). For an informational
  747.          window, the status line indicates the type of information
  748.          being displayed - HELP, SHOW, LIST, ERROR, etc.
  749.  
  750.          Think of a window as a viewport into a portion of the text.
  751.          Figure 2 shows a text buffer (represented by the large box)
  752.          and a window into the text. Note that a window can show no
  753.          more than 80 columns of text. pEDIT uses horizontal scrolling
  754.          so the window can be into any portion of the text, not just
  755.          the leftmost 80 columns. pEDIT can handle lines up to 32767
  756.          characters in length.
  757.  
  758.          The command line displayed at row 23 is actually a one line
  759.          window without a status line. It is mapped to the COMMAND
  760.          buffer whenever the DoCommand key is pressed. The prompt
  761.          'Command: ' is displayed when the editor is in command mode.
  762.  
  763.          The message line at row 24 is used to display informational
  764.          text, errors, etc. Also shown at the right margin is the
  765.          'Working . . .' message that flashes whenever pEDIT is busy
  766.          loading a file, searching, etc. The message is erased when-
  767.          ever a key is pressed.
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.                                      - 11 -
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.             +--------------------------------------------------------+
  797.             |                                                        |
  798.             |        +----------------+                              |
  799.             | Now is |the time for all| good persons to come to the  |
  800.             | aid of |their country.  |                              |
  801.             |        |                |                              |
  802.             |        |<--- Window --->|                              |
  803.             |        |                |                              |
  804.             |        +----------------+                              |
  805.             |                                                        |
  806.             |                                                        |
  807.             |                                                        |
  808.             |                                                        |
  809.             |                                                        |
  810.             |                                                        |
  811.             |                                                        |
  812.             |<----------------------- Buffer ----------------------->|
  813.             |                                                        |
  814.             |                                                        |
  815.             |                                                        |
  816.             |                                                        |
  817.             |                                                        |
  818.             |                                                        |
  819.             |                                                        |
  820.             |                                                        |
  821.             |                                                        |
  822.             |                                                        |
  823.             |                                                        |
  824.             +--------------------------------------------------------+
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.                                    Figure 2
  836.                                ---------------
  837.                                Buffers/Windows
  838.  
  839.  
  840.  
  841.  
  842.  
  843.  
  844.  
  845.                                      - 12 -
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.  
  853.                  I N T E R A C T I N G   W I T H   p E D I T
  854.  
  855.  
  856.          There are two ways to interact with the editor - command mode
  857.          and prompting mode. In either mode, pEDIT will prompt for the
  858.          missing parameters if an incomplete command is given. For
  859.          example, if you enter "replace" without any parameters, you
  860.          will be asked for "Old string" and "New string".
  861.  
  862.  
  863.                                1. Command Mode
  864.  
  865.          Press the DoCommand key (normally Esc) to enter command
  866.          mode. The prompt "Command: " will be displayed on the
  867.          command line and the cursor will be positioned after the
  868.          colon. At this point you can issue any valid pEDIT command,
  869.          for example "write file" or "set margins 10 70".
  870.          
  871.          It is very important to realize that the command line is a
  872.          window into the COMMAND buffer. All defined keys and pEDIT
  873.          commands will work as expected - you can move backwards and
  874.          forwards, toggle between insert and overstrike mode, etc. The
  875.          command prompt is part of the text and can be overwritten or
  876.          deleted; be careful to leave the "Command: " portion of each
  877.          line intact.
  878.  
  879.          The command window does not have an associated status line.
  880.          You will not be able to see the current mode and direction;
  881.          use "show buffer" for this information if desired.
  882.  
  883.  
  884.                               2. Prompting Mode
  885.  
  886.          Prompting mode is active whenever pEDIT is asking for input
  887.          and the "Command: " prompt is not displayed. In this mode you
  888.          will not have access to pEDIT's commands and key definitions.
  889.          Only Insert mode is supported; limited line editing is avail-
  890.          able using the following keys:
  891.  
  892.              Up             Recall the last command entered
  893.              BackSpace      Erase previous character
  894.              Del        Erase current character
  895.              Left           Move left one character
  896.              Right          Move right one character
  897.              Home           Position to start of line
  898.              End            Position cursor to end of line
  899.  
  900.  
  901.  
  902.  
  903.  
  904.  
  905.  
  906.                                      - 13 -
  907.  
  908.  
  909.  
  910.  
  911.  
  912.  
  913.  
  914.                          p E D I T   C O M M A N D S
  915.  
  916.  
  917.                               1. Cursor Movement
  918.  
  919.          Moving the cursor around in the text is among the most basic
  920.          of all editing functions. With the following commands you
  921.          will be able to move around in your document. The default key
  922.          bound to each function is given in parentheses after each
  923.          procedure name; refer to the Appendix for key names.
  924.  
  925.          1.1. Move Top (Ctrl-Home)
  926.  
  927.          This command positions the cursor to the first line of the
  928.          buffer, scrolling or repainting the screen as necessary.
  929.          pEDIT keeps all text in memory, making it very fast to move
  930.          to the top of the buffer from any point in the buffer.
  931.  
  932.          1.2. Move Bottom (Ctrl-End)
  933.  
  934.          This function moves the cursor to the dummy last line at the
  935.          end of the buffer. Again, the screen will scroll or repaint
  936.          as required.
  937.  
  938.          1.3. Move Home (Home)
  939.  
  940.          The action of MoveHome depends on the position of the cursor
  941.          within the current line. If the cursor is not at the begin-
  942.          ning of the line, it will move there. If it is already at the
  943.          start of a line, it will move to the start of the previous
  944.          line. Scrolling will take place as necessary toward the
  945.          beginning of the buffer.
  946.  
  947.          1.4. Move End (End)
  948.  
  949.          MoveEnd moves the cursor to the end of the current line if it
  950.          is not there already. If the cursor is at the end of the
  951.          line, it will move to the end of the next line. The screen
  952.          will scroll as needed toward the end of the buffer.
  953.  
  954.          1.5. Move Up (Up)
  955.  
  956.          This command is used to move up one line in the current
  957.          buffer. Obviously, there can be no action if the cursor is
  958.          already on the first line of the buffer. Otherwise, the
  959.          cursor will move up a line, scrolling if necessary. Note that
  960.          pEDIT attempts to keep the cursor as close to the same column
  961.          as possible.
  962.  
  963.          1.6. Move Down (Down)
  964.  
  965.  
  966.  
  967.                                      - 14 -
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.          MoveDown moves the cursor down one line following logic
  976.          similar to that of MoveUp. The cursor can't move if it is
  977.          already on the dummy last line of the buffer. Otherwise, it
  978.          will move down, scrolling as necessary. Again, pEDIT will
  979.          keep the cursor as close as possible to the same column.
  980.  
  981.          1.7. Move Left (Left)
  982.  
  983.          This function moves the cursor left one character position.
  984.          The cursor may move more than one column if the character
  985.          being crossed is a Tab or control character. If the cursor is
  986.          at the beginning of a line, it will wrap to the end of the
  987.          previous line.
  988.  
  989.          1.8. Move Right (Right)
  990.  
  991.          This command moves the cursor right one character. Again,
  992.          more than one column will be crossed for the Tab and other
  993.          control characters. If the cursor is at the end of a line, it
  994.          will move to the beginning of the next line.
  995.  
  996.          1.9. Move Word (F2)
  997.  
  998.          MoveWord will move the cursor to the beginning of the next
  999.          word in the current direction. If the direction is Forward,
  1000.          it will move toward the end of the buffer; if the direction
  1001.          is Reverse, toward the beginning of the buffer.
  1002.  
  1003.          The screen will scroll or repaint depending on the state of
  1004.          Select. If Select is active, the screen will be redisplayed.
  1005.          If Select is not active, scrolling will take place to keep
  1006.          the cursor on the fourth line from the top or bottom of the
  1007.          window. Scrolling is much faster than having to repaint the
  1008.          entire screen.
  1009.  
  1010.  
  1011.  
  1012.  
  1013.  
  1014.  
  1015.  
  1016.  
  1017.  
  1018.  
  1019.  
  1020.  
  1021.  
  1022.  
  1023.  
  1024.  
  1025.  
  1026.  
  1027.  
  1028.                                      - 15 -
  1029.  
  1030.  
  1031.  
  1032.  
  1033.  
  1034.  
  1035.  
  1036.                          p E D I T   C O M M A N D S
  1037.  
  1038.                              2. Text Manipulation
  1039.  
  1040.          The following commands are used to manipulate text, i.e.
  1041.          insert new text and change the form of existing text.
  1042.  
  1043.          2.1. Insert Char
  1044.  
  1045.          There is no 'InsertChar' command; rather, it is the default
  1046.          when a key other than a defined command key is pressed. These
  1047.          keys include the typing keys and non-definable keys such as
  1048.          Tab, BackSpace and Enter. The action taken depends on the
  1049.          current mode. In Insert mode, the character will be inserted
  1050.          into the buffer at the current cursor position; text to the
  1051.          right of the cursor is "shoved over" to make room. In Over-
  1052.          strike mode, the current character is simply overwritten.
  1053.  
  1054.          pEDIT uses automatic word wrap to keep text between the
  1055.          defined margins as you type. If a word will not fit inside
  1056.          the current right margin, it will be moved to the start of
  1057.          the next line.
  1058.  
  1059.          The Tab and control keys require special handling. If the Tab
  1060.          key is pressed, the cursor will move to the next tab stop.
  1061.          pEDIT allows only standard tabs at every eighth character
  1062.          position, i.e. columns 9, 17, 25, 33,... Note that an actual
  1063.          tab character (Ascii Ctrl-I) is stored in the text. Other
  1064.          control characters are shown as a caret (^) followed by the
  1065.          displayable character; for example, Ctrl-A would show as ^A.
  1066.  
  1067.          2.2. Restore Text (F09)
  1068.  
  1069.          This command restores the text last deleted by EraseWord or
  1070.          EraseLine. The text is stored in a special text buffer for
  1071.          later restoration. This text buffer is rebuilt after every
  1072.          action so only the very last erasure can be restored.
  1073.  
  1074.          2.3. Open Line (Ctrl-O)
  1075.  
  1076.          This function opens up a new (empty) line for text insertion.
  1077.          The end result is the same as pressing Enter followed by
  1078.          MoveLeft. If a left margin has been defined the text will be
  1079.          indented up to this margin.
  1080.  
  1081.          2.4. Fill Paragraph (Alt-F)
  1082.  
  1083.          FillParagraph reformats the paragraph the cursor is in to fit
  1084.          within the defined margins. Use this command after you have
  1085.          inserted or deleted text or changed margins. A paragraph is
  1086.          defined as contiguous text bounded by empty lines both above
  1087.  
  1088.  
  1089.                                      - 16 -
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.  
  1097.          and below. pEDIT will not see indented text as a separate
  1098.          paragraph unless it has at least one empty line separating it
  1099.          from other text.
  1100.  
  1101.          FillParagraph should be used sparingly in large documents. It
  1102.          works by copying the text to a fill buffer, deleting the
  1103.          current paragraph and then re-inserting the text. This uses
  1104.          considerable storage space.
  1105.  
  1106.          2.5. Indent
  1107.  
  1108.          This function is very useful in programming where you want to
  1109.          indent a section of code in or out without having to manually
  1110.          edit every line. A level is 4 character positions or one-half
  1111.          a tab stop. Indent uses tabs and spaces as needed to indent
  1112.          the line to the desired offset.
  1113.  
  1114.          To use indent (1) position the cursor to the start of the
  1115.          first line, (2) turn Select on, (3) highlight the entire
  1116.          range of lines to be indented and (4) issue the "INDENT" or
  1117.          "INDENT n" command. Specify the number of levels (n) as a
  1118.          positive or negative integer - positive for 'out' (toward
  1119.          the right), negative for 'in'.
  1120.  
  1121.          The selected range must start at the beginning of the first
  1122.          line and end at the end of the last line. Note that Select is
  1123.          automatically turned off after the function completes.
  1124.  
  1125.          2.6. Auto Indent (Ctrl-Enter)
  1126.  
  1127.          This is another function very useful in programming. It is
  1128.          used to start a new line and automatically indent the line
  1129.          the same as the previous line. pEDIT uses the same leading
  1130.          whitespace (spaces and tabs) as the previous line. AutoIndent
  1131.          is normally used at the end of a line but the command can be
  1132.          issued anywhere.
  1133.  
  1134.          2.7. Center Line
  1135.  
  1136.          This command centers the current line - the line the cursor
  1137.          is on - between the existing margins. Only spaces are used to
  1138.          indent the line to the appropriate position.
  1139.  
  1140.          2.8. Capital Word (Alt-C)
  1141.  
  1142.          CapitalWord capitalizes the current word starting at the
  1143.          current position within the word. The case change does not
  1144.          start at the beginning of the word; this is to allow, for
  1145.          example, 'Microsoft' to be changed to 'MicroSoft'.
  1146.  
  1147.          2.9. Lower Word (Alt-L)
  1148.  
  1149.  
  1150.                                      - 17 -
  1151.  
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.          This command converts the current word to lower-case starting
  1159.          at the current position within the word. All characters from
  1160.          the cursor to the end of the word will be changed to upper-
  1161.          case.
  1162.  
  1163.          2.10. Upper Word (Alt-U)
  1164.  
  1165.          UpperWord converts the current word to upper-case, again
  1166.          starting at the current character position and not at the
  1167.          beginning of the word.
  1168.  
  1169.          2.11. Quote Char (Ctrl-V)
  1170.  
  1171.          This function is used to enter special characters into the
  1172.          text. Whenever you press the QuoteChar key pEDIT prompts you
  1173.          with "Press key to be added: "; at this point press one of
  1174.          the special keys. For example, to insert a form feed (Ctrl-L,
  1175.          Ascii 12) press Ctrl-V followed by Ctrl-L. The character will
  1176.          show as '^L' on the screen.
  1177.  
  1178.          The feature can also be used with Find and Replace. To find a
  1179.          line feed (Ctrl-J, Ascii 10) for example, press the DoCommand
  1180.          key and enter "FIND ^V^J".
  1181.  
  1182.          Note that extended keys such as the PC keypad and function
  1183.          keys cannot be quoted. These keys return two bytes - a null
  1184.          followed by a displayable character. pEDIT uses the null
  1185.          character (Ascii 0) to denote end of line and so nulls cannot
  1186.          be used.
  1187.  
  1188.          The PC graphics characters - those above Ascii 127 - are
  1189.          inserted in a special way. Hold down the Alt key and enter
  1190.          the decimal value of the character using the numeric keypad
  1191.          only; release the Alt key when done. This is documented in
  1192.          some DOS manuals.
  1193.  
  1194.          2.12. Trans Char (Alt-T)
  1195.  
  1196.          This command transposes (swaps) two characters of text within
  1197.          a line. The cursor must be on the second character when you
  1198.          issue the command. The cursor cannot be positioned past the
  1199.          end of the line.
  1200.  
  1201.  
  1202.  
  1203.  
  1204.  
  1205.  
  1206.  
  1207.  
  1208.  
  1209.  
  1210.  
  1211.                                      - 18 -
  1212.  
  1213.  
  1214.  
  1215.  
  1216.  
  1217.  
  1218.  
  1219.                          p E D I T   C O M M A N D S
  1220.  
  1221.                                3. Text Deletion
  1222.  
  1223.          These commands are used to delete (erase) existing text. You
  1224.          can delete by character, word or line.
  1225.  
  1226.          3.1. Erase Char (Ctrl-D)
  1227.  
  1228.          This command deletes the current character - the character
  1229.          the cursor is on. The action taken depends on the current
  1230.          mode. In Insert mode, the character is deleted and text to
  1231.          the right of the cursor is shifted left to "fill in the
  1232.          hole". In Overstrike mode, the character is replaced by a
  1233.          space.
  1234.  
  1235.          3.2. Erase Prev (Backspace)
  1236.  
  1237.          This function deletes the previous character - the character
  1238.          to the left of the cursor. In Insert mode, the character is
  1239.          deleted and text to the right of the cursor is again shifted
  1240.          toward the left. In Overstrike mode, the character is again
  1241.          replaced by a space.
  1242.  
  1243.          ErasePrev is permanently bound to the Backspace key. The
  1244.          Backspace key cannot be redefined.
  1245.  
  1246.          3.3. Erase Word (F04)
  1247.  
  1248.          EraseWord deletes text from the current position in a word to
  1249.          the end of the word. Deletion does not start at the beginning
  1250.          of the word. The current direction (Forward/Reverse) does not
  1251.          affect the action; deletion is always toward the end of the
  1252.          word.
  1253.  
  1254.          The current mode also has no effect on EraseWord. The entire
  1255.          word (or portion of a word) will be erased.
  1256.  
  1257.          3.4. Erase Line (Ctrl-K)
  1258.  
  1259.          This command erases an entire line or a portion of a line
  1260.          depending on the position of the cursor. If the cursor is at
  1261.          the beginning of a line, the entire line - including the new
  1262.          line (end of line) marker - is erased and stored in the text
  1263.          buffer. If the cursor is not at the start of a line, deletion
  1264.          is from the current position to the end of the line.
  1265.  
  1266.  
  1267.  
  1268.  
  1269.  
  1270.  
  1271.  
  1272.                                      - 19 -
  1273.  
  1274.  
  1275.  
  1276.  
  1277.  
  1278.  
  1279.  
  1280.                          p E D I T   C O M M A N D S
  1281.  
  1282.                                  4. Searching
  1283.  
  1284.          The search commands are used to search for (find) text, and
  1285.          to replace one text string by another. You will find that
  1286.          pEDIT's replace function is very powerful and flexible.
  1287.  
  1288.          4.1. Find (F01)
  1289.  
  1290.          The "Find" command is used to search for a specified text
  1291.          string. You can either press the Find key and respond to the
  1292.          prompt "String to find: " or press DoCommand and enter the
  1293.          command "FIND <text>". If the target string is all lowercase,
  1294.          the operation will be case-insensitive, that is 'pedit' will
  1295.          match 'pedit', 'pEDIT' and 'PEDIT'. If instead the target
  1296.          contains any uppercase characters, the match will be exact;
  1297.          'pEDIT' will match only 'pEDIT'.
  1298.  
  1299.          The direction of the search will of course follow the current
  1300.          direction. The screen will scroll or repaint depending on the
  1301.          Select state; the action taken will be the same as it is for
  1302.          MoveWord.
  1303.  
  1304.          4.2. Find Next (F03)
  1305.  
  1306.          This command will find the next occurrence of the last search
  1307.          string you specified. It is advisable to have FindNext bound
  1308.          to a key so only a single key press is required to repeat the
  1309.          last search operation.
  1310.  
  1311.          4.3. Replace (Alt-R)
  1312.  
  1313.          pEDIT has a very powerful search and replace function. Some
  1314.          editors force you to do replacements one-at-a-time or replace
  1315.          every occurrence without giving you a choice. To use Replace,
  1316.          either press the Replace key and reply to the "Old string :"
  1317.          and "New string: " prompts, or press DoCommand and enter a
  1318.          command of the form "REPLACE old new".
  1319.  
  1320.          pEDIT will search for each occurrence of 'old' and prompt you
  1321.          with "Replace (Y)es (N)o (A)ll (L)ast (Q)uit: ". Enter one of
  1322.          the following:
  1323.  
  1324.             Enter - replace this occurrence
  1325.             Y     - replace this occurrence
  1326.             N     - skip this replacement
  1327.             A     - replace all occurrences from this point
  1328.             L     - make this the last replacement and quit
  1329.             Q     - quit.
  1330.  
  1331.  
  1332.  
  1333.                                      - 20 -
  1334.  
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341.          Matching the old string will follow the rules listed for the
  1342.          Find command above. However, the replacement will always
  1343.          substitute the specified new string. For example, the command
  1344.          "REPLACE pedit pEDIT" will substitute 'pEDIT' in all cases.
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.  
  1365.  
  1366.  
  1367.  
  1368.  
  1369.  
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393.  
  1394.                                      - 21 -
  1395.  
  1396.  
  1397.  
  1398.  
  1399.  
  1400.  
  1401.  
  1402.                          p E D I T   C O M M A N D S
  1403.  
  1404.                                    5. Files
  1405.  
  1406.          These commands involve reading and writing disk files.
  1407.  
  1408.          5.1. Get File (Alt-G)
  1409.  
  1410.          This command loads in a new file for editing. pEDIT will
  1411.          create a buffer for the file, create a window and map the
  1412.          window to the buffer. The status line will reflect the new
  1413.          buffer name and the first screen of text, if any, will be
  1414.          displayed. If no file exists, pEDIT will display "Creating
  1415.          file" and present you with an empty screen.
  1416.  
  1417.          You must specify a complete file name. pEDIT does not support
  1418.          path name completion or supply a list of matching filenames.
  1419.          Also, pEDIT does not validate file names; be sure and provide
  1420.          a valid name.
  1421.  
  1422.          pEDIT allows 4 user buffers. The number of lines and amount
  1423.          of text space depends on available memory.
  1424.  
  1425.          5.2. Include File (Alt-I)
  1426.  
  1427.          This function reads in the specified file from disk and
  1428.          inserts it in the buffer starting at the current cursor
  1429.          location. The screen will repaint to show the new text. The
  1430.          end result is the same as if the user typed in the text
  1431.          contained in the file.
  1432.  
  1433.          Include File should be used only for relatively small files.
  1434.          The function uses the normal InsertChar routine, not the much
  1435.          faster GetFile which loads text directly into memory.
  1436.  
  1437.          5.3. Write File (F10)
  1438.  
  1439.          WriteFile is used to save the contents of the current buffer
  1440.          to disk. The file name used will be the one specified when
  1441.          the buffer was created. If no file name has been selected,
  1442.          pEDIT will ask for one.
  1443.  
  1444.          You can change the name of the file at any time by using a
  1445.          command of the form "WRITE FILE filespec" where filespec is a
  1446.          valid DOS file specification; see the section Error Handling.
  1447.  
  1448.          Caution: pEDIT will overwrite any existing file. If the
  1449.          editor runs out of disk space during the save operation, you
  1450.          will be advised of the situation and told to free up space on
  1451.          the current drive or use "WRITE FILE filespec" to switch to
  1452.          another drive.
  1453.  
  1454.  
  1455.                                      - 22 -
  1456.  
  1457.  
  1458.  
  1459.  
  1460.  
  1461.  
  1462.  
  1463.                          p E D I T   C O M M A N D S
  1464.  
  1465.                                   6. Buffers
  1466.  
  1467.          These commands affect how text is viewed and manipulated. You
  1468.          can pick which buffer(s) to view, set the mode and direction,
  1469.          etc.
  1470.  
  1471.          6.1. Show Buffer
  1472.  
  1473.          ShowBuffer displays detailed information about the current
  1474.          buffer. This includes the buffer name, associated file
  1475.          specification, current mode, current direction, number of
  1476.          lines of text, characters of text, etc.
  1477.  
  1478.          6.2. List Buffers
  1479.  
  1480.          This function lists a summary of all defined buffers - the
  1481.          two system buffers (COMMAND and DOS) plus up to 4 user
  1482.          buffers. The following items are displayed: buffer name,
  1483.          number of lines in the buffer, buffer type (System or User),
  1484.          whether or not the buffer has been modified and the name of
  1485.          the file associated with the buffer.
  1486.  
  1487.          6.3. Buffer (Alt-B)
  1488.  
  1489.          This command lets you switch between buffers. You will be
  1490.          presented with a BUFFER window containing the names of all
  1491.          buffers - System and User. The cursor will automatically be
  1492.          positioned on the first User buffer. Use the up and down
  1493.          arrow keys to highlight the desired buffer name; press Enter
  1494.          to select that buffer.
  1495.  
  1496.          6.4. Change Mode (F05)
  1497.  
  1498.          The ChangeMode command is used to toggle between Insert and
  1499.          Overstrike modes. If the mode is Insert when the command is
  1500.          given, it will change to Overstrike and vice versa.
  1501.  
  1502.          6.5. Change Dir (F06)
  1503.  
  1504.          Use this command to toggle between the Forward and Reverse
  1505.          directions. Note that the buffer direction applies only to
  1506.          the Find, FindNext, Replace and MoveWord functions.
  1507.  
  1508.          6.6. Mark
  1509.  
  1510.          This function is used to 'mark' a particular place in a
  1511.          buffer so you can return to it at some later time. There can
  1512.          be only one marker in each buffer. pEDIT tries to stay as
  1513.          close as possible to the original mark as text is inserted
  1514.  
  1515.  
  1516.                                      - 23 -
  1517.  
  1518.  
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524.          and deleted.
  1525.  
  1526.          6.7. Goto Mark
  1527.  
  1528.          Issue this command to move to the position defined by the
  1529.          last Mark command. The screen will scroll or repaint as
  1530.          necessary.
  1531.  
  1532.          6.8. Line
  1533.  
  1534.          The Line command is used to display the current line number
  1535.          or move to a particular line in the buffer. Enter "LINE" by
  1536.          itself to display the current line and number of lines; use
  1537.          "LINE nn" to move to line number nn.
  1538.  
  1539.  
  1540.  
  1541.  
  1542.  
  1543.  
  1544.  
  1545.  
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.  
  1568.  
  1569.  
  1570.  
  1571.  
  1572.  
  1573.  
  1574.  
  1575.  
  1576.  
  1577.                                      - 24 -
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.                          p E D I T   C O M M A N D S
  1586.  
  1587.                                   7. Windows
  1588.  
  1589.          The window functions control the number of windows on screen
  1590.          and let you select the current window. In addition, you can
  1591.          move the window up and down or left and right.
  1592.  
  1593.          7.1. One Window (Alt-1)
  1594.  
  1595.          The OneWindow command 'unsplits' the screen. If there are 2
  1596.          windows on screen, OneWindow will make the current window -
  1597.          the one the cursor is in - the only window. The screen will
  1598.          be repainted to show a full 21 lines of text. The line the
  1599.          cursor was on when the command was issued becomes the top
  1600.          line of the window.
  1601.  
  1602.          7.2. Two Windows (Alt-2)
  1603.  
  1604.          TwoWindows 'splits' the screen. If there is only one window,
  1605.          the screen will be split into two windows. Both windows will
  1606.          be mapped to the current buffer and will initially show the
  1607.          same 10 lines of that buffer. The cursor will move to the
  1608.          other window anticipating that you want to load in another
  1609.          file.
  1610.  
  1611.          When two windows are mapped to the same part of the same
  1612.          buffer, each must reflect the current state of the buffer.
  1613.          pEDIT will update both windows as necessary to keep the
  1614.          display correct.
  1615.  
  1616.          7.3. Other Window (Alt-O)
  1617.  
  1618.          If the screen is split, this command will move the cursor to
  1619.          the other window. The cursor will move to the row and column
  1620.          stored the last time the cursor was in the window.
  1621.  
  1622.          7.4. Prev Screen (PgUp)
  1623.  
  1624.          PrevScreen scrolls the screen up (towards the beginning of
  1625.          the buffer) by the number of rows currently on screen - 21 or
  1626.          10 depending on the window size. The current direction has no
  1627.          effect on this command.
  1628.  
  1629.          If the screen cannot scroll the full amount, the cursor will
  1630.          move up until it hits the first line of the buffer.
  1631.  
  1632.          7.5. Next Screen (PgDn)
  1633.  
  1634.          NextScreen scrolls the screen down by the number of rows
  1635.          currently on screen - 21 or 10 as above. Here 'down' means
  1636.  
  1637.  
  1638.                                      - 25 -
  1639.  
  1640.  
  1641.  
  1642.  
  1643.  
  1644.  
  1645.  
  1646.          towards the end of the buffer with the current direction
  1647.          having no effect.
  1648.  
  1649.          Again, if the screen cannot scroll the full amount the cursor
  1650.          will move until it hits the dummy line at the end of the
  1651.          buffer.
  1652.  
  1653.          7.6. Shift Left (Ctrl-Left)
  1654.  
  1655.          The Shift commands provide for horizontal scrolling - the
  1656.          ability to see text beyond column 80. ShiftLeft shifts the
  1657.          window to the left (toward the left margin) 20 columns. Many
  1658.          text editors only let you see 80 (maybe 132) columns; pEDIT
  1659.          lets you see any portion of any line.
  1660.  
  1661.          7.7. Shift Right (Ctrl-Right)
  1662.  
  1663.          ShiftRight scrolls the screen to the right 20 columns. How
  1664.          far the window can be shifted is limited only by pEDIT's
  1665.          maximum line length of 32767 characters.
  1666.  
  1667.  
  1668.  
  1669.  
  1670.  
  1671.  
  1672.  
  1673.  
  1674.  
  1675.  
  1676.  
  1677.  
  1678.  
  1679.  
  1680.  
  1681.  
  1682.  
  1683.  
  1684.  
  1685.  
  1686.  
  1687.  
  1688.  
  1689.  
  1690.  
  1691.  
  1692.  
  1693.  
  1694.  
  1695.  
  1696.  
  1697.  
  1698.  
  1699.                                      - 26 -
  1700.  
  1701.  
  1702.  
  1703.  
  1704.  
  1705.  
  1706.  
  1707.                          p E D I T   C O M M A N D S
  1708.  
  1709.                                 8. Key Macros
  1710.  
  1711.          pEDIT's key macro facility lets you automate repetitive
  1712.          tasks. With the following commands you can start a "learn"
  1713.          sequence and pEDIT will remember all keystrokes until you
  1714.          give the Remember command. Use the Execute command to play
  1715.          back the keystrokes.
  1716.  
  1717.          8.1. Learn (F07)
  1718.  
  1719.          The Learn command is used to start recording keystrokes. The
  1720.          recording will continue until the Remember command is given.
  1721.          pEDIT will store all typing keys, function keys and other
  1722.          special keys such as control keys.
  1723.  
  1724.          Anything that requires user input cannot be used with Learn.
  1725.          When the macro is executed, pEDIT will not know where to get
  1726.          its input from; it always assumes the keyboard. There are
  1727.          ways around this; for example, if you want to use Find in a
  1728.          macro, first do a Find and specify the search string. Then,
  1729.          simply use the FindNext key in the macro.
  1730.  
  1731.          8.2. Remember (Ctrl-R)
  1732.  
  1733.          Remember is used to end the keystroke recording started by
  1734.          Learn. pEDIT will ask for a key to bind to; press any of the
  1735.          definable keys described in the Appendix. You cannot bind to
  1736.          the Tab, Enter or Backspace or Abort (Ctrl-C) keys. Only one
  1737.          macro can be defined at a time.
  1738.  
  1739.          A macro must not be bound to a key that is contained within
  1740.          the macro. If this happens, the macro routine will go into a
  1741.          loop and probably crash the system. It is recommended that
  1742.          you reserve one key for macros; F12 on the enhanced keyboard
  1743.          has been left open for this purpose.
  1744.  
  1745.          8.3. Execute
  1746.  
  1747.          This command executes the key macro defined by Learn and
  1748.          Remember. Whenever the key you selected is pressed, the
  1749.          keystrokes are 'replayed' as if you entered them.
  1750.  
  1751.  
  1752.  
  1753.  
  1754.  
  1755.  
  1756.  
  1757.  
  1758.  
  1759.  
  1760.                                      - 27 -
  1761.  
  1762.  
  1763.  
  1764.  
  1765.  
  1766.  
  1767.  
  1768.                          p E D I T   C O M M A N D S
  1769.  
  1770.                                9. Cut and Paste
  1771.  
  1772.          These commands are used for electronic "cut" and "paste".
  1773.          RemoveText deletes a portion of text which is saved in a
  1774.          paste buffer. Conversely, InsertHere copies from the paste
  1775.          buffer into a text buffer. pEDIT also has a "store" function
  1776.          which copies text to the paste buffer without removing it
  1777.          from the text.
  1778.  
  1779.          9.1. Select Text (Alt-S)
  1780.  
  1781.          SelectText is a toggle that turns the select state on/off. If
  1782.          select is off, it will be turned on and vice versa. When it
  1783.          is active, selected text is highlighted in reverse video as
  1784.          the cursor is moved. Select is automatically turned off after
  1785.          any RemoveText or StoreText command. To cancel the selection,
  1786.          simply issue the command again.
  1787.  
  1788.          9.2. Remove Text (Del)
  1789.  
  1790.          This command removes the selected text from the buffer and
  1791.          stores it in the paste buffer. The paste buffer is built
  1792.          every time RemoveText is invoked so only the most recently
  1793.          deleted text is available. The screen is updated as necessary
  1794.          to show the state of the buffer after the removal.
  1795.  
  1796.          9.3. Store Text (F11)
  1797.  
  1798.          StoreText is similar to RemoveText except that the text is
  1799.          not removed from the buffer. The paste buffer is rebuilt to
  1800.          contain the selected text. Use this command whenever you want
  1801.          to make a copy of some text without removing it.
  1802.  
  1803.          9.4. Insert Here (Ins)
  1804.  
  1805.          This function inserts text from the paste buffer into your
  1806.          text starting at the current cursor position. Again, the
  1807.          screen is updated to show the new text. InsertHere can be
  1808.          invoked more than once to make multiple copies of the stored
  1809.          text.
  1810.  
  1811.  
  1812.  
  1813.  
  1814.  
  1815.  
  1816.  
  1817.  
  1818.  
  1819.  
  1820.  
  1821.                                      - 28 -
  1822.  
  1823.  
  1824.  
  1825.  
  1826.  
  1827.  
  1828.  
  1829.                          p E D I T   C O M M A N D S
  1830.  
  1831.                               10. Miscellaneous
  1832.  
  1833.          The following are commands that don't fall into any other
  1834.          general category.
  1835.  
  1836.          10.1. Recall (Ctrl-B)
  1837.  
  1838.          The Recall command is used to recall the last command given
  1839.          via DoCommand. The end result is the same as pressing the
  1840.          DoCommand key followed by the up arrow. However, there is one
  1841.          difference; the previous command is copied to the current
  1842.          command line. The command can of course be edited.
  1843.  
  1844.          10.2. Do Command (Esc)
  1845.  
  1846.          DoCommand is used to directly issue commands to pEDIT. The
  1847.          editor will respond with the 'Command: ' prompt; at this
  1848.          point you can enter any valid pEDIT command. Note that
  1849.          commands must be entered in full with spaces in between
  1850.          words. No pEDIT command contains more than 2 words.
  1851.  
  1852.          The Command line is really a one-line window into the COMMAND
  1853.          buffer. All defined keys can be used on the command line for
  1854.          editing the current line or recalling previous commands. Use
  1855.          MoveUp and MoveDown to scroll up and down through the stored
  1856.          commands.
  1857.  
  1858.          It is very important that a DoCommand key be defined! If it
  1859.          is not, you will not be able to issue any commands to pEDIT.
  1860.  
  1861.          10.3. Refresh Screen (Ctrl-W)
  1862.  
  1863.          This command is used to clear and repaint the screen. Use
  1864.          RefreshScreen if, for any reason, the screen should be over-
  1865.          written or otherwise obliterated. Everything - including
  1866.          reverse video - will be redrawn.
  1867.  
  1868.          10.4. Define Key (Alt-K)
  1869.  
  1870.          This function is used to dynamically define a key during an
  1871.          editing session. pEDIT will ask for a procedure name and a
  1872.          key press. The procedure name is any valid pEDIT command
  1873.          entered in full (no abbreviations) with a space in between
  1874.          words. The procedure can be bound to any definable key.
  1875.  
  1876.          Generally it is best to put key bindings in the init file so
  1877.          they are automatically defined when the editor is invoked.
  1878.  
  1879.          10.5. Show Key
  1880.  
  1881.  
  1882.                                      - 29 -
  1883.  
  1884.  
  1885.  
  1886.  
  1887.  
  1888.  
  1889.  
  1890.          ShowKey is used to show what procedure is bound to a key.
  1891.          pEDIT will prompt for a key press and display the name of the
  1892.          procedure, if any, bound to that key.
  1893.  
  1894.          10.6. List Keys
  1895.  
  1896.          ListKeys lists all definable keys and the procedures bound to
  1897.          them. pEDIT will pause in between screens; press Enter to
  1898.          continue to the next screen.
  1899.  
  1900.          10.7. Spawn
  1901.  
  1902.          This function spawns or shells you to DOS. A second copy of
  1903.          COMMAND.COM is loaded into memory to process commands. You
  1904.          may then enter DOS commands and do anything you can do at the
  1905.          operating system level. Type 'EXIT' to return to the editor
  1906.          exactly as you left it.
  1907.  
  1908.          If you have a floppy-only system, COMMAND.COM must be avail-
  1909.          able or the spawn will fail. Also, some versions of DOS
  1910.          prior to 3.x have a problem with "SHELL" and may not work
  1911.          properly.
  1912.          
  1913.          pEDIT tries to keep 50-80k of memory free for the Spawn and
  1914.          Dos commands; this will not leave sufficient memory for any-
  1915.          thing but DOS resident commands (DIR, TYPE, etc.) and small
  1916.          programs. If you need more memory, use the eXtended Spawn
  1917.          function (XSpawn).
  1918.          
  1919.          10.8. XSpawn
  1920.  
  1921.          This function serves the same purpose as Spawn but with one
  1922.          important extension. All text memory is swapped out to disk,
  1923.          leaving much more memory available to DOS. On a machine with
  1924.          640k, you will have about 350k available - more than enough
  1925.          to compile and run other programs - even another copy of
  1926.          pEDIT.
  1927.          
  1928.          The restrictions noted for Spawn apply here. In addition,
  1929.          you must be careful not to delete pEDIT's temporary swap
  1930.          files. See the section titled 'Extended DOS Shell' for more
  1931.          information.
  1932.          
  1933.          10.9. Repeat (F08)
  1934.  
  1935.          Repeat lets you repeat any key press up to 32767 times. Only
  1936.          the next key press - typing, function, Ctrl, Alt - is
  1937.          repeated. Again, you cannot repeat functions that ask for
  1938.          keyboard input.
  1939.  
  1940.          The repeat count is shown by 'Repeat: ' on the message line.
  1941.  
  1942.          
  1943.                                       - 30 -
  1944.  
  1945.  
  1946.  
  1947.  
  1948.  
  1949.  
  1950.  
  1951.          Use the BackSpace key to correct the count; set it to zero
  1952.          if you wish to cancel.
  1953.  
  1954.          You can end a repeat loop by pressing the Abort (Ctrl-C) key.
  1955.  
  1956.          10.10. Set Autosave
  1957.  
  1958.          pEDIT has an 'autosave' function that automatically saves
  1959.          your work to disk. If autosave is on, pEDIT will periodically
  1960.          do a WriteFile if changes have been made. The 'Working . . .'
  1961.          message will appear and the disk access light will come on.
  1962.          You will be told how many lines were written.
  1963.  
  1964.          10.11. Set Color
  1965.  
  1966.          SetColor lets you choose foreground and background colors on
  1967.          a color (CGA/EGA/VGA) monitor. For monochrome, the only legal
  1968.          combinations are "SET COLOR blk wht" and "SET COLOR wht blk".
  1969.          Here 'blk' and 'wht' refer to the mono colors whatever they
  1970.          may be - black and white, green and black, etc.
  1971.  
  1972.          If you issue the command as "SET COLOR" pEDIT will prompt for
  1973.          the foreground and background colors.
  1974.  
  1975.          See the Appendix for valid color code names.
  1976.  
  1977.          10.12. Set Lines
  1978.  
  1979.          SetLines lets you switch between 25 and 43 line mode on an
  1980.          EGA or VGA monitor. These advanced monitors can show more
  1981.          than the normal 25 lines of text. Note that screen writing
  1982.          and scrolling is generally much slower in 43-line mode. The
  1983.          SetLines command cannot be given when the screen is split.
  1984.          The VGA 50 line mode is not supported.
  1985.  
  1986.          10.13. Set Margins
  1987.  
  1988.          This command lets you set left and right text margins. The
  1989.          default margins are 1 and 80. The left margin must be greater
  1990.          than zero and the right margin has to be greater than the
  1991.          left. The format of the command is "SET MARGINS left right";
  1992.          if "SET MARGINS" alone is used, pEDIT will prompt for the
  1993.          values.
  1994.  
  1995.          Paragraphs are not automatically reformatted when margins are
  1996.          changed. Use FillParagraph for this.
  1997.  
  1998.          10.14. Dos
  1999.  
  2000.          The Dos function spawns or "shells" a command to DOS for
  2001.          execution. The output from the command will be placed in the
  2002.  
  2003.  
  2004.                                      - 31 -
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010.  
  2011.  
  2012.          DOS buffer. If only one window is on-screen, pEDIT will split
  2013.          the screen and map the DOS buffer to the other window.
  2014.  
  2015.          The program must load a second copy of COMMAND.COM into
  2016.          memory to handle the request. See Spawn for a discussion of
  2017.          limitations and cautions.
  2018.          
  2019.          10.15. XDos
  2020.          
  2021.          The eXtended DOS function (XDos) uses an intelligent DOS
  2022.          shell to free up additional memory for the execution of DOS
  2023.          commands. See the description of XShell and the section
  2024.          titled 'Extended DOS Shell'.
  2025.          
  2026.          A common use of XDos would be to compile and link a program
  2027.          from within the editor. For example, the command 'XDOS BC
  2028.          TEST /O ;' would be used to compile a QuickBASIC program.
  2029.          The compiler output will of course be directed into the DOS
  2030.          buffer.
  2031.          
  2032.          10.16. Help (Alt-H)
  2033.  
  2034.          Help clears the screen and displays the information contained
  2035.          in the help file you specify. pEDIT looks for an environment
  2036.          variable called 'PEDITHLP' or the file named PEDIT.HLP in the
  2037.          current directory.
  2038.  
  2039.          A common use of Help is to display a list of defined keys
  2040.          customized for your keyboard.
  2041.  
  2042.          10.17. Quit (Alt-Q)
  2043.  
  2044.          Use the Quit command to abort an editing session. Abort means
  2045.          abort - any changes you have made will be lost. If any User
  2046.          buffers have been modified, pEDIT gives you the option of not
  2047.          quitting by displaying "Buffer(s) modified - quit (Y/N)? ".
  2048.          Enter Y to abort, N to cancel the abort and resume editing.
  2049.  
  2050.          10.18. Exit (Ctrl-Z)
  2051.  
  2052.          The Exit command terminates the editing session and returns
  2053.          you to DOS. The current buffer is automatically written to
  2054.          disk if it has been modified. If any other user buffers have
  2055.          been altered, pEDIT asks you one at a time if you want to
  2056.          write them. Answer Y to save the buffer, N to skip it.
  2057.  
  2058.  
  2059.  
  2060.  
  2061.  
  2062.  
  2063.  
  2064.  
  2065.                                      - 32 -
  2066.  
  2067.  
  2068.  
  2069.  
  2070.  
  2071.  
  2072.  
  2073.                        E X T E N D E D   D O S   S H E L L
  2074.          
  2075.  
  2076.          Previous versions of pEDIT had only 50-80k of free memory
  2077.          when shelling to DOS - not enough to compile or run other
  2078.          large programs. Version 1.75 introduces an intelligent DOS
  2079.          shell which can free up as much as 350k on a 640k machine.
  2080.          This means there is now enough memory to complile/link from
  2081.          within pEDIT and run large programs when shelled to DOS.
  2082.          
  2083.          The eXtended functions XSpawn and XDos use this new method.
  2084.          pEDIT does this by temporarily 'swapping' all text memory
  2085.          out to disk and releasing that memory before calling DOS.
  2086.          When the user types EXIT to return to the parent program,
  2087.          the text storage is reallocated and reloaded from these swap
  2088.          files.
  2089.          
  2090.          Note that pEDIT checks to make sure there is sufficient disk
  2091.          space to hold the swap files. If not, the function will be
  2092.          cancelled. It is very important that you not delete the swap
  2093.          files; if you do, the program will abort. The files will be
  2094.          stored in the current directory with names of PEDMEM?.TMP
  2095.          where ? = 0-4. pEDIT automatically deletes these temporary
  2096.          files after they have been reloaded into memory.
  2097.          
  2098.          Obviously it takes time to do this swapping; use the normal
  2099.          Dos and Spawn functions whenever you don't need the extra
  2100.          memory.
  2101.          
  2102.  
  2103.  
  2104.  
  2105.  
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.  
  2114.  
  2115.  
  2116.  
  2117.  
  2118.  
  2119.  
  2120.  
  2121.  
  2122.  
  2123.  
  2124.  
  2125.  
  2126.                                       - 33 -
  2127.  
  2128.  
  2129.  
  2130.  
  2131.  
  2132.  
  2133.  
  2134.                      C O M P I L I N G   F R O M   p E D I T
  2135.  
  2136.  
  2137.          The previous section on the eXtended Dos Shell explains how
  2138.          pEDIT uses an intelligent shell mechanism to free up enough
  2139.          memory for compiling and linking. Programmers can now do the
  2140.          full development cycle of Edit-Compile-Test without leaving
  2141.          the editor. There are 2 ways to compile and link from within
  2142.          pEDIT. Both require that you first write the current buffer
  2143.          to disk - the compiler will of course get its input from a
  2144.          source file on disk.
  2145.          
  2146.          In the first method, you can simply use XDos to pass the
  2147.          specified compile and link commands to DOS for execution.
  2148.          The output from each step will be shown in the DOS window.
  2149.          If there are compiler errors, the user can fix the source,
  2150.          re-save to disk and re-compile. This method is somewhat
  2151.          cumbersome in that you must (at least once) type in lengthy
  2152.          commands.
  2153.          
  2154.          The second method requires less typing. You will have to
  2155.          create a batch file to do the compile and link - something
  2156.          which most programmers will already have. There is one extra
  2157.          step; output from the DOS commands must be redirected to the
  2158.          temporary file that pEDIT uses for shelling. pEDIT loads the
  2159.          DOS buffer with the contents of this file after the spawned
  2160.          job completes.
  2161.          
  2162.          Following is a sample BAT file used for QuickBASIC 4.5. Note
  2163.          the use of the append symbol '>>'. The file appended to must
  2164.          be named PEDIT.TMP:
  2165.          
  2166.              REM QBCOMP.BAT -- QuickBASIC 4.5 compile/link
  2167.              ECHO OFF
  2168.              COPY %1.BAS %1.BSA >>pedit.tmp
  2169.              IF EXIST %1.EXE DEL %1.EXE
  2170.              BC %1.BAS /AH /S /O ; >>pedit.tmp
  2171.              LINK /EX /NOE %1+QB.LIB, , BCOM45.LIB ; >>pedit.tmp
  2172.              DEL %1.OBJ
  2173.              DEL %1.MAP
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.  
  2185.  
  2186.  
  2187.                                       - 34 -
  2188.  
  2189.  
  2190.  
  2191.  
  2192.  
  2193.  
  2194.  
  2195.                            E R R O R   H A N D L I N G
  2196.  
  2197.          pEDIT gives you a chance to recover from (1) insufficient
  2198.          internal storage space and (2) running out of disk space when
  2199.          saving a file. In either case an "ERROR" window will appear
  2200.          and notify you of the problem.
  2201.  
  2202.  
  2203.                        1. Insufficient Internal Storage
  2204.  
  2205.          When pEDIT is first started it checks to see how much free
  2206.          memory is available; from this it computes the maximum number
  2207.          of lines and characters of text it can handle. Based on these
  2208.          values, it then dynamically allocates memory to hold the text
  2209.          and line structures.
  2210.  
  2211.          If 99% of either of these values is reached, pEDIT informs
  2212.          you it can't allocate a line and advises you to "Save your
  2213.          work and exit". You can continue to work; however, you will
  2214.          get the warning every time more text is added. If you ignore
  2215.          the warnings and exceed the allocated space, the program will
  2216.          abort.
  2217.  
  2218.          There is no recovery from this other than to exit (be sure to
  2219.          save your files!) and start over. pEDIT cannot free up memory
  2220.          once it has been allocated.
  2221.  
  2222.  
  2223.                              2. Out of Disk Space
  2224.  
  2225.          When saving a file that currently exists on disk, DOS first
  2226.          truncates the file to length zero and then starts to write
  2227.          the new sectors. pEDIT does not attempt to verify there is
  2228.          sufficient disk space to hold a file being saved. However, it
  2229.          can detect "disk full" as it writes a block of text. If this
  2230.          does happen, you will be advised to "Increase available space
  2231.          on current drive or change drive via WRITE FILE newfile".
  2232.  
  2233.          The current file is still in memory and has not been lost;
  2234.          however, any file that was on disk is gone - it is imperative
  2235.          that you save the stored text! If possible, Spawn out to DOS
  2236.          and delete files to free up additional space. Alternately,
  2237.          you can switch to a different diskette that has more room. If
  2238.          this isn't possible, use "WRITE FILE filespec" where filespec
  2239.          specifies another drive. For example, if the current file is
  2240.          A:MYFILE.TXT, save the file as B:MYFILE.TXT.
  2241.  
  2242.  
  2243.  
  2244.  
  2245.  
  2246.  
  2247.  
  2248.                                       - 35 -
  2249.  
  2250.  
  2251.  
  2252.  
  2253.  
  2254.  
  2255.  
  2256.                          C O P Y R I G H T   N O T I C E
  2257.                              A N D   W A R R A N T Y
  2258.  
  2259.  
  2260.          This document, other accompanying written and disk-based
  2261.          specifications, and all referenced and related program
  2262.          files are copyrighted by T. G. Muench.
  2263.  
  2264.          IBM and PC-DOS are registered trademarks of International
  2265.          Business Machines Corporation. MS-DOS is a trademark of
  2266.          Microsoft Corporation.
  2267.          
  2268.  
  2269.                                   1. Disclaimer
  2270.  
  2271.          pEDIT is supplied as is. The author disclaims all war-
  2272.          ranties, expressed or implied, including, without
  2273.          limitation, the warranties of merchantability and of fitness
  2274.          for any purpose. The author assumes no liability for
  2275.          damages, direct or consequential, which may result from the
  2276.          use of pEDIT.
  2277.  
  2278.  
  2279.                                  2. Registration
  2280.  
  2281.          pEDIT is a "shareware program" and is provided at no charge
  2282.          to the user for evaluation. Feel free to share it with your
  2283.          friends, but please do not give it away altered or as part
  2284.          of another system. The essence of "user-supported" software
  2285.          is to provide personal computer users with quality software
  2286.          without high prices, and yet to provide incentive for
  2287.          programmers to continue to develop new products. If you find
  2288.          this program useful and find that you are using pEDIT and
  2289.          continue to use pEDIT after a reasonable trial period, you
  2290.          must make a registration payment of $25 to T. G. Muench.
  2291.  
  2292.          Commercial users of pEDIT must register and pay for their
  2293.          copies of pEDIT within 30 days of first use or their license
  2294.          is withdrawn. Site-License arrangements may be made by
  2295.          contacting T. G. Muench.
  2296.  
  2297.          Anyone distributing pEDIT for any kind of remuneration must
  2298.          first contact T. G. Muench at the address below for
  2299.          authorization. This authorization will be automatically
  2300.          granted to distributors recognized by the (ASP) as adhering
  2301.          to its guidelines for shareware distributors, and such
  2302.          distributors may begin offering pEDIT immediately. However,
  2303.          T. G. Muench must still be advised so that the distributor
  2304.          can be kept up-to-date with the latest version of pEDIT.
  2305.  
  2306.  
  2307.  
  2308.  
  2309.                                      - 36 -
  2310.  
  2311.  
  2312.  
  2313.  
  2314.  
  2315.  
  2316.  
  2317.          You are encouraged to pass a copy of pEDIT along to your
  2318.          friends for evaluation. Please encourage them to register
  2319.          their copy if they find that they can use it. All registered
  2320.          users will receive a copy of the latest version of the pEDIT
  2321.          system plus full printed documentation. Note the registered
  2322.          version does not have the opening shareware screen.
  2323.  
  2324.          Your comments and suggestions are welcomed by writing to
  2325.          the author at the address given below. ONLY written
  2326.          communications will be accepted. Be sure and reference the
  2327.          version number of your copy of pEDIT (use the SHOW BUFFER
  2328.          command).
  2329.  
  2330.          To register, complete the registration form included in the
  2331.          disk file REGISTER.DOC. Then, print it and mail it with $25
  2332.          to:
  2333.  
  2334.                                   T. G. Muench
  2335.                                  P.O. Box 11536
  2336.                              Prescott, AZ 86304-1536
  2337.  
  2338.  
  2339.  
  2340.  
  2341.  
  2342.  
  2343.  
  2344.  
  2345.  
  2346.  
  2347.  
  2348.  
  2349.  
  2350.  
  2351.  
  2352.  
  2353.  
  2354.  
  2355.  
  2356.  
  2357.  
  2358.  
  2359.  
  2360.  
  2361.  
  2362.  
  2363.  
  2364.  
  2365.  
  2366.  
  2367.  
  2368.  
  2369.  
  2370.                                      - 37 -
  2371.  
  2372.  
  2373.  
  2374.  
  2375.  
  2376.  
  2377.  
  2378.                            A S S O C I A T I O N   O F
  2379.                   S H A R E W A R E   P R O F E S S I O N A L S
  2380.  
  2381.  
  2382.          This program is produced by a member of the Association of
  2383.          Shareware Professionals (ASP). ASP has established stringent
  2384.          standards for its members. The primary goals of the ASP are:
  2385.  
  2386.             -  To inform users about shareware programs and about
  2387.                shareware as a method of distributing and marketing
  2388.                software;
  2389.  
  2390.             -  To encourage broader distribution of shareware through
  2391.                user groups and disk dealers who agree to identify and
  2392.                explain the nature of shareware;
  2393.  
  2394.             -  To assist members in marketing their software;
  2395.  
  2396.             -  To provide a forum through which ASP members may
  2397.                communicate, share ideas, and learn from each other;
  2398.  
  2399.             -  To foster a high degree of professionalism among
  2400.                shareware authors by setting programming, marketing,
  2401.                and support standards for ASP members to follow.
  2402.  
  2403.          ASP wants to make sure that the shareware principle works
  2404.          for you. If you are unable to resolve a shareware-related
  2405.          problem with an ASP member by contacting the member
  2406.          directly, ASP may be able to help. The ASP Ombudsman can
  2407.          help you resolve a dispute or problem with an ASP member,
  2408.          but does not provide technical support for members'
  2409.          products. Please write to the ASP Ombudsman at P.O. Box
  2410.          5786, Bellevue, WA 98006 or send a Compuserve message via
  2411.          Easyplex to: ASP Ombudsman 70007,3536.
  2412.  
  2413.  
  2414.  
  2415.  
  2416.  
  2417.  
  2418.  
  2419.  
  2420.  
  2421.  
  2422.  
  2423.  
  2424.  
  2425.  
  2426.  
  2427.  
  2428.  
  2429.  
  2430.  
  2431.                                      - 38 -
  2432.  
  2433.  
  2434.  
  2435.  
  2436.  
  2437.                              A P P E N D I C E S
  2438.  
  2439.                           1. List of pEDIT Commands
  2440.  
  2441.             MOVE TOP
  2442.             MOVE BOTTOM
  2443.             MOVE HOME
  2444.             MOVE END
  2445.             MOVE UP
  2446.             MOVE DOWN
  2447.             MOVE LEFT
  2448.             MOVE RIGHT
  2449.             MOVE WORD
  2450.  
  2451.             INSERT CHAR
  2452.             RESTORE TEXT
  2453.             OPEN LINE
  2454.             FILL PARAGRAPH
  2455.             INDENT
  2456.             AUTO INDENT
  2457.             CENTER LINE
  2458.             CAPITAL WORD
  2459.             LOWER WORD
  2460.             UPPER WORD
  2461.             QUOTE CHAR
  2462.             TRANS CHAR
  2463.  
  2464.             ERASE CHAR
  2465.             ERASE PREV
  2466.             ERASE WORD
  2467.             ERASE LINE
  2468.  
  2469.             FIND
  2470.             FIND NEXT
  2471.             REPLACE
  2472.  
  2473.             GET FILE
  2474.             INCLUDE FILE
  2475.             WRITE FILE
  2476.  
  2477.             SHOW BUFFER
  2478.             LIST BUFFERS
  2479.             BUFFER
  2480.             CHANGE MODE
  2481.             CHANGE DIR
  2482.             MARK
  2483.             GOTO MARK
  2484.             LINE
  2485.  
  2486.             ONE WINDOW
  2487.             TWO WINDOWS
  2488.  
  2489.  
  2490.  
  2491.  
  2492.                                      - 39 -
  2493.  
  2494.  
  2495.  
  2496.  
  2497.  
  2498.  
  2499.  
  2500.             OTHER WINDOW
  2501.             PREV SCREEN
  2502.             NEXT SCREEN
  2503.             SHIFT LEFT
  2504.             SHIFT RIGHT
  2505.  
  2506.             LEARN
  2507.             REMEMBER
  2508.             EXECUTE
  2509.  
  2510.             SELECT TEXT
  2511.             REMOVE TEXT
  2512.             STORE TEXT
  2513.             INSERT HERE
  2514.             RECALL
  2515.             DO COMMAND
  2516.             REFRESH SCREEN
  2517.             DEFINE KEY
  2518.             SHOW KEY
  2519.             LIST KEYS
  2520.             SPAWN
  2521.             XSPAWN
  2522.             REPEAT
  2523.             SET AUTOSAVE
  2524.             SET COLOR
  2525.             SET LINES
  2526.             SET MARGINS
  2527.             DOS
  2528.             XDOS
  2529.             HELP
  2530.             QUIT
  2531.             EXIT
  2532.  
  2533.  
  2534.  
  2535.  
  2536.  
  2537.  
  2538.  
  2539.  
  2540.  
  2541.  
  2542.  
  2543.  
  2544.  
  2545.  
  2546.  
  2547.  
  2548.  
  2549.  
  2550.  
  2551.  
  2552.  
  2553.                                      - 40 -
  2554.  
  2555.  
  2556.  
  2557.  
  2558.  
  2559.  
  2560.  
  2561.                              A P P E N D I C E S
  2562.  
  2563.                            2. Default Key Bindings
  2564.  
  2565.  
  2566.          Key Name                Procedure
  2567.          --------                ----------------------
  2568.  
  2569.          Esc                     DO COMMAND
  2570.          BackSpace               ERASE PREV(*)
  2571.          Tab                     INSERT CHAR(*)
  2572.          Enter                   INSERT CHAR(*)
  2573.  
  2574.          F01                     FIND
  2575.          F02                     MOVE WORD
  2576.          F03                     FIND NEXT
  2577.          F04                     ERASE WORD
  2578.          F05                     CHANGE MODE
  2579.          F06                     CHANGE DIR
  2580.          F07                     LEARN
  2581.          F08                     REPEAT
  2582.          F09                     RESTORE TEXT
  2583.          F10                     WRITE FILE
  2584.          F11                     STORE TEXT
  2585.          F12
  2586.  
  2587.          Home                    MOVE HOME
  2588.          End                     MOVE END
  2589.          Pgup                    PREV SCREEN
  2590.          Pgdn                    NEXT SCREEN
  2591.          Up                      MOVE UP
  2592.          Down                    MOVE DOWN
  2593.          Left                    MOVE LEFT
  2594.          Right                   MOVE RIGHT
  2595.          Ins                     INSERT HERE
  2596.          Del                     REMOVE TEXT
  2597.          Ctrl-Home               MOVE TOP
  2598.          Ctrl-End                MOVE END
  2599.          Ctrl-Left               SHIFT LEFT
  2600.          Ctrl-Right              SHIFT RIGHT
  2601.          Ctrl-Pgup
  2602.          Ctrl-Pgdn
  2603.          Ctrl-Enter              AUTO INDENT
  2604.  
  2605.          Ctrl-A
  2606.          Ctrl-B                  RECALL
  2607.          Ctrl-C                  ABORT(*)
  2608.          Ctrl-D                  ERASE CHAR
  2609.          Ctrl-E
  2610.          Ctrl-F
  2611.          Ctrl-G
  2612.  
  2613.  
  2614.                                      - 41 -
  2615.  
  2616.  
  2617.  
  2618.  
  2619.  
  2620.  
  2621.  
  2622.          Ctrl-H                  BackSpace
  2623.          Ctrl-I                  Tab
  2624.          Ctrl-J                  AUTO INDENT
  2625.          Ctrl-K                  ERASE LINE
  2626.          Ctrl-L
  2627.          Ctrl-M                  Enter
  2628.          Ctrl-N
  2629.          Ctrl-O                  OPEN LINE
  2630.          Ctrl-P
  2631.          Ctrl-Q
  2632.          Ctrl-R                  REMEMBER
  2633.          Ctrl-S
  2634.          Ctrl-T
  2635.          Ctrl-U
  2636.          Ctrl-V                  QUOTE CHAR
  2637.          Ctrl-W                  REFRESH SCREEN
  2638.          Ctrl-X
  2639.          Ctrl-Y
  2640.          Ctrl-Z                  EXIT
  2641.  
  2642.          Alt-A
  2643.          Alt-B                   BUFFER
  2644.          Alt-C                   CAPITAL WORD
  2645.          Alt-D
  2646.          Alt-E
  2647.          Alt-F                   FILL PARAGRAPH
  2648.          Alt-G                   GET FILE
  2649.          Alt-H                   HELP
  2650.          Alt-I                   INCLUDE FILE
  2651.          Alt-J
  2652.          Alt-K
  2653.          Alt-L                   LOWER WORD
  2654.          Alt-M                   SET MARGINS
  2655.          Alt-N
  2656.          Alt-O
  2657.          Alt-P
  2658.          Alt-Q                   QUIT
  2659.          Alt-R                   REPLACE
  2660.          Alt-S                   SELECT TEXT
  2661.          Alt-T                   TRANS CHAR
  2662.          Alt-U                   UPPER WORD
  2663.          Alt-V
  2664.          Alt-W
  2665.          Alt-X
  2666.          Alt-Y
  2667.          Alt-Z
  2668.          Alt-1                   ONE WINDOW
  2669.          Alt-2                   TWO WINDOWS
  2670.  
  2671.  
  2672.                       (*) These keys cannot be redefined
  2673.  
  2674.  
  2675.                                      - 42 -
  2676.  
  2677.  
  2678.  
  2679.  
  2680.  
  2681.  
  2682.  
  2683.                              A P P E N D I C E S
  2684.  
  2685.                         3. Default Initialization File
  2686.  
  2687.          pEDIT comes with a sample initialization file, PEDIT.INI.
  2688.          This file must be in the current directory or be defined to
  2689.          the DOS environment as PEDITINI.
  2690.  
  2691.          A pEDIT initialization file is a simple ASCII text file and
  2692.          can be edited. The editor ignores blank lines and treats
  2693.          anything after an exclamation point as a comment. Only two
  2694.          commands are recognized: DEFINE_KEY() and SET(). Note the
  2695.          underscore in DEFINE_KEY and the use of parentheses. The init
  2696.          file commands can be uppercase, lowercase or mixed.
  2697.  
  2698.          DEFINE_KEY defines a key to pEDIT when the editor is invoked.
  2699.          Obviously, no one would want to have to define every key
  2700.          every time they wanted to edit something. For example, the
  2701.          line DEFINE_KEY(Alt-G, Get_File) would bind the key Alt-G to
  2702.          the procedure GetFile. The underscore is required for any
  2703.          pEDIT command that is made up of 2 words.
  2704.  
  2705.          SET is used to define the editing environment. If you wanted
  2706.          pEDIT to always come up in color using blue on a white back-
  2707.          ground, your would put SET (COLOR, BLU, WHT) in the init
  2708.          file. The above example would be the same as entering the
  2709.          command "SET COLOR BLU WHT" from within pEDIT.
  2710.  
  2711.          You don't have to use the initialization file supplied with
  2712.          the editor. You can set up any keyboard mapping you want -
  2713.          make pEDIT work like WordStar, Emacs, whatever.
  2714.  
  2715.  
  2716.                             4. Default Help Files
  2717.  
  2718.          The editor requires a file named PEDIT.HLP be available to
  2719.          use the Help command. When Help is invoked, pEDIT displays
  2720.          the contents of PEDIT.HLP in a HELP screen. Again, this file
  2721.          must be in the current directory or be defined to the DOS
  2722.          environment as PEDITHLP using the SET command.
  2723.  
  2724.          pEDIT comes with two sample help files. PED101.HLP is for the
  2725.          101-key (also called the extended or enhanced) keyboard and
  2726.          PED84.HLP is for the 84-key or standard keyboard. The 84-key
  2727.          model was the original IBM AT keyboard and does not have
  2728.          additional keys between the typing keys and numeric keypad.
  2729.  
  2730.          These are text files and can be edited as necessary to fit
  2731.          your configuration. If the provided files don't match what
  2732.          you have, copy the one that is closest and edit it as needed.
  2733.  
  2734.  
  2735.  
  2736.                                      - 43 -
  2737.  
  2738.  
  2739.  
  2740.  
  2741.  
  2742.  
  2743.  
  2744.                              A P P E N D I C E S
  2745.  
  2746.                           5. DOS File Specification
  2747.  
  2748.          The following is a brief discussion of the PC/MS-DOS file
  2749.          specification. For more detail, refer to the DOS manuals.
  2750.  
  2751.          A full DOS file specification is of the format:
  2752.  
  2753.              D:\PATH\FILENAME.TYP
  2754.  
  2755.                  D: = drive (A,B,C)
  2756.               \PATH = path (directory, subdirectory)
  2757.            FILENAME = file name (max. 8 characters)
  2758.                 TYP = file type (max. 3 characters)
  2759.  
  2760.          DOS uses a hierarchial directory structure made up of a root
  2761.          directory and underlying sub-directories. This is sometimes
  2762.          called an inverted tree structure:
  2763.  
  2764.                                    \ (root)
  2765.                                       |
  2766.                           -------------------------
  2767.                          |            |            |
  2768.                        \DOS                     \TOOLS
  2769.                                                    |
  2770.                                              -------------
  2771.                                             |             |
  2772.                                           \BASIC         \C
  2773.  
  2774.  
  2775.          Subdirectory names are separated by the backslash character
  2776.          (\). The root on drive C: is denoted as C:\ while the others
  2777.          above would be
  2778.  
  2779.              C:\DOS                  C:\TOOLS
  2780.                                          C:\TOOLS\BASIC
  2781.                                          C:\TOOLS\C
  2782.  
  2783.          The full file name need not be specified. DOS will 'fill in'
  2784.          any missing parts with your current, default directory. For
  2785.          example, if you are in the directory C:\TOOLS and give the
  2786.          name MYBATCH.BAT, it is the same as C:\TOOLS\MYBATCH.BAT.
  2787.  
  2788.  
  2789.  
  2790.  
  2791.  
  2792.  
  2793.  
  2794.  
  2795.  
  2796.  
  2797.                                      - 44 -
  2798.  
  2799.  
  2800.  
  2801.  
  2802.  
  2803.  
  2804.  
  2805.                              A P P E N D I C E S
  2806.  
  2807.                                 6. Color Codes
  2808.  
  2809.  
  2810.          BLK                   Black
  2811.          BLU                   Blue
  2812.          GRN                   Green
  2813.          CYN                   Cyan
  2814.          RED                   Red
  2815.          MAG                   Magenta
  2816.          BRN                   Brown
  2817.          WHT                   White
  2818.          GRY                   Grey
  2819.          LBL                   Light Blue
  2820.          LGR                   Light Green
  2821.          LCY                   Light Cyan
  2822.          LRD                   Light Red (Pink)
  2823.          LMG                   Light Magenta
  2824.          YEL                   Yellow
  2825.          BWH                   Bright White
  2826.  
  2827.  
  2828.                 The light colors are sometimes called 'bright'
  2829.  
  2830.  
  2831.  
  2832.  
  2833.  
  2834.  
  2835.  
  2836.  
  2837.  
  2838.  
  2839.  
  2840.  
  2841.  
  2842.  
  2843.  
  2844.  
  2845.  
  2846.  
  2847.  
  2848.  
  2849.  
  2850.  
  2851.  
  2852.  
  2853.  
  2854.  
  2855.  
  2856.  
  2857.  
  2858.                                      - 45 -