;

                    ZDE (Command Descriptions #2)

                      A-   Pagination          
                      B-   Place Markers       
                      C-   Printer Codes       
                      D-   Printing             
                      E-   Ruler Line          
                      F-   Tabs                
                      G-   Undelete             
                      H-   Upper/Lower Case    
                      I-   Window & Screen     
                      J-   Wordwrap/Reformat   
:a


PAGINATION:  ^OP

  ^OP command sets the page length.   Enter  a value from 0 to 255,
      or just hit CR to restore the default value.  [Normally 54.]

      When the value is nonzero, it determines the  page  and  line
      shown  in  the  document  header ("Pg xx Ln xx"),  and  page-
      oriented  Print  functions  (formfeeds,  headers,  start/stop 
      print) are enabled.

      When  the  value is zero, pagination is off.  The header will
      say "Pg 0 Ln xxxx", showing you the absolute line  number  in
      the  file.   Also,  printing  occurs  with  no page breaks or
      formfeeds.  (This can be useful  for  printing  small  things
      right  after each other on the same sheet; or, in conjunction
      with the "*" option, can print out multiple copies  of  index
      cards, labels, etc.)



      ZDE never sends  a formfeed  before printing; begin your file
      with a ^PL if you need one.  Otherwise, use  of  ^PL  is  not
      recommended  in document  files as it  will render ZDE's page
      count inaccurate.
:b

PLACE MARKERS:  ^PZ, ^QZ, ^QQ

      You can set any number of temporary place markers in the text
      with ^PZ (they will appear as ^Z).  The ^QZ command moves the
      cursor to the next place marker in the file, cycling back  to
      the  top of the file if needed.  (Place markers are NOT saved
      to disk.)

      ZCPR users may also store a QUEUE of up to eight line numbers
      in their  user-defined  messages (a  set  of sixteen bytes of
      protected  memory "available for user definition").   The ^QQ
      command will then  cycle through  the queue  of line numbers,
      returning to the first location when it reaches  a  value  of
      zero.  A  value greater than the  number of lines in the file
      takes the cursor to  the end  of  the file.   The numbers are
      stored as two-byte inverted hexadecimal words.  This facility
      is  intended as  an interface  between other programs and ZDE
      (eg, for storing the locations of compiler errors),  however,
      these locations could be POKEd directly before invoking ZDE.
:c


PRINTER CODES:  ^P

      Control codes for special effects in printing can be  entered
      in  the text with the ^P prefix.  Thus pressing ^P^H (or ^PH)
      embeds a ^H, etc.  Several standard codes are:

          ^H - backspace - overstrike previous character
          ^I - hard (ASCII) tab - printers respond variously to this
          ^L - formfeed  (Not recommended unless pagination (^OP) is
               disabled)

      (The Block marker, normally ^B, cannot be embedded; and ^Z is
      reserved for use as a place marker.) Control codes display on
      screen as capital  letters,  highlighted  if  possible.   ZDE
      assumes they are not characters, so they are not counted when
      reformatting text.



      For greater convenience, you  can  also  arrange  to  have  a
      single  ^P-  code  produce  an  entire  string  of  bytes for
      commonly used effects.  ZDE supports a subset  of  WordStar's
      printer  installation,  seven  definable codes: four toggles,
      four switches.  The Printer Installation in  ZDENSTAL  allows
      you  to  choose  what  codes you want to use, and install the
      actual control sequences your printer  needs.   The  defaults
      are:

             toggles  ^B, ^D, ^S, ^Y      switches ^Q, ^W, ^E, ^R

      (In   WordStar  these  toggles  are  Boldface,  Doublestrike,
      Underline, and Ribbon/Italic, but you can make them  anything
      you  like.)  "Toggles"  are  good for features like underline
      that are turned  on  and  off.   "Switches"  are  better  for
      multi-valued parameters like character pitch.



      Example:  your  printer  uses  ESC-U-01  (and  00)  to   turn
      underlining on (and off).  If you install these codes:

                    ^S toggle on:  (03)1B5501
                      ...and off:  (03)1B5500

      then all you have to type in ZDE to get underlined text is:

                   ^PSunderlined text^PS.
:d


PRINTING:  ^KP

  ^OP command PRINTS all or part of the file from memory.  You will
      be asked for  a set  of "Options:",  at  which point you  may 
      enter one or more of the following, in any order:

       B      prints only the currently marked BLOCK.
       P      PAUSES  for your keystroke before each page (sheet
              feed).
       D      DOUBLE SPACES all text to be printed.
       Lnn    sets the printer LEFT MARGIN to nn columns.   [The
              default value can be set with ZDENSTAL.]
       ^      filters control characters ^X to text "^X".
       *nn    prints the job out nn TIMES (nn=1..255).
       @nn    begins printing AT the nn'th page.
       =nn    renumbers the pages beginning with nn.
       #nn    prints only (up to) a TOTAL of nn pages.



       "..."  uses  the  quoted string as a HEADER.  The string,
              followed immediately  by  the  page  number,  will
              print  at  the  top  right  of  each page near the
              margin.  (Maximum  length  is  50  characters;  an
              empty  string,  "",  gives  numbered pages with no
              header text.)

      The  last  four  options  (@,=,#,"")  are  NOT   allowed   if
      pagination is disabled (^OP), or if "B"lock print was chosen.

          Example 1:      Options:  L12P

      will print the file with a left margin of 12 columns, pausing
      before each page for you to press a key (other than Esc).



          Example 2:      Options:  @6#2=14"Instructions, page "

      will print the sixth and  seventh  pages  of  the  file,  but
      numbered 14 and 15, with the header shown.

          Example 3:      Options:  BD^*2

      will print out the current marked Block twice, double spaced,
      with control filtering.

      In "W" mode, lines beginning with a "." will be  regarded  as
      WordStar  dot  commands,  and  will  neither  print  out  nor 
      affect the page count (they have no other effect either).

      You can abort printing at any time with ESC (this may take  a
      moment, or a few keystrokes, depending on your BIOS).
:e


RULER LINE:  ^OT

      To  help  you  align  text properly, ^OT toggles display of a
      "ruler line" above the text on and off.

      In each column you will see  one  of  several  symbols:  "[]"
      designate  the  current margins (if set); "-" indicates areas
      within the current margins,  "."  outside  them.   Also,  tab
      stops are marked by either "T" (Variable) or "I" (Hard).  
      Examples:

        ("A" mode) [-----T-----T-----------T--------------]........
        ("N" mode) I.......I.......I.......I.......I.......I.......
:f

TABS:  ^I,ESC-TAB, ^OV,^OI,^ON

  There are two Tab modes, Variable and Hard;

  ^OV command toggles between them.  In Hard Tab mode the  Tab  key
      produces  an  actual  ^I (ASCII TAB); whether this overwrites
      any existing text depends on the INSERT  toggle.   Hard  Tabs
      display  by  default  at fixed intervals of 8 screen columns.
      [This is reconfigurable to any multiple of 2.]

      In  Variable  Tab  mode,  the Tab key moves the cursor to the
      next variable tab stop.  (You can always get a  Hard  Tab  by
      typing  ^PI.)  If Insert is on, spaces are inserted up to the
      next tab stop.  Otherwise, existing text is skipped over, but
      spaces are still added at the end of a line as needed.  Up to
      eight tab stops may be set  with  ^OI and  cleared with  ^ON;
      the defaults  are  in  columns 6, 11, 16, and 21.  [These are 
      configurable.]   At  the  prompt,  enter  the  column  number 
      desired, or hit RETURN for the cursor column.



  ^OI command also accepts two multiple-set inputs:  "@nn" sets tab
      stops every "nn" columns, while  "#n1,n2,..."  sets  tabs  at
      columns  "n1,n2,  ...".   Both  remove any pre-existing tabs.
      Typing "@" or "#" alone simply clears all tabs.

  ESC-TAB command moves backward (left) to the previous variable or
      hard tab stop.
:g


UNDELETE:  ^U, ^QU

      The  undelete functions can be used (repeatedly if necessary)
      to recover a reasonable amount  of  text  deleted  either  by
      overtyping,  or  with  any  of  ZDE's delete commands, IF the
      cursor has  not  yet  been  moved  away.   ^U  undeletes  one
      character; ^QU does a whole line.

      Restrictions:  undelete may not recover all of a Block delete
      unless the cursor was in or near the block  deleted;  and  it
      may  work  imperfectly  if DEL has been used several times in
      sequence.

      Further use after all deleted text is recovered will  produce
      junk  (usually  duplicates of text above the cursor, which is
      sometimes useful).
:h


UPPER/LOWER CASE:  ^^

      (CTL-caret) command changes the case of the character at  the
      cursor,  if  it  was  a  letter,  and  moves  the  cursor one 
      character to the right.   Useful for capitalizing a string of 
      lowercase text, or vice versa.
:i


WINDOW AND SCREEN:  ^W, ^Z, ESC-Arrows, ^O-Up,W,Z 

      ZDE supports several functions to move and  alter the display 
      screen.

      The  ^W  and ^Z commands scroll the screen up and down a line
      at a time, without moving the cursor (unless necessary).

      Preceded by ESC, any arrow (except  ANSI)  moves  the  screen
      rather  than  the  cursor: the text as a whole shifts up/down
      1/4 screen, or right/left 32 columns, while the cursor  stays
      put.   (The  cursor  must  be  past  column 32 for horizontal
      shifts to work.)

      Preceded by ^O-, any UP arrow key  (except  ANSI)  makes  the
      current text line the top of the screen.



      The  ^OW  command  creates a Window in the bottom half of the
      screen, which retains a copy of the file text starting at the
      current  line,  plus the current status and/or ruler line(s).
      Editing continues normally  in  the  top  half of the screen.  
      This  is  useful  for comparing  different  sections  of text 
      within a file,  or even between different files.   Typing ^OW 
      again removes the Window. (Note:  Windowing is only supported
      for screens of 15 or more lines.)

      The  ^OZ command temporarily zaps (blanks) the entire screen;
      good for avoiding CRT burn-in, or just protecting  work  from
      prying  eyes  or fingers.  Restore the screen by pressing ESC
      or SPACE.  (Note:  if  Windowing was in effect,  any text  in
      the window will be lost.)
:j


WORDWRAP, REFORMAT:  ^B, ^OD

      Wordwrap is automatic in Document ("W" or "A") modes whenever
      the right margin is set.   Any text entered will be formatted
      to the current  margin settings.   The  end of a paragraph is
      marked by a "HARD CR", which occurs when you press the RETURN
      key.  (This is  a  CR  immediately following  a  character of 
      text.)  In contrast, when wordwrap occurs you get a "SOFT CR"
      (which is  actually  a CR with  a space before it).   You can 
      change a hard CR into  a soft one, or vice versa, by deleting 
      or  adding  a space  at the  end of the line.  Hitting RETURN 
      also hardens  a soft CR.   The  distinction between  hard and 
      soft CRs is only important when reformatting.



   ^B REFORMATS  from  the line the cursor is on, to the end of the
      paragraph,  according  to the  current  margin  settings  and
      line  spacing.   (Thus  ^B  is  used  not  only  to reshape a
      paragraph after editing, but also to change its  margins  and
      line  spacing.)  Indentation can be tricky if you have a left
      margin set: if the current line is indented relative  to  the
      next   one,   ZDE  assumes  that  amount  as  your  paragraph
      indentation.

  ^OD toggles DISPLAY OF HARD CRs.  Hard CRs, otherwise  invisible,
      can  be  caused  to  display as a "<" character.  This can be
      useful; some may find it distracting, so it turns off.
