PSFMT(1) PSFMT(1) LOCAL NAME psfmt - generate PostScript program to format text SYNOPSIS psfmt [ options ] [ files ] DESCRIPTION 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 -na. -mmacros 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: January 15, 2025 PSFMT(1) PSFMT(1) LOCAL -rreg[=val] 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. -opagelist 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. -pprolog 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. -upprolog Specify the PostScript prolog to be used for underlaying text, instead of the standard one. (See also ENVIRONMENT and FILES below). ENVIRONMENT 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: January 15, 2025 PSFMT(1) PSFMT(1) LOCAL 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. EXAMPLES The file text could be formatted and sent to the printer with the command: 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 FILES directory containing standard macro packages /opt/psfmt/postscript/psfmacs general PostScript prolog file /opt/psfmt/postscript/psfmt.pro underlay text PostScript prolog file /opt/psfmt/postscript/psfmt_uly.pro AUTHOR A. Adamson SEE ALSO pacc(1). The psfmt Text Formatter, Version 2.4, User Guide and Reference Manual. DIAGNOSTICS 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 self-explanatory. BUGS There are probably quite a few, but none known. - 3 - Formatted: January 15, 2025