David Seidman
Software by Seidman
2737 Devonshire Place, N.W.
Washington, D. C. 20008
April 10, 1993

Copyright (c) 1988 - 1993 by David Seidman

                         SOFTWARE BY SEIDMAN'S
                          WPTOOLS VERSION 5.2



                              INTRODUCTION

WPTOOLS Version 5.2 is a collection of utility programs for use with
WordPerfect Versions 5.0 and 5.1 (WP50, WP51, or, collectively, WP5).
Most of the programs are equally useful with LetterPerfect 1.0.  Some
also work with PlanPerfect 5.x (PP5) files and files from other recent
WordPerfect Corp. products.  Because WordPerfect for Windows document
files are compatible with WP51 document files, most WPTOOLS programs
should work equally well with WordPerfect for Windows 5.1 and 5.2.  The
shareware distribution consists of a what's new file, this
documentation in ASCII format, and fourteen programs:  DISKFONT,
FIXPRE, FONTFILE, FONTLIST, IS5XDOC, LISTMACS, MAKETABS, MERGESUM,
PRINTIT, PRSFONTS, STYLIST, WHATPTRS, WP5LOOK, and WPSNOOP.  Users who
pay the license fee also receive Supplemental Tools (six additional
utility programs: COMMENTS, ENDFOOT, MASTER, STYLEUSE, TARGETS, and
WPGSIZE), and this documentation in WP5 format.  WPDOCS.NB, a
WordPerfect Library/Office Notebook file written by Barry Zimmerman,
and WPDOCS2.NB are distributed with WPTOOLS for use with MERGESUM.
These files also work with Database, a part of WordPerfect Works.

                   Additional NOTE on 32-bit versions

This archive includes two replacement programs that run in DOS boxes 
under 32-bit Windows (unlike the original versions):

FIXPRE32W replaces FIXPRE
LISTMACSW32 replaces LISTMACS


                                PROGRAMS

Briefly, this is what the WPTOOLS and Supplemental Tools programs do:


COMMENTS Reads WP5 document files, extracts the comments, and writes
         them to a file or standard output.

DISKFONT Searches a directory for specified soft font files and,
         optionally, lists descriptive information about the fonts it
         finds.

ENDFOOT  Converts all footnotes (endnotes) to endnotes (footnotes),
         changing automatic references appropriately.

FIXPRE   Removes deleted (and optionally other) data packets from the
         prefix of WP5 document files and removes deleted data packets
         from WP5 (and other WPCorp) setup files (e.g., WP{WP}.SET).
         For document files, this will often facilitate changing the
         printer driver used with the file and shrink the file.  Setup
         files grow as you modify your setup; FIXPRE shrinks them
         again.  And FIXPRE sometimes helps when WP5 just seems to be
         acting strangely.  Optionally deletes styles, initial codes,
         document summaries, and graphics.

FONTFILE Lists the file names of the soft font files specified in a PRS
         file.

FONTLIST Lists the names of the fonts used in a WP5 document and the
         PRS file the document calls for.

IS5XDOC  Identifies WP5 document files.  Useful in batch files.

LISTMACS Lists the names and descriptions of macros in WPM and WPK
         files (and the keys for WPK macros), optionally sorted.  Also
         works with PP5 and DR macro and keyboard files.

MAKETABS Converts an ASCII text file to a WP50 document, replacing
         spaces by tabs.  Used with columnar material.

MASTER   Reads a WP5 master document and lists the unexpanded
         subdocuments it calls for or the expanded subdocuments it
         contains.

MERGESUM Makes a WP50 secondary merge file from your document summaries
         and DOS directory information.  With Notebook or just WP5, a
         simple but effective document management system.

PRINTIT  Paginates and formats an ASCII text file for printing.

PRSFONTS Lists and optionally numbers the names of the fonts available
         in a PRS file.

STYLIST  Lists names and descriptions of styles, optionally sorted.

STYLEUSE Lists the styles used in the text of a document.  Lists the
         unused styles.  Optionally deletes unused (or all) styles from
         the prefix.  Optionally deletes styles from the text, leaving
         the codes added by the style.

TARGETS Lists the automatic reference targets and references in a WP5
         document file, indicating unreferenced targets and references
         to nonexistent targets.  Shows page numbers.

WHATPTRS Lists the printers described in ALL files, optionally sorted
         by printer name.

WP5LOOK  Displays one or more WP5 document files specified on the
         command line, piped to the program, or entered in response to
         prompts.  Particularly because files can be specified with
         wildcards, WP5LOOK may be more convenient than WP5 itself for
         browsing through WP5 documents.  Also displays non-WP5 files.

WPGSIZE  Extracts and lists the dimensions of the image coordinate
         space for WPG files.  Useful in getting the aspect ratio
         right.

WPSNOOP  Determines the file type of many files associated with recent
         WordPerfect Corporation products.  For WP5 document files,
         lists the document summary and the PRS file.  For macro files,
         lists the description.  Optionally reveals the structure of
         WP5 document and set file prefixes.

In most cases, running the program from the DOS command line without
any parameters specified will produce a brief explanation of program
usage.

WPCorp has no connection with these programs, except that it provided
the technical information necessary to write some of them.  WPCorp,
WordPerfect, PlanPerfect, DrawPerfect, DataPerfect, and LetterPerfect
are registered trademarks of WordPerfect Corporation.  WordPerfect
Office and WordPerfect Library are trademarks of WordPerfect
Corporation.  Windows is a trademark of Microsoft Corporation.


Notes on Other WPCorp Programs

LetterPerfect's files are mostly indistinguishable from WordPerfect
files.  All the WPTOOLS programs therefore should work with
LetterPerfect files as well as WordPerfect files.  PP5 uses the same
ALL and PRS files as WP5.  PP5's setup, macro, and keyboard files share
a file structure with WP5.  The WPTOOLS programs that work with such
files work with both WP5 and PP5 files.  WPCorp uses similar macro,
keyboard, and setup file structures for other programs, so WPTOOLS will
work with them too.

This documentation does not always indicate whether a particular
program works with files from WPCorp programs other than WP5, and it
never says whether a particular program works with LetterPerfect files,
because there is really no difference between LetterPerfect and WP5
files.  When in doubt, give it a try.  WPTOOLS does not work with early
WPCorp program files, such as WP4.x, or any version of DataPerfect.


Notes on Command Line Switches

Many of these programs require or allow you to select among various
options, usually by using "switches" on the DOS command line.  These
switches are described in detail in the discussion of the programs
below.  Generally, the discussion indicates that each switch is
preceded by a hyphen or minus sign (for example, -M is an optional
command line switch for WP5LOOK), but you can always use a slash ("/")
instead.  Thus, -M and /M on the command line have the same meaning.

Usually, each item you enter on the DOS command line is separated from
the next by a blank space.  Thus, if you use the -C and -R switches
with MERGESUM, your command line might look like this:

         MERGESUM *.* -omydocs -R -C

In most cases, where particular options must consist entirely of single
letters, you can combine the options:

         MERGESUM *.* -omydocs -RC

Note that case does not matter for switches.  The previous example
could just as well be written this way:

         MERGESUM *.* -Omydocs -rc


Notes on Input and Output

You normally supply one or more input file names ("Infile") and
sometimes an output file name ("Ofile") on the DOS command line.  The
file name may always include drive and path specifications.  The
program descriptions mention where wildcards (* and ?) can be used.
Several programs supply default extensions if you give a filename
without an extension.  To avoid the default extension (for files which
really have no extension), end the filename with a period.

Many of these programs are intended to read WP5 files, and except in
the case of IS5XDOC, it does not make any difference which version of
WP5 produced the files.  Note that WPTOOLS cannot process password
protected files; usually they are just ignored.

Many of these programs by default write their output to "standard
output," but output will go to a WP50 file instead if you specify an
output file (usually with a -o switch before the name of the file).  A
WP50 file can, of course, be read in WP51.

By default, standard output means the screenthe output goes to the
screen in a continuous flow.  This may not be what you want, either
because the output fills more than one screen or because you want to
keep or otherwise use the output.  Instead of letting standard output
go directly to the screen, you can pipe it to another program, or
redirect it to either the printer or a file.  For example, screen
display is more useful if you pipe output to the DOS filter MORE:


                         WPSNOOP *.* |MORE


or, better, to Vernon Buerg's LIST:


                         WPSNOOP *.* |LIST /s


You might also pipe to PRINTIT and redirect the output from PRINTIT to
the printer directly or to a file for later printing:


                         WPSNOOP *.* |PRINTIT >prn

or

                         WPSNOOP *.*|PRINTIT >outfile


Or you can have the program output go directly to an ASCII text file:

                         WPSNOOP *.*>outfile




Notes on WP50 and WP51 Files

Several WPTOOLS programs identify, in their output, input document
files as either WP50 or WP51, based on version information in the file
prefix.  This information may be less useful than you think.  In early
releases of WP51, the version information usually identifies the
version originally used to create the file.  Thus if you create a file
in WP50, save it, read it in to WP51, add codes specific to WP51, and
save the file again, it will still be identified as a WP50 file, even
though it contains codes unknown to WP50.  We believe this has been
changed in later releases of 5.1.

                          *     *     *     *

                                PROGRAMS

I.  COMMENTS

COMMENTS extracts the comments (if any) in one or more WP5 document
files and writes them to a WP50 file or to standard output.  This
allows you to read all the comments in a document without retrieving
the document into WP5 and searching for the comments individually.  If
you send the COMMENTS output to standard output, you can read it on the
screen, send it to the printer, or capture it in an ASCII text file.
The output identifies the page on which the comments appear (for
comments in footnotes that are split between pages in printed output,
the page indicated is the page on which the footnote starts).


Usage:  COMMENTS Infile [Outfile] [/c]

                 Infile is a WP5 document file specification.  It may
                 include DOS wildcards.

                 Outfile is a WP50 file.  If it is omitted from the
                 command line, output is written to standard output.

                 /c      If output is not to a WP50 file, do not
                         include high ascii characters in the output.
                         All characters are always included in the
                         output if a WP50 output file is specified.

         Examples:

         COMMENTS Myfile ComFile

         The comments in Myfile are written to ComFile in WP50 format.

         COMMENTS *.* |PRINTIT >prn

         Comments in all files in the default directory are printed.

         COMMENTS Myfile /c >Comments.out

         Comments in Myfile are written to the ASCII text file
         Comments.out in the default directory.  High ascii characters,
         such as letters with accents, are not included in the output.


II.  DISKFONT

DISKFONT has two uses:

         1.   To provide information about soft fonts by reading the
         soft font disk files.

         2.   To examine a list of fonts to determine whether their
         files are on the disk.

DISKFONT reads a list of soft font file names and searches for the
files in a specified disk directory.  By default, it lists information
about the fonts in the soft font files it finds (if the soft font is
compatible with the HP LaserJet Series II or the HP DeskJet and
includes the standard information internally).  Note that DISKFONT does
not process scalable fonts.  Optionally, it merely reports the names of
the font files it fails to find.

FONTFILE (another WPTOOLS program) creates a list of soft font file
names referenced in a PRS file.  This list may be used as input to
DISKFONT, which can process the list to find whether the files are
available or to provide more information about them.  Note that the ALL
file from which a PRS file was made may reference more soft fonts than
the PRS file references.  Soft fonts are referenced in a PRS file only
if you chose to include them in the PRS file, using * or + (or both).
Therefore, the list generated by FONTFILE may be smaller than the list
WPerf is capable of displaying.


Usage:DISKFONT [-Option] [-Option]

                 Input is a list of filenames from standard input.  The
                 filenames may include wildcards.  FONTFILE output is
                 acceptable input to DISKFONT, and may be piped to it.
                 If the input is a file containing a list of soft font
                 file names, use input redirection (<infile).  Input
                 may also come from the keyboard; in that case, use ^Z
                 followed by Enter to terminate keyboard input.  An
                 input filename on the command line MUST have < before
                 it.

                 Output goes to standard output by default and may be
                 piped or redirected.  Output may optionally be in WP50
                 format.


                 Options:

                 -D      directory (Directory where fonts are) If none
                         is specified, the default directory is
                         assumed.  If the input filenames include
                         directory information, that overrides the
                         command line.

                 -O      OFile For WP50 output.
                         Formatting of the WP50 file assumes, but does
                         not set, left and right margins of 1" and a
                         10-pitch monospaced font; the tabs set by
                         DISKFONT may seem strange if those are not
                         your defaults.

                 -F      Only find fonts--no information about them
                         given

                 -?      Help message


                 Examples:

                 DISKFONT

                 Keyboard input, output to standard output (screen).

                 DISKFONT <myfonts.txt

                 Input, myfonts.txt, is an ASCII text file containing a
                 list of font file names.  Output to screen.


                 FONTFILE My.PRS|DISKFONT -Dc:\wp\fonts|PRINTIT >prn

                 Input is list of font files referenced by My.PRS.  The
                 list is created by FONTFILE and piped to DISKFONT.
                 The font files are in subdirectory \wp\fonts on drive
                 C:.  DISKFONT output is piped to PRINTIT.  PRINTIT
                 output is redirected to the printer.


         Here is an example of DISKFONT output:

         Report for LJ font file AC0060RH.HPF:
         FontName      Swiss
         Typeface      4 (Helvetica)
         Orientation   Portrait
         Height        6.0 points
         Style         Upright
         Font Weight   2
         Font type     8-bit
         Symbol Set    HP Roman-8
         Spacing       Proportional.  Space width is 1.68 points

         The first li   ne gives the file name and identifies the file as
         either a LaserJet (LJ) or a DeskJet (DJ) font file.

         FontName is the name stored in the font file as the name of
         the font, although some fonts are usually referred to by a
         different name.

         Typeface is a number (0-255).  For some typefaces, DISKFONT
         can supply the typeface name.

         Orientation is Portrait or Landscape.

         Height is a standard measure of the height of the font.  It is
         not necessarily the height of any character in the font.

         Style is either Upright or what HP calls "italic."  HP notes
         that other values may be assignedDISKFONT will not recognize
         them.

         Weight is the stroke weight of the font, a value from -7 to
         +7.  According to HP, 0 means "medium," 3 means "bold," and -3
         means "light." DISKFONT translates the numbers to words
         according to HP's scheme.  Not everyone uses that scheme.
         BITSTREAM, for example, apparently treats 2 as meaning bold.

         Font Type comes in three varieties.  "7-bit" indicates that
         ASCII codes 32-127 are printable.  "8-bit" indicates that
         ASCII codes 32-127 and 160-255 are printable.  "PC-8"
         indicates that all ASCII codes except 0,7-15, and 27 are
         printable.

         Symbol Set indicates which characters will actually print.
         This is stored by number in the file.  It is possible DISKFONT
         will not translate some numbers to words.

         Spacing is proportional or fixed.  For either, an appropriate
         measure of the spacing is listed.


DISKFONT was inspired by Gary Elfring's program FONTINFO.


III.  ENDFOOT

ENDFOOT converts all the footnotes in a document to endnotes, or all
the endnotes to footnotes.  You can also do this with a macro
(distributed with WP51).  But macros do not adjust your automatic
references appropriately, so that references to the former footnotes
become references to endnotes (or references to endnotes become
references to footnotes).  ENDFOOT does.  Also, ENDFOOT is likely to be
faster than a macro.


Usage:  ENDFOOT Infile Outfile [-Option]

         Infile is the WP5 file to be converted.

         Outfile is the converted WP5 file.

         Options (use at most one):

         -F Convert footnotes to endnotes (the default, so you do not
            have to indicate the option)

         -E Convert endnotes to footnotes


IV.  FIXPRE

A.  WP5 Document Files

WP5 document files have two sections:  the prefix (created by WP5),
which contains document default settings, fonts, styles, and similar
information; and the document itself (text and codes entered by the
user).  FIXPRE strips certain information out of the prefix; much of it
concerns printers and fonts, while most of the rest is obsolete.  When
you read the stripped file created by FIXPRE back into WP5, WP5
restores the printer and font information.

This sounds pretty pointless.  Why do it?  The most common reason for
doing it is simply to make document files smaller, which FIXPRE can do
in several ways, but there are other reasons as well:

(1)  As you edit a file, WP5 adds new information to the prefix and
marks old information as no longer valid.  Early releases of
WordPerfect Version 5.0 frequently produced documents containing vast
quantities of this invalid information; more recent releases of 5.0 and
5.1 are likely to have a lot of it only if you use the FASTSAVE option.
FIXPRE can remove any that remains in the document, thus reducing the
size of documentsby a lot, particularly if you use FASTSAVE.

(2)  Removing printer and font information from the prefix saves a lot
of space on disk, particularly if you use proportionally-spaced fonts.
Since the information is restored when you retrieve the file, often
with complete accuracy, you typically lose little by stripping this
information from the file.

(3)  FIXPRE optionally strips styles, initial codes, document
summaries, and graphics from the prefix.  Stripping the initial codes
with FIXPRE may sometimes be the easiest way to get rid of them.
Stripping styles helps to save disk space by shrinking the file.
Stripping styles from the prefix does not affect any use you have
already made of the styles in the document, but it prevents you from
using the style again in the document (until you retrieve it again or
otherwise recreate itWP51 automatically recreates styles that have
been used in the document).  So it makes sense to strip styles mainly
when you have finished working on a document and simply want to store
it.  (Note that STYLEUSE provides a more flexible way of dealing with
styles.)  Stripping the document summary may be useful if the document
has changed enough that the summary no longer reflects the content of
the document.  Stripping graphics serves mainly to cure erroneous error
messages reporting insufficient space on WP disk to retrieve the file.

(4)  Some users have had difficulty printing files after changing
printer drivers or when the files were created on another system.  Use
FIXPRE to clean the printer-related information out of the prefix; then
read the file into WP5 and install with new drivers.  The difficulties
may disappear.  (The UPDATE function introduced in the WP50 July 1988
maintenance release solves many printer driver problems of this kind,
but apparently not all.)

(5)  Another reason for using FIXPRE is harder to describe.  Sometimes
the formatting in a WP5 file goes haywire.  The problem mayor may
notgo away if you FIXPRE the document.  For example, this document was
originally written in WP5, using Courier 10.  I changed to Courier 12,
didn't like the results, and went back to Courier 10.  After those
changes, centered lines were no longer centered properly, and many of
the tabbed and indented lines were also off.  After trying a few ways
of fixing the problem, I FIXPREd the document and read it back into
WP5.  Problem gone.  I can't explain why the document went bad, or why
FIXPRE fixed it.  But if you run into strange formatting problems, give
FIXPRE a try.  Other problems to which this solution may apply include
misplaced graphic lines and improper font printing.

B.  WP5 Setup Files

The WP5 setup file, WP{WP}.SET, also contains a number of data packets.
As you change your setup (without making a new setup file), new data
packets are added and old ones marked as deleted.  WP50 seems never
actually to remove these deleted data packets from the setup file.
FIXPRE will remove them.  I have seen setup files shrink to 1/10th
their size.  When certain problems arise from bloated WP50 set files,
WordPerfect Corporation advises erasing the set file and starting
again.  FIXPRE is easier.  WP51 does remove at least some deleted data
packets from the setup file sometimes, so FIXPRE will less often be
useful with WP51 set files.

C.  PlanPerfect And Other Programs

FIXPRE works with PP5 set files and should work with any similar set
files WPCorp releases.


D.  Using FIXPRE

Usage:  FIXPRE Infile [Outfile] [-Option] . . [-Option]

                  Infile is the WP5 document or setup file to be fixed.
                  May include wildcards.

                  Outfile is not required.  It will not be used if
                  Infile contains wildcards.  If Outfile is used,
                  Infile will be unchanged, and the fixed file written
                  to Outfile.  If Outfile is not used, Infile will be
                  renamed (as a backup), and the FIXPREd file will be
                  written under the original Infile name.  The backup
                  file name is based on the Infile name.  It is the
                  main part of the Infile name, with a new extension.
                  The backup file will NOT overwrite any existing file.
                  Suppose the Infile you supply is LETTER.DOC.  The
                  program tries to use the name LETTER.F01 for the
                  backup.  If a file with that name exists, the program
                  tries LETTER.F02, and so on through F99 (where the
                  program gives up and asks you to provide an output
                  file name).  When the program is finished, LETTER.DOC
                  will be the FIXPREd file.


          Options:  (Each may be listed with - and separated
                    from the next by a blank, or you may combine
                    options after a single -.  Thus -K -E and
                    -KE are both valid.)

          -K      Kill (do not preserve) the backup file.  The .Fxx
                  file will be deleted when the program finishes.
                  Obviously, this option can be dangerous.

          -E      Process input wildcard specification through the
                  directory tree.  For example, if Infile is
                  c:\wp51\*.*, FIXPRE will process all files in c:\wp51
                  and all files in the tree of subdirectories branching
                  from subdirectory wp51.  Thus it would process all
                  files in subdirectories c:\wp51\memos,
                  c:\wp51\letters, c:\wp51\letters\jan, etc.

          -T      DOS directory entry for the output file has the date
                  and time of the input file.  Otherwise, current date
                  and time are used.

          -A      Process wildcard files only if archive bit is set.
                  Useful if you use FIXPRE to save space before backing
                  up your files.  Avoids re-FIXPREing files already
                  backed up.

          The remaining options are ignored if the input file is
          a setup file.

          -D      With this option, FIXPRE strips only deleted data
                  packets from the prefix.  Without it, other
                  information is also stripped.

          The remaining options have no effect if -D is chosen.

          No Strip Options:

          -F      By default, FIXPRE replaces Infile's "document
                  flags."  -F preserves the original document flags.
                  It is not clear this is ever useful.

          -H      By default, FIXPRE eliminates the prefix's "formatter
                  hash table."  -H preserves it. It may never be
                  sensible to use this option.

          -P      With this option, FIXPRE does not strip printer-
                  related information from the prefix.  -P is
                  equivalent to -BLR.

                  If you strip all the printer-related information from
                  the file, WordPerfect may make some strange choices
                  of fonts when it next processes the file.  The most
                  likely problem is a failure to choose the document's
                  default font properly, since no information about it
                  may remain.  Preserving the font list preserves the
                  information about default font choice.  There is a
                  tradeoff between accurate reconstruction of the
                  document and the amount of file shrinkage.  The best
                  tradeoff is probably to use -L, but you should
                  experiment for best results.

          -B      Do not strip proportional spacing tables.

          -L      Do not strip font list.

          -R      Do not strip PRS file information.

          Strip Options:

          -I      Strip initial codes.

          -G      Strip graphics.  This will cause references in the
                  body of the document to graphics stripped from the
                  prefix to disappear.

          -U      Strip document summary.

          -S      Strip all styles from the prefix.  This option has no
                  effect if the "document" has no text part.
                  Therefore, the option can be used safely even if the
                  file specification causes FIXPRE to process style
                  libraries.  If you want to delete all styles from the
                  prefix of a style library, you  might as well simply
                  delete the file entirely.


WARNING:  If FIXPRE has stripped the printer-related information, do
not attempt to print the document file from disk before WP5 has
restored the printer-related information.


V.  FONTFILE

FONTFILE extracts the list of names of soft font files found in a PRS
file.  These files must be present on disk and accessible to WP5 in
order to print documents which use the fonts they contain.  FONTFILE
can be used in conjunction with DISKFONT to determine whether those
files are present on disk.  Note that FONTFILE, like DISKFONT, does not
process scalable fonts.


Usage:   FONTFILE  Infile [Ofile]


                  Infile should be a PRS file.  The file extension
                  defaults to PRS.

                  Output goes to standard output, unless Ofile is
                  supplied.  Output can, and often should, be piped to
                  DISKFONT.  See example above.  Or you can redirect
                  the output to an ASCII text file and then use that
                  file as input to DISKFONT before printing a document
                  that uses the PRS file. If Ofile is supplied, the
                  output is in WP50 format.


VI.  FONTLIST

FONTLIST displays a list of the names of the fonts used in a WP5
document file.  (This list is found in the document's prefix.)  This
list may be useful if you are not sure whether the fonts used in a
document are available on your disk.  The output also identifies the
PRS file and printer assumed by the document.

FONTLIST output can be misleading in two ways.  First, the initial
font, or any font specified in initial codes, or any font specified in
a document's initial font setting, will appear on the list even if you
did not use the font.  (FIXPRE in default mode will delete initial
fonts.)

Second, fonts once used in a document but later replaced or removed
will also appear in the list.  To avoid listing these fonts, you can
FIXPRE the document, read it into WP5, and then save it.  FONTLIST
should then produce a list of fonts actually used in the document (plus
the initial font).

If the second character of a font name (as it appears when you display
the list of base fonts) is in upper case, the name of the font in the
FONTLIST output may be preceded by an extraneous character.


Usage:  FONTLIST Infile [Ofile] [-gfilespec]

                  Infile is a WP5 document file.

                  Output is written to standard output unless Ofile is
                  provided.  If Ofile is provided, output is in WP5
                  format.

                  -g      If Ofile is provided, output file will have
                          the same file prefix as filespec.  This
                          option allows, for example, creation of WP51
                          output files, or formatting to a set of
                          initial codes.


VII.  IS5XDOC

IS5XDOC allows a batch file to determine whether another file is a WP5
document file, and if so, whether it is 5.0, 5.1 or, assuming WPCorp
does not change its file formats, 5.2, 5.3, etc.  (At this point, it
appears that WP5.2 files are identified internally, and thus by
IS5XDOC, as 5.1 files.)  It does this by setting the DOS errorlevel.
Thus:


Usage: IS50DOC Infile

         Resulting errorlevel:

          0      WP50 document file
          1      WP51 document file
          2      WP52 document file
          n      WP5n document file, where n is a number
         98      Other file
         99      File not found, etc.

How can you use this?  Suppose you wanted to edit WP5 files in
WordPerfect but other files in ED automatically.  The following batch
file would work:

         is5xdoc %1
         if errorlevel 99 goto quit
         if errorlevel 98 goto ed
         WP %1
         goto quit
         :ed
         ed %1
              :quit

Call the batch file EDIT.BAT and use it this way:

         EDIT Infile


VIII.  LISTMACS

LISTMACS produces a list of up to 1000 macros in its input files; both
WPM and WPK files contain macros (each key redefinition in a WPK file
is a macro).  The output includes the file name, macro description,
and, for WPK macros, the name of the key to which the macro is
assigned.  By default, the output is sorted by filename and, within
filename, by macro description.  Alternate sorts, or no sort, may be
selected as options.


Usage:  LISTMACS infile .. [infile] [-oOfile] [-sortoption]

                 Up to 5 Infiles, which may include wildcards.

                 Output to standard output unless Ofile specified with
                 -o.  If Ofile specified, output is in WP5 format.  WP5
                 tab settings assume 1" left margin and 10 pitch
                 monospaced font.

                 Sort options (default is sort by filename):

                 -N      No sort
                 -D      Sort on macro Description
                 -K      Sort on Key name
                 -E      Sort on file Extension


                 Example:

                 LISTMACS c:\wp\*.wpk c:\wp\*.wpm -D

                 lists macros in all wpm,wpk files, sorted by
                 description


IX.  MAKETABS

MAKETABS converts ASCII text files to WP50 documents, replacing
sequences of spaces by ordinary left tabs or, optionally, right tabs.
It is useful for converting columnar material, such as spreadsheet
output, to WP5 format.  MAKETABS replaces spaces with tabs by either of
two methods and, in one method, according to either default tab
settings or those the user supplies.  The output WP50 file begins with
a tab set code if the user supplied a tabstring or tab spacing
information to the program.  Note that the tab set code always
indicates ordinary left tabs, even though the tabs appearing in the
document may be either left or right tabs.  If you want your tab
settings to indicate right tabs (and you may if, for example, you want
to extend the columnar lists after converting to WP50), you will have
to change the tab settings in WP5 manually.

MAKETABS is not well suited to text that is not organized by columns.
If you have an ASCII file that includes both columnar material and
ordinary text, it would be best to create separate files, one with the
columnar material and one with the ordinary text, convert them
separately, and then recombine them in WP5.

Note that all trailing blanks are stripped before conversion.

Note also that MAKETABS cannot handle a line longer than 255
characters.

Usage:  MAKETABS [-Option] . . . [-Option]


                 Options:

                 -F      Parameter file name.  Instead of supplying
                         options on the command line, you may supply
                         them in a parameter file.  The parameter file
                         is an ASCII text file containing options, one
                         option per line.  Thus if you include, e.g., -
                         Fmyfile.cfg on the command line, you need
                         include no other options on the command line.
                         You may, however, include other options on the
                         command line with you use -f.  However, you
                         should not duplicate options between the
                         command line and the parameter file.


                         A typical parameter file might look like this:

                         -IBudget.prn
                         -oBudget.WP5
                         -R
                         -t10;35;73;88
                         -N2

                 With such a parameter file, -F could be the only
                         option indicated on the command line.

                 -O      Output file name.  Required.  Optional only in
                         the sense that it may be included in the
                         parameter file rather than on the command
                         line.

                 -I      Infile Input filename.  If there is no -I
                         option, MAKETABS defaults to standard input,
                         and input may be piped or redirected, or it
                         may come from the keyboard.

                 -T      n1;n2;..;nm Tabstring (in columns of the ASCII
                         input counting from 0).  If you do not use the
                         -R option, you may include Rs in  the tab
                         settings to indicate that particular tabs are
                         to be right tabs.  For example, if you used
                         -t10;20R;30 as your tab settings, the first tab
                         would be a regular left tab, the second a
                         right tab, and the third a left tab.

                 -Sn     Tab spacing (for equally spaced tabs).  In
                         columns.  Default is 5.  If you wish to use
                         the default, do not include a -S option.

                 -M      Use Method 2 (tabs not based on tabstring or
                         tab spacing)

                 -R      Use Right tabs in all cases (Method 1 only)

                 -Nn     MiNimum spaces to replace.  Default is 3.

                 -Xn     MaX spaces to replace by a single tab (Method
                         2).  Default is 80.

                 -Ln     WP5 Left margin (inches and tenths). Default
                         1.0.

                 -Bn     n is the number of spaces permitted in the
                         string between a right tab and the tab stop,
                         if the string contains non-spaces.  Default is
                         0.  Whatever the value of n, spaces are not
                         permitted at the end of the string.  To
                         disable checking for blanks internal to the
                         string (thus permitting any number), set n
                         equal to 99 or to any value greater than or
                         equal to Minimum spaces to replace.


Method 1, the default method, replaces spaces by tabs to match tab
specifications you supply.  The idea is to reproduce in WP5 the ASCII
text file you started with, using tabs instead of spaces as
appropriate.  The tab specification is in terms of columns in the ASCII
text file.  By default, the tab specifications are set this way:
5;10;15;20, etc.  Although that corresponds to WP5's default tab
settings, it will rarely be appropriate for columnar data you wish to
convert to WP5 format.  You therefore will usually have to supply a
different tab specification.

In order to do that, you have to figure out column positions in your
ASCII text file, since the tab specification you supply must match the
ASCII text file.  This is not as easy as it sounds.  Usually when you
count columns in an ASCII text file, you think of the first column at
the left of a line as 1.  WP5 thinks of the first column as 0.  In
order to get things to work well between the ASCII file and WP5, it is
necessary for you to think of the first column as 0.  The tenth column
is then 9, and so forth.  You also have to think about how right and
left tabs relate to the tab settings.  Suppose your ASCII text file
starts with a series of blanks followed by a word starting in Column
10.  That would correspond to a left tab setting of 10.  Suppose
instead your ASCII text file begins with blanks, followed by a column
of numbers, with the last digit in column 9.  That would correspond to
a right tab setting of 10.

As an example, suppose you redirected the output of LISTMACS to an
ASCII text file but then wanted to convert the ASCII to WP5, with tabs
rather than spaces.  You would use -T8;14;60 (you would also use -N1,
because there are likely to be some very short sequences of spaces).

Right tabs and spaces have a complicated relationship.  If you have
"    100.00" ending at a tab stop, a right tab replaces the spaces.  If
"        " ends at a tab stop, the spaces are replaced by a right tab,
because the sequence of spaces is longer than the minimum number of
spaces to replace).  If "    100.00 " ends at a tab stop, the
terminating space prevents replacement of the other spaces by a tab
(assuming the minimum number of spaces to replace is greater than 1).
If you have, for example, "    John Jones" ending at a tab stop,
whether the spaces before "John" are replaced by a right tab depends on
how you have chosen to treat sequences of spaces less than the minimum
number of spaces to replace.  By default, no spaces are permitted
between the right tab and the tab stop, so there would be no right tab
here.  If you use -B99, there is no checking for sequences of spaces
less than the minimum number of spaces to replace, so there would be a
right tab here.  You could also set -B1 to permit one space but no more
(so there would a right tab here because there is only one space
between "John" and "Jones"), or you could set -B2 to permit two spaces,
and so forth.

If you do specify tab settings, the appropriate tab set command is
included at the beginning of the WP5 output file.  Column positions are
assumed to represent tenths of an inch.  However, the WP5 tab settings
are not a direct translation into inches of your column specification.
MAKETABS assumes that the ASCII text file begins at the beginning of a
line, but that WP5 files have a left margin.  By default, MAKETABS
assumes a WP5 left margin of 1.0".  So the WP5 tab settings resulting
from the -T command in the previous paragraph are 1.8", 2.4", and 7.0".
You can change the assumed left margin with the -L command (e.g., -
L1.5).  MAKETABS does not put a margin change command in the output
file, but it does adjust the tab settings.

Method 2 ignores tab settings.  It replaces any sequence of spaces of
at least the minimum length (up to the maximum -- see the -X option
above) by a single tab.  This is likely to produce reasonable results
even when the ASCII text file is not perfectly aligned in columns, but
it will produce very bad results where right tabs are required.

For another example, see below under WHATPTRS.

Warning: if your ASCII input includes actual ASCII tab characters, as
opposed to spaces, MAKETABS will give incorrect results and the ASCII
tab characters will appear in the output WP5 file as control-Is (^I).

X.  MASTER

MASTER displays the file dependencies in master document/subdocument
structures.  MASTER checks to see if a document calls for included
subdocuments.  If it does, each such subdocument (if it can be found)
is checked to see whether it calls for included subdocuments.  The
output shows each subdocument indented under its master document.  Thus
if document One includes subdocuments OneA, OneB, and OneC, and
subdocument OneA includes subsubdocuments SubOne and SubTwo, the output
would look something like this:

         One
           OneA
             SubOne
             SubTwo
           OneB
           OneC

In addition, the file size and date may be included on the line with
the file name, for those files which can be located.

Alternatively, MASTER simply reads a file and lists the names of the
expanded subdocuments it contains.  This can be useful if, for example,
you receive an expanded master document from someone else and would
like to condense it, but need to know what files condensing will
create, and in which directories they will be created.  (File sizes and
dates are not available for expanded subdocuments.)


Usage:  MASTER Infile [-option] .. [-option]

         Output is written to standard output.  Pipe or redirect as needed.


         Options: ( can be combined. E.g., use -D -S or -DS)

         -D      include file date
         -S      include file size
         -E      list expanded subdocuments, not unexpanded ones


XI.  MERGESUM

MERGESUM extracts document summaries from WP5 files and writes or
appends them, along with DOS file directory information, to a WP5
secondary merge file.  The result is a database of document summaries.
You can then use the WP5 Merge and Sort functions to manipulate the
output.  You can also use WordPerfect's Notebook program, a part of
Office and Library, to display and manipulate the document summaries.

For consistency with prior versions of MERGESUM, output in either an
old or a new format is available.  The new format, which is the
default, includes information not in a WP50 document summary but found
in a WP51 document summary.  To minimize the problems of changing
format, the new format begins with the same 13 fields as the old
format.

Both the old and new format secondary merge files MERGESUM creates have
the following fields:

           1:     File path
           2:     File name (without extension)
           3:     File extension
           4:     Creation date (as it appears in the summary in new
                  format, but in old  format, WP51 creation dates are
                  converted to the WP50 format, e.g., May 5, 1990)
           5:     Creation date (yy/mm/dd, for easier sorting)
           6:     File date (yy/mm/dd) from DOS directory
           7:     File size (bytes, 7 column field, right justified)
           8:     Descriptive Filename (for WP51 summaries in old
                  format, this is Document Name - Document Type; in new
                  format it is just Document Name)
           9:     Subject/Account (WP50), or Subject (WP51)
          10:     Author
          11:     Typist
          12:     Comments (WP50) or Abstract (WP51)
          13:     Volume Label

The new format has the following additional fields:

          14:     Document Type (blank for WP50 summaries)
          15:     Account (blank for WP50 summaries)
          16:     KeyWords (blank for WP50 summaries)
          17:     Version Number of document (5.0 or 5.1)

If, for example, you wanted a report listing, in three columns, the
full file name, the creation date in yy/mm/dd form, and the Descriptive
Filename, you would use a primary merge file like this:


^F1^^F2^.^F3^[Tab]^F5^[Tab]^F8^


(After the merge output file is created, replace hard page breaks by
hard returns.  Or use ^N^P^P at the end of the primary merge file to
avoid hard page breaks.)

You can replace the existing comment/abstract field by a new one
consisting of, roughly, the first 400 characters in the document.  One
option (-B) causes this replacement only if the existing
comment/abstract field is blank (as it will be if you use long file
names in WP51 but do not otherwise use document summaries).  Another (-
R) causes this replacement for every file with a document summary.
Neither option has any effect on documents that have no document
summary at all.  Other options address documents without summaries.

By default, the secondary merge file does not include WP5 document
files that lack document summaries.  However, the filename, file date,
file size, volume label, and version number for these files are
available.  One option (-S) writes this information to standard output.
You can also choose to include records for these files in the secondary
merge file, using just the DOS file directory information (-A) or also
including the first roughly 400 characters of the document text as the
"comments" or "abstract" (-C).

MERGESUM recognizes date information in the default format for the U.S.
language version; it also recognizes European format written dates
(e.g., 3 March 1990) and months written in French, Dutch, and Spanish.
Where MERGESUM creates a written date for field 4 in the output
secondary merge file, the language is always English.  Where MERGESUM
creates a written date for field 4 from a WP51-format document summary
and the date information format in the document summary differs from
the U.S. language default of mm-dd-yy, the result will be incorrect, as
will be the result in field 5.

MERGESUM permits u se of an "indirect" input file specification.  If an
input file name on the command line is preceded by @ (e.g.,
@c:\wp50\flist), the file is not a WP5 document, but an ASCII text file
containing a list of input file specifications, one per line.  (If you
want to use MERGESUM on a WP5 file whose name begins with @, you must
specify that file in an indirect file, not on the command line.)


Usage:  MERGESUM Infile [Infile] -oOfile [Option] [Option]

                 Up to 5 Infiles, which may include wildcards.

                 If Infile is specified as @Infile, infile is an ASCII
                 text file containing a list of filenames

                 -oOfile the secondary merge output file


                 Options: (separated by blanks, e.g., -N -U, or single
                          letter options, but not -D, can be combined,
                          as -NU)

                 -N      do NOT use the New output format

                 -U      Update the output file (appends to the output
                         file if it already exists, but does not check
                         for duplicates)

                 -A      include All WP5 files in Ofile, even if they
                         have no document summary.

                 -C      like -A, but includes the beginning of the
                         document text as Comments or Abstract for
                         those files lacking a document summary.

                 -B      replace Blank comment/abstract fields by the
                         beginning of the document.

                 -R      Replace all comment/abstract fields by the
                         beginning of the document.

                 -Dmmddyy or mmddyyyy
                         Process only files dated mmddyy or later.  If
                         yy, century is 19.  For months, days, or years
                         less than 10, initial zero must be specified
                         (e.g., 060991).  Year must be greater than
                         1979 and less than 2100.

                 -S      information on files with no summaries written
                         to Standard output.

                 Note:  You can use -S along with -A or -C.


          Example

        MERGESUM c:\memos\*.* c:\notes\*.* -oe:\admin\mydocs -CRU -d010191

          This example processes all the files with DOS file dates
          (i.e., last changed dates) of January 1, 1991, or later in
          subdirectories memos and notes on drive c:, adding the output
          to the existing secondary merge file c:\admin\mydocs (or
          creating a new file of that name if one does not already
          exist).  Files are included in the output whether or not they
          have document summaries (-C).  In all cases, the
          comment/abstract field in the output consists of the first
          400 characters in the document file (-C for documents without
          document summaries, -R for documents with document
          summaries).

WPDOCS.NB, written by Barry Zimmerman and distributed with WPTOOLS by
Mr. Zimmerman's permission, gives a very nice display of MERGESUM old
format output in WordPerfect's Notebook program.  To create a Notebook
file, simply designate (a copy of) WPDOCS.NB as the MERGESUM output
file, using the -U option.  WPDOCS2.NB is similar, but is designed for
the new output format.


XII.  PRINTIT

PRINTIT has nothing to do with WP5 and does no printing.  It formats
ASCII text files for printing.  Many WPTOOLS programs write output to
standard output by default.  This output is unpaginated and has no left
margin.  Sending it directly to your printer will produce less than
ideal results.  PRINTIT reads standard input, paginates it, puts a
heading (with date, page number, and optionally a title) on each page,
and writes it to standard output.  It does not use any printer control
codespages are filled with blank lines where necessary.  By default,
it provides no left margin, assumes the page length is 66 lines, and
puts 60 lines of text on the page.  You can specify a left margin on
the command line, and you can clone the program to change the default
left margin, the page length, and the last printing line.  The default
page length and bottom line are suitable for most printers.  For
printers such as the HP LaserJet, you will want to clone the program to
change the number of lines of text on a page.

PRINTIT does NOT write anything to the printer. It writes to standard
output.  You can redirect its output to the printer, or you can
redirect its output to a file and copy the file to the printer.


Usage:  PRINTIT ["title"] [-Option]

                  Input from standard input

                  Output to standard output

                  Title appears on each page of the output.  Enclose
                  the title in double (") or single ( ', but NOT ` )
                  quotes if it contains blanks.  If the title includes
                  one kind of quotation mark, use the other to enclose
                  it.


                  Options:

                  -?      Help

                  -n      n is 0-20, the number  of columns to offset
                          the output from the left edge.

                  -C      Clone for page length, bottom line, offset
                          (number of blank columns to insert before the text).

                          Cloning is prompted -- just follow the
                          directions.  Cloning overwrites the
                          executable file with a modified version. If
                          you use DOS 2.x, you must have PRINTIT.EXE in
                          the default directory.  If you use DOS 3.x or
                          later, PRINTIT will find itself under
                          whatever name you use for it.

PRINTIT is based on code in Software Tools in Pascal, by Kernighan and
Plauger.  The cloning routine is David Doty's WritExec, which is based
on David Dubois' AutoInst.  Because of the origins of the program, it
is not subject to the limitations of the WPTOOLS license provisions.
Anyone may use PRINTIT without paying the WPTOOLS license fee.


XIII.  PRSFONTS

PRSFONTS lists the fonts available in a WP5 PRS (or WRS) file.  This is
useful if you have a laser printer and create numerous PRS files.
PRSFONTS can number the list, starting with zero.  These numbers are
the basis for the ID numbers you must supply to an HP LaserJet Series
II printer, and perhaps other printers, if you download soft fonts from
the DOS command line, rather than relying on WP5 to download them.


Usage:  PRSFONTS Infile [Ofile] [-N]

                  Infile is a WP5 PRS (or WRS) file.  If no extension
                  is supplied, extension PRS is assumed.

                  Output is written to standard output unless Ofile is
                  specified.  If it is specified, output is in WP5
                  format.

                  -N      Number the fonts.


XIV.  STYLIST

STYLIST produces a list of up to 1000 styles in document files and
style libraries.  The list includes the filename, the name of the
style, the letter P (for paired), the letter O (for open), or the
letter T (for ouTline) to indicate the type of style, and the style
description.  By default, the output is sorted by filename and within
filename by style name.  Other sorting options are available.


Usage:  STYLIST Infile [Infile] [-oOfile] [-sortoption]

                  Up to 5 Infiles may include drive, directory,
                  wildcards.

                  Output to standard output, unless Ofile is specified
                  (with -o).  If Ofile specified, output is in WP5
                  format.  WP5 formatting sets left and right margins
                  to 0.5".  Tab settings based on assumption of 10
                  pitch monospaced font.

                  Sort options (default is sort by filename):

                  -N      No sort
                  -D      Sort on style Description
                  -M      Sort on style naMe
                  -T      Sort on style Type (Paired, Open, ouTline)
                  -E      Sort on file Extension

          Example: STYLIST c:\wp\*.sty c:\wp\*.doc -D

          lists styles in all sty and doc files, sorted by description.


XV.  STYLEUSE

WP5 styles are stored in the document prefixyou see the styles stored
there listed when you call up the list of styles.  When you use a
style, style on and style off codes are inserted into the document;
between those codes go the codes which make up the body of the style.

By default, STYLEUSE produces two lists, a list of the styles actually
found in the text of a document (whether or not they are still in the
document prefix), and a list of the styles found in the prefix but not
found in the text of the document (which usually means not used in the
document).  STYLEUSE also can delete unused (or all) styles from the
prefix.  And it can delete the style on and style off codes from the
document itself, leaving the codes which make up the body of the style.

Deleting styles makes the document file smaller.  If styles are deleted
from the prefix, the text is unaffected, although the deleted styles
can no longer be chosen from the style menu.  But you can read the
styles into the document prefix again from a style library.  If you
delete the style on and style off codes, you can no longer change the
document by editing the stylethe codes added by the style are frozen,
in the sense that they have the same status as any other codes you
added to the document, since WordPerfect no longer knows the codes were
added by a style.  Therefore, you should not delete styles from the
body of a document until you are very sure you do not want to change
the document by changing the styles.

STYLEUSE will not process a document file that has no text.  A document
without text is probably a style library, and you probably do not want
to delete styles from the prefix of a style library.

Usage:  StyleUse Infile [Ofile] [-Option] .. [-Option]


                 Infile:  The input WP5.x file.  May include wildcards
                          (?,*)

                 Ofile:   Output file. Not used with wildcards or if
                          none of the delete options is selected.

                 Options: (separately as, e.g., -N -U, or combined,
                          e.g., -NU)

                 -N      do Not list styles.
                 -U      delete Unused styles from prefix
                 -S      delete all Styles from prefix
                 -D      delete style information from Document body

                 The following options are identical to options in
                 FIXPRE.  See the FIXPRE documentation for further
                 explanation.

                 -K      kills the backup if no ofile specified
                 -T      output gets Time and date of input file
                 -A      process wildcard files only if archive bit set
                 -E      process wildcard through directory trEE

                 The list of used and unused styles is written to
                 standard output, and may be piped or redirected as
                 needed.

If either the U or the S option is chosen, STYLEUSE will delete from
the document prefix not only the styles to be deleted, but also data
packets marked as deleted, just as FIXPRE does (but STYLEUSE does not
do this if the U option is chosen and there are no unused styles).

If all you want to do is delete all styles from the prefix, FIXPRE is a
better choice.


XVI.  TARGETS

TARGETS lists the automatic reference targets and references in a WP5
document.  It first lists the targets by name, with the number of times
that target name is used.  Targets not referenced in the document are
marked by an asterisk.  The list of targets is followed by a list of
references, which includes the name of the target referenced, the type
of reference, and the number of references of that type to the
particular target.  References to targets not found in the file are
marked with an asterisk.  By default, the line after the listing for
each target or reference lists the page numbers on which that target or
reference can be found.  (For targets or references in notes, the page
listed is the page where the note call appears.)


Usage:  Targets  Infile  [-n]

                  Infile is a WP5 document.
                  Output is written to standard output.
                  -n      Do not include page numbers in output



XVII. WHATPTRS

A single ALL file can be used to create PRS files for a number of
different printers.  WHATPTRS lists the printers for which the input
ALL file can create drivers.  Each line of output begins with the name
of the input ALL file, followed by the name of a printer.  The program
can usually sort by printer name.  Whether WHATPTRS can sort all the
printer names depends on how many printers there are in the input ALL
files and on the amount of memory available.  If you cannot sort the
full collection with WHATPTRS itself, you could pipe unsorted output to
the DOS SORT routine.  The WHATPTRS sort is not sensitive to case;
because the DOS sort is sensitive to case, the -L option is available
to put printer names into all lower case.  Some printer names in ALL
files begin with *, to indicate that the source of the printer
information in the file is not WordPerfect Corporation.  To permit a
proper sort, WHATPTRS moves the * from the beginning to the end of the
printer name.

Usage:  WHATPTRS Infile Infile [-oOfile] [-option] [-option]

                  Up to 5 Infiles.  Each may include wildcards.  ext
                  defaults to ALL.

                  Output to standard output unless Ofile is specified.


                  Options:

                  -oOfile Output WP5 file.

                  -S      Sort output by printer name.

                  -L      output Lower case printer  names.

                                  (S and L may be combined as -SL)


Examples        WHATPTRS *|PRINTIT>prn

                  Prints a list of printers in all the ALL files in the
                  default directory.

                 WHATPTRS * -L|Sort /+15|MAKETABS -oOutFile -M

                  Produces (in OutFile) an alphabetically sorted list
                  of printers in all the ALL files in the default
                  directory, in the form of a WP5 file formatted with
                  tabs rather than spaces.  You can get the same
                  results with

                          WHATPTRS * OutFile -S -L


                 WHATPTRS * -L|find "panasonic" >prn

                  Prints the names of all Panasonic printers in the ALL
                  files in the default directory, together with the
                  name of the ALL file applicable to each printer.


XVIII. WP5LOOK

WP5LOOK is a file browsing program for WP5 document files (but it will
also browse other files).  It displays WP5 document files listed on the
command line, supplied in response to prompts, selected from pick
lists, or piped from another program, such as a file uncompressor.  The
document summary is displayed if it exists.  The program pauses as each
screen is displayed.  If there is more information in the document, you
can page forward.  Generally, you can also page backward, although only
for a few screens (the number varies, but is never more than nine).  At
each screen, you also have the options of going back to the beginning
of the file (Home), jumping to the end of the file, going on to the
next file, adding to the list of files to browse, or quitting the
program.  (If there are no more files, the next file and quit options
produce the same results.)   If you chose the file from a pick list,
you can return to the pick list to select another file.  You can also
search for strings in the displayed file.  And you can "dump" the
inform    ation on the screen to an ASCII text file.  The top line of the
display indicates the corresponding WordPerfect page numbers.

Because WP5LOOK will accept piped input, it can be used with many file
manager and shell programs to display files.  If the program with which
you want to use it allows you to specify the file browser, you simply
specify WP5LOOK.  Some programs do not allow you to specify the file
browser, and then some ingenuity is required.  For example, QFiler, an
excellent file management program, assumes the file browser is
List.com.  You can use WP5LOOK with QFiler by renaming WP5LOOK.EXE as
List.com.

WP5LOOK does not correctly format files, but it usually does a
reasonable approximation.  The program is designed for use when you
need to rummage through one or more WP5 documents quickly (or when not
enough memory is available to use WP5 itself), not for when you care
about the details of formatting.  Here are some of the formatting
problems:

         By default, WP5LOOK reformats documents so that they fit
         within the confines of the screen width (although an option
         allows lines of up to 254 characters, so that you must scroll
         the screen to see the entire line).  Paragraphs are
         reformatted by default to a 75-character line, although you
         can change the number; the right margin is ragged, because
         words are not split at hyphens.  Margin changes and line
         spacing are ignored.  Multiple columns are placed end to end.

         Everything is displayed in the same font.

         Tab settings are ignored.  Ordinary tabs are displayed as five
         spaces, more exotic tabs as a single space.  Indent codes are
         all treated as ordinary, not left-right.  An indent code is
         represented as five spaces.  Indented text is indented five
         spaces, regardless of how deeply the text is indented.

         Characters a standard IBM PC cannot display and overstruck
         characters are displayed as upsidedown question marks.

         Footnotes and endnotes are displayed embedded in the text
         where they occur.  They are set off by line breaks and
         enclosed between **FN: and **EFN.

         Initial codes are ignored.

         The contents of all "boxes" (except text boxes) is ignored,
         although the fact that a box exists is displayed, along with
         the caption (and text where there is any).

         Tables are not displayed in normal table format.  Instead, the
         cells are listed in sequence, identified by row and column.
         Certain kinds of cell contents are not displayed.


If a file selected for viewing is not a WP5 document file (and if you
are not using piped input), the file is also displayed -- but in a very
different way, with a different kind of display and a different set of
commands.  This alternative display mode is described below.


Usage:  WP5LOOK  [options] [Infile] .. [Infile]


         Options and Infiles may appear in any order.  Infile may
         include wildcards.  You may specify as many Infiles as fit on
         the command line.  If no input file is specified and input is
         not piped to the program, you are prompted for a single file
         specification.  If the input file specification you supply in
         response to the prompt contains wildcards, you are asked
         whether you want to view all files matching the file
         specification.  If you response N (for no), a list of files
         matching the file specification is displayed.  You may browse
         this list using standard cursor movement keys and select a
         single file to browse by hitting the Return key while the file
         is highlighted.

         Options

         -R(Y/N)       Reformat text.  The default is RY.  If you
                       select RN, text is not reformatted, and the
                       display may be scrolled so that you can view
                       long lines.

         -P            Pick list.  If you have wildcard file
                       specifications on the command line, -P produces
                       a pick list (for the first file specification,
                       and later for the others when they are
                       encountered as files are processed) instead of a
                       display of the first file matching the wildcard
                       specification.

         -M            Force Mono.  If you have a color computer system
                       and do not like WP5LOOK's color choices, use
                       this option.

         -Wnn          Screen Width in characters (default is -W75).
                       This option is like key W, discussed below.  It
                       has no effect if you select RN.

         -H            Displays help messages.

         -?            Same as -H.

The command line options (other than -H and -?) may also be provided by
means of a configuration file.  On startup, WP5LOOK looks for a
configuration file, WP5LOOK.CFG, in the default directory and then, if
you are using DOS 3.0 or greater, in the directory where WP5LOOK is
located.  The configuration file is an ASCII text file that includes
one or more of the command line options, one per line, exactly as they
would appear on the command line.  (If you include an option in the
configuration file and also on the command line, the command line
option overrides the option selected in the configuration file.)

Once you have started the program, operation with WP5 files is prompted
and for the most part intuitive.  The bottom line on the screen
indicates which keystroke options may be chosen (except for W, D, P,
and Alt-F, which are never indicated explicitly).  In some cases, you
can use different keystrokes to achieve the same result.  The prompt
does not indicate that flexibility.  Here is the full set of options,
only some of which may be available at particular screens:

         Move one screen forward   PgD, [space], [return]
         To last screen in file    [End]
         Move one screen Back      PgU, b, B
         To first screen in file   [Home]
         To next file (or pick
          list if you started
          there)                   N
         New file spec             Alt-F
         Scroll right (left)       -> (<-)
         Scroll full left          Ctrl <-
         Exit from the program     Q, [esc], F7
         Search (exact match)      S
         Find (match ignoring case)F
         Line Width: 10-80 chars   W
         Dump screen to file       D
         Display Pick List         P, F5

         Move one screen forward   PgD, [space], [return]
         To last screen in file    [End]
         Move one screen Back      PgU, b, B
         To first screen in file   [Home]
         To next file (or pick
          list if you started
          there)                   N
         New file spec             Alt-F
         Scroll right (left)       -> (<-)
         Scroll full left          Ctrl <-
         Exit from the program     Q, [esc], F7
         Search (exact match)      S
         Find (match ignoring case)F
         Line Width: 10-80 chars   W
         Dump screen to file       D
         Display Pick List         P, F5

         Move one screen forward   PgD, [space], [return]
         To last screen in file    [End]
         Move one screen Back      PgU, b, B
         To first screen in file   [Home]
         To next file (or pick
          list if you started
          there)                   N
         New file spec             Alt-F
         Scroll right (left)       -> (<-)
         Scroll full left          Ctrl <-
         Exit from the program     Q, [esc], F7
         Search (exact match)      S
         Find (match ignoring case)F
         Line Width: 10-80 chars   W
         Dump screen to file       D
         Display Pick List         P, F5

Displaying Pick Lists

Choosing P (or F5) displays the pick list generated from the most
recently evaluated wildcard file specification.  Normally this will be
the wildcard specification that resulted in the file you were viewing
when you chose P, but it will not always be.  Note also that if you
used a pick list to select the file currently displayed, the N command
returns you to a pick list.

New File Spec

Alt-F allows you to add a file specification to those you are already
browsing.  The prompts work in much the same manner as the prompts
resulting from omitting file specifications from the command line.
Alt-F in effect interrupts the sequence of files to be browsed and
begins a new sequence.  After the program finishes browsing the files
resulting from Alt-F, it returns to the sequence it had temporarily
abandoned.

Searching and Finding

Search and Find prompt for a search string.  Search looks for an exact
match to your search string.  Find looks for a match but ignores
differences in case.  (Searching for cat will not match CAT, but
Finding cat will match CAT.)  If you have previously done a Search or
Find in the same WP5LOOK session, you will be shown your previous
search string.  If you want to use the same search string, simply hit
<enter>.  You can also edit the search string.  If the first keystroke
you hit is a character rather than an editing key, the previous search
string will disappear, and you simply enter (and edit) a new one.  If
you are using the RN option, the match may not be located in the
visible part of the screen, but you can scroll the screen to view it.

Search and Find search from the currently displayed screen to the end
of the file.  The first screen containing a match is displayed, with
each line containing the match highlighted.  After each match, you are
asked whether you want to continue looking for the same string.  To
search the entire file, you must start the search at the beginning of
the file (which you can reach with the Home key).

Leading and trailing blanks in the search string can be used if you
want to limit searches to matching whole words.  For this purpose,
screen display lines of your WP5 document file are treated as beginning
and ending with blanks.  The search string may include blanks, so you
can search for phrases (limited to 60 characters).  However, matches
are limited to a single lineif a phrase is split between lines in the
display, you cannot match it.

The search string can be edited using the cursor keys and other keys.
WordStar editing commands are also available.  A complete list of
editing commands follows (commas indicate alternatives):

         <Enter> (<Return>)       Accept line
         <Esc>                    Quit without changing line; don't
                                  search
         <Left>,<CtrlS>           Cursor left one character
         <Right>,<CtrlD>          Cursor right one character
         <CtrlLeft>,<CtrlA>       Cursor left one word
         <CtrlRight>,<CtrlF>      Cursor right one word
         <Home>,<CtrlQ><S>        Cursor to line beginning
         <End>,<CtrlQ><D>         Cursor to line end
         <Del>,<CtrlG>            Delete character at cursor
         <Bksp>,<CtrlH>,<CtrlBksp>Delete character to left of cursor
         <CtrlEnd>,<CtrlQ><Y>     Delete to end of line
         <CtrlY>, <CtrlX>         Delete entire line
         <CtrlHome>               Delete from beginning of line
         <CtrlT>                  Delete word to right of cursor
         <Ins>                    Toggle insert mode on or off.  Size
                                  of cursor indicates the mode.
                                  Default is insert mode off.
         <CtrlR>,<CtrlQ><L>       Restore original contents of line
                                  after editing


These editing commands work with responses to other prompts as well.


Dumping Screens to a File

When you type a D to dump a screen to an ASCII text file, you are asked
for a file name.  The next time you type a D, the same file name will
be proposed.  Hit Return to append to that file, or enter a new file
name to use a different file.


Piped Input

Piped input can present problems when more than one file is piped.
Suppose you want to pipe all the files in MYDOCS.ZIP to WP5LOOK, using
Phil Katz's PKUNZIP program.  The command line would look something
like this:

         >PKUNZIP -c MYDOCS |WP5LOOK

This works well if all the files in MYDOCS.ZIP are WP5 document files.
It will also work well if all the files that are not WP5 document files
are extracted before the WP5 document files are extracted.  But if the
WP5 document files are interspersed with the other files, there can be
a problem.  The reason is that when input is piped, WP5LOOK can locate
the beginning of a WP5 document file, but it cannot locate the end of a
WP5 document file.  So once WP5LOOK begins processing a piped WP5
document file, it will continue processing until either the end of all
piped input or the beginning of the next WP5 document file.  Thus an
ASCII file which follows a WP5 document file in a stream of piped input
will be displayed as part of the preceding WP5 document file.  The same
is true of binary files, such as EXE and COM files.  However, binary
files may contain information that will cause WP5LOOK to behave in very
strange ways.


Browsing non-WP5 files

If WP5LOOK finds a file that is not a WP5 document file, it displays it
in an entirely different way -- the screen looks different, and there
are different commands.  The display is not page oriented. Instead, you
can simply scroll backwards and forwards.

Here is a summary of the commands:

Cursor movement:  The cursor arrow keys move you one line, or one
column, in the appropriate direction.  <CtrlRight> and <CtrlLeft> move
ten columns right or left.  <Home> moves to the first column, <End>
moves to display the end of the longest line on screen.  <PgUp> and
<PgDn> scroll one screen up or down.  <CtrlPgUp> and <CtrlPgDn> move to
the beginning or the end of the file.  (For all these movements,
WordStar-like commands also work.)  To jump to a particular line, use
<CtrlJ><L> and you will be prompted for the line number.

Searching and Finding:  To search for a string, use S or F (or
<CtrlQ><F>).  You will be prompted for a string, as in WP5 display
mode.  After you have entered the string, you will be prompted for
options; enter as many as you need.  Option U yields a case-insensitive
search (like Find in WP5 mode); otherwise the search is case sensitive
(like Search in WP5 mode).  Option G searches the entire file, instead
of just from the cursor.  Option B searches backward instead of
forward.  To repeat the last search, use <CtrlL>.

Other Commands:  <CtrlH> toggles between the normal ASCII display mode
and hex mode.  <CtrlQ><H> strips the high bit of each character, which
is useful for viewing WordStar files.  <CtrlQ><T> toggles the display
of tabs between spaces and tab characters.  <esc>, <Q>, and <F7> exit
from the program.  <N>, <P>, and <F5> all exit from the display of the
particular file;  if you selected the file from a pick list, you are
returned to the pick list, and otherwise you move to the next file.


Memory Requirements

WP5LOOK takes a fair amount of memory.  Loading the program requires
nearly 166K, and once loaded the program demands additional memory.  If
not enough is available to meet the demand (the amount demanded depends
on the dimensions of your screen display), the program exits with an
explanation.  Beyond that point, insufficient memory may affect program
functions.  The number of screens you can move backward is limited by
memory -- with tight memory constraints, there may be no ability to
move backward.  Display of non-WP5 files requires additional memory,
which may not be available.  It is even possible there will not be
enough memory to display a pick list under certain circumstances.

Versions of WP5LOOK earlier than 4.0 (which was introduced with Version
5.1 of WPTOOLS) have more limited capabilities and require   
significantly less memory.  In case you need the functions of WP5LOOK
but do not have enough available memory to use Version 4.0 or later, an
earlier version is included with the registered release of WPTOOLS 5.2



XIX.  WPGSIZE

WPG graphics files identify the dimensions of the "image coordinate
space" for the graphics they contain, but WP5 never displays that
information.  WPGSIZE extracts that information from the file and
displays the full path name of the file, followed by the width and
height of the image coordinate space in inches.  Normally, you would
use a wildcard file specification.  By default, the output is then
sorted by filename.  It can also be sorted by directory (and by
filename within directories).

WPG graphics appear with least distortion if the dimensions are in the
same proportions as the dimensions of the image coordinate space.  In
principle, WP5 can automatically scale the dimensions of a graphic to
these proportions, but there may be problems.  The information WPGSIZE
provides can be used to cope with those problems.


Usage:  WPGSIZE infile [-Option] .. [-Option]

                 Infile is a WPG file, but may include wildcards.
                 Default extension is WPG

                 Output to standard output


                 Options:

                 -E      process wildcard through directory trEE
                 -T      Tab rather than spaces in output

                         By default, the full file name is separated
                         from the dimensions by spaces in the output.
                         If you want to reformat (or sort) the output
                         in WP5, it is convenient to replace the spaces
                         by a single tab.  You could use MAKETABS to do
                         this, but the -T option does it directly.


                 Sort options (default is sort by filename):

                 -N      No sort
                 -D      sort on Directory name


         Example:

                 >WPGSIZE c:\* -T -E

                         Lists all WPG files on drive c, with tabs in
                         the output list instead of spaces.  Output is
                         sorted by filename.


WPGSIZE can process only 2000 WPG files at a time if you want sorted
output.  If you want a list with more than 2000 WPG files, use the -N
option; if you want a sorted list, use another program to do the
sorting.


XX.  WPSNOOP

WPSNOOP displays information concerning its input file(s).  If WPSNOOP
recognizes an input file as a WPCorp-type file, it at least identifies
the WPCorp product to which the file is related.  If the file is
recognized as a WordPerfect file (and it is not for versions earlier
than 5.0), WPSNOOP reports on the type of file.  If the file is a WP5
document file, WPSNOOP lists the document summary if one exists, as
well as the required PRS file and the printer.  If the file is a WP5
macro file, WPSNOOP lists the macro description.  Used with a wildcard
input file specification, WPSNOOP can therefore provide useful
identification for many of the files.

For WP5 document files and setup files, WPSNOOP optionally provides
considerably more information, although most WP5 users will not find
this information useful.  WPSNOOP can display information about the
file prefixwhich data packets are contained in the prefix, where they
are located and how large they are.  (Data packets are part of the
organizational structure of the file prefix; the term data packet is
WPCorp's.)

Version information is displayed for various kinds of WPCorp files, and
it may not be what you expect.  For example, the version number for
WP50 macros is 1.0, and for WP51 macros it is 1.1.  PRS files and ALL
files associated with WP51 as originally released have the version
number 3.3.

WPSNOOP will display similar information for files associated with
recent versions of some other WPCorp products.  The information,
however, is sometimes misleading.  In certain cases, the files used by
WPerf and other WPCorp programs are actually identical.  In
distributing files for other programs, WPCorp has simply changed the
name of the appropriate WPerf file, leaving the file identified
internally as a WPerf file.  In those cases, WPSNOOP will misidentify
the WPCorp product with which the file is associated.

Usage:  WPSNOOP infile [infile] [-oOfile [-V]

                 Up to 5 infiles, which may include wildcards.

                 Output is written to standard output, unless Ofile is
                 specified (with -o).  If Ofile is specified, output is
                 in WP50 format.

                 -V option for Verbose report, which includes full map
                 of data packets.

Limitations:

With the Verbose option, WPSNOOP may not provide information about a
few indexes which technically exist but provide no information.  The
end of useful information is signalled (generally) by an index
identifying a data packet of the "end of prefix" type.  All data
packets after the first such data packet are identical (or at least
provide no useful information).  WPSNOOP reports on only the first of
these, even though others may exist.  If the index pointing to the "end
of prefix" data packet has an index number less than 4, enough
additional identical indexes exist so that the last of them is No. 4.




 . . . . . . . . . . . .UPDATE NOTES . . . . . . . . . . . .


Information about changes in WPTOOLS is contained in the Whats.New file
distributed with the programs.

                              GETTING HELP

Help in using WPTOOLS is available by mail, telephone, and several
forms of E-mail.  The best time for telephone calls is 8pm-11pm Eastern
time.  At other hours, you are likely to reach only an answering
machine, but we return calls.  E-mail is recommended.

David Seidman
Software by Seidman
2737 Devonshire Pl. NW
Washington, DC 20008
202/462-7381
FAX: 202/462-8601
CompuServe: [70441,2414]
GEnie: D.SEIDMAN

I monitor several networked WordPerfect BBS conferences more or less
regularly, as well as the WPSGA forum on CompuServe and the WordPerfect
RT on GEnie.  You can leave questions or suggestions for me in any of
these places, or you can send E-mail on CompuServe or GEnie.  The
networks I monitor regularly are listed below, along with the BBS I
usually call for each.  Note that this information can become outdated
very quickly.  BBSs and networks are not the world's most stable
entities.

    Smartnet             (Arlington Software Exchange, 703-532-7143)
    MetroLink/RIME       (D.C. Information Exchange, 703-836-0748)
    Fido                 (Free Spirit, 301-283-8917)

                          LICENSE INFORMATION


WPTOOLS is not in the public domain.  Both the collection and the
individual programs are fully protected by copyright.  (WPDOCS.NB and
WPDOCS2.NB are not considered part of WPTOOLS and are in the public
domain.)

You are granted without charge a license which permits (a) use of the
programs for a period of 30 days for evaluation and testing; (b) making
copies for distribution to others without charge, provided the programs
and the accompanying documentation are distributed together and without
modification; (c) posting the programs, together with the accompanying
documentation, on electronic bulletin board systems.  The permissions
granted in this paragraph do NOT apply to the programs included only in
Supplemental Tools; in particular, you are NOT permitted to distribute
programs in the Supplemental Tools.  (For PRINTIT only, you are granted
without charge a license to use the program for as long as you like.)

Use after the 30 day evaluation and testing period requires payment of
a license fee.  For a single copy (plus necessary archival copies), to
be used on only one computer at a time, the fee is $25.00.  For large
quantities, discounts and site licenses are available.  Write for
information.  Any license for which payment is properly made is valid
for this version of WPTOOLS and all subsequent versions.

What do you get for your license fee?  You get the latest version of
the all the WPTOOLS programs, including the programs in Supplemental
Tools, which are not distributed for evaluation.  You get permission to
use the programs and the warm feeling that you are not violating the
copyright laws.  I will send you notification of new versions.  And if
you let me know about any problems you have with the programs, I will
try to solve them.

Users groups and other not-for-profit organizations may distribute
unmodified copies of WPTOOLS (not including Supplemental Tools),
together with its accompanying documentation, for a fee to cover
duplication and related costs, but not to exceed $6.00.  Your payment
of such a fee does not eliminate the requirements concerning payment of
a license fee.  Certain organizations may have been granted permission
to distribute the program for a fee larger than $6.00, the larger fee
to include the license fee for a single copy.  If the organization from
which you received a copy of the program has been granted that
permission, it should tell you so.

The United States Department of Justice is granted a license, without
payment of fee, for all official use of WPTOOLS, including the
Supplemental Tools.


                          WARRANTY INFORMATION


These programs are distributed without warranties of any kind, express
or implied, including, but not limited to, the implied warranties of
merchantability and fitness for a particular purpose.

No representation or other affirmation of fact, including but not
limited to statements regarding suitability for use, or performance of
the programs, shall be or be deemed a warranty by the licensor for any
purpose, nor give rise to any liability or obligation of the licensor
whatever.

In particular, no statement in program documentation shall be deemed a
representation or warranty that the programs will perform in any
particular manner, or perform in any manner whatsoever, or that the
programs are suitable for any particular use or any use at all.

                                Invoice


David Seidman
Software by Seidman
2737 Devonshire Place, N. W.
Washington, D. C. 20008

                                              DATE:

SOLD TO:

__________________________
__________________________
__________________________


Ŀ
 Description                               Price              
                                                              
Ĵ
                                                              
 License for WPTOOLS5                       $   25.00         
                                                              
 additional licenses @ $25.00                _____.__         
                                                              
                                                              
                                                              
                                                              


                                Total:       $_____.__
 D.C. Residents add 6% D.C. Sales Tax:          ___.__

                         Total Charge:       $_____.__


Make checks payable to Software by Seidman.  Please mark checks
"WPTOOLS52".

For Credit Card orders, Circle one:   VISA   MasterCard  Diners Club

Card Number:     __________________________  Exp. Date: _____________

Name on card:    __________________________________________________

Signature:       __________________________________________