Sidebar: A printcap Entry Dissected
The following is a printcap entry I set up on one of
I manage. It shows several features of a normal printcap
extended with optional filters. This entry is for a
LaserJet III connected to a Sun SPARCSTATION 10 using
a null modem
cable attached to serial port A.
lj|lj3|laser jet 3|:\
printcap entries consist of one line of data. Each entry
is separated by a colon. Empty options are allowed,
so that ::
is okay. When the line is too long, a backslash ("\")
the entry to the next lines. For more information, see
The sample entries have the following meanings:
lj|lj3|laser jet 3|: The first entry lists
names or aliases of the printer, each separated by the
("|"). Thus, to use this printer, users may
or lj3. One printer in the printcap should have the
name lp, representing the system's default printer.
lp=/dev/ttya: This is the physical device
the printer is attached to -- in this case, serial port
br#9600: This is the baud rate to use for
serial communications. Note that a "#" is
used between the
br option and its value. This convention for numeric
is comparable to the "=" used for string options.
ms=pass8,opost,ixon,onlcr,crtscts: This option
holds several communications parameters (see stty(1)).
sd=/var/spool/lpd: This is the spool directory.
Files destined for this printer are copied here.
lf=/var/adm/lpd-errs: This is the file to
use for logging errors.
sh: This says that the header page should
not be printed. This is a boolean option and is not
followed by a
value. The value is implied by the option's presence.
mx#0: This tells the largest file printable
in bytes. Setting mx to 0 removes the size limitation.
if=/usr/local/lib/filters/sethp: This is
the input filter to use if no other filter is specified
on the command
line. sethp initializes the printer, then sends the
job unchanged to the printer.
cf=/usr/local/lib/filters/setland: This is
a filter invoked with the -c option on lpr's command
line. setland puts the printer in landscape mode before
the print job.
is another filter, invoked with the -d option. setnomarg
sets the margins as close to the edge of the paper as
changes to a smaller font.
nf=/usr/local/wp/shbin/wpp: This is a filter
installed in printcap by the WordPerfect installation
Some printcap entries include fc and fs options.
These options clear or set bits to fine-tune the serial
used by the print system. I try to avoid using them
if I can, as they
are rather confusing. Information for which bits to
set is spread
among several man pages and include files (the .h
files in the /usr/include directory). The ms option
is usually sufficient for what you want to do.