packages icon

 PSFMT(1)                                                           PSFMT(1)

      psfmt - generate PostScript program to format text

      psfmt [ options ] [ files ]

      The psfmt program reads its input and generates a PostScriptr program
      to format it.  The input is treated as lines containing the text to be
      formatted, except that lines starting with a period (.) or apostrophe
      (') are treated as formatting request or calls to (user-defined)
      macros, and lines beginning with an exclamation mark (!) are used to
      include PostScript code in the output.

      The input comes from the file arguments.  If no such arguments are
      given, the standard input is used. Any file argument consisting of a
      minus (-) is taken to mean the standard input.  If the input is from a
      terminal device, psfmt prompts for its input.  The generated program
      is sent to the standard output stream.  Any error reports are sent to
      the standard error stream.

      The following options may be used.  They may appear in any order, but
      must be given before the first file argument (if any).  For options
      which take an argument, the argument may be given just behind the
      option letter, or may be spaced from it with white space.  Each option
      must start a new command-line argument.

      -w      Produce warning messages (on standard error) for unknown
              requests and bad arguments or in-line functions.  By default,
              such errors are silently ignored.

      -l      Generate output for landscape mode printing.  Normally, the
              output is printed in portrait mode.

      -n      Do not output the psfmt prolog.

      -na     Fill output lines but do not adjust them (no justified right
              margin).  The default output is filled and justified.  This
              option is incompatible with -nf.

      -nf     Do not fill the output lines.  The output will be printed as
              it appears in the output.  This option is incompatible with

              Read the macro package specified by macros.  If a file called
              macros is found, this is used.  Otherwise, the prefix psf. is
              prepended, and the file is looked for in a standard place (see
              ENVIRONMENT and FILES below).

                                    - 1 -           Formatted:  July 3, 2022

 PSFMT(1)                                                           PSFMT(1)

              Initialise the register whose name is reg.  If =val is
              present, the register is set to the value val, otherwise, it
              is set to 0 (zero).  Several -r options may be given.

      -v      Print the version and compilation date of psfmt and then exit.

              Specify which pages are to be printed.  The pagelist is one or
              more page numbers or ranges, separated by commas.  A page
              range is two page numbers separated by a hyphen (-).  The
              pagelist argument should contain no spaces.  The page numbers
              and ranges do not need to be given in order, but within a page
              range, the first page number must be less than the second.  In
              a range, the second number may be omitted, implying all pages
              from the first number to the end of the document.

              Specify the PostScript prolog file to be used, in place of the
              standard one.  (See also ENVIRONMENT and FILES below).

      -u      Print some underlaid text on each page, under the document
              text.  The default underlay text is "DRAFT", printed in an
              outline font.

      -uo     This is identical to "-u".

      -us     This is similar to the "-u" option, but the underlaid text is
              printed in a "solid" font, in light-gray.

      -uttext Specify the text to be underlaid on each page.  This is used
              to change from the default text "DRAFT".

      -uzps   Specify the point-size for the underlaid text.

              Specify the PostScript prolog to be used for underlaying text,
              instead of the standard one.  (See also ENVIRONMENT and FILES

      Three shell environment variables can be used to change the name of
      the directory where macro packages will be looked for, and the
      standard and underlay text PostScript prolog files.

      If the variable PSFMTMACDIR is set, its value will be used as the name
      of the directory where macro files will be looked for, instead of the
      standard place described in FILES below.

      The variable PSFMTPROLOG can be used to name the general PostScript
      prolog file.  Similarly, the variable PSFMTUPROLOG can be defined to

                                    - 2 -           Formatted:  July 3, 2022

 PSFMT(1)                                                           PSFMT(1)

      give the name of the underlay text prolog file.  By default, the
      standard prolog files are expected to be found in the locations given
      in the FILES section below.

      The file text could be formatted and sent to the printer with the

           psfmt text | lp

      The mydoc file can be checked for inconsistencies with the command:

           psfmt -n -w mydoc > /dev/null

      To print only pages 2, 9, 13 to 17, and 24 to the end of the document,
      with the word CONFIDENTIAL on each page, and using the mm macro
      package, the following command could be used:

           psfmt -mm -ut CONFIDENTIAL -o2,9,13-17,24- mydoc | lp

      directory containing standard macro packages

      general PostScript prolog file

      underlay text PostScript prolog file

      A. Adamson

      The psfmt Text Formatter, Version 2.4, User Guide and Reference

      The program is normally silent, ignoring unknown and badly formed
      requests.  Use the -w option to get warning messages.

      There are few "fatal" errors and the messages are intended to be

      There are probably quite a few, but none known.

                                    - 3 -           Formatted:  July 3, 2022