User`s guide

4-136
Guide to Printers and Printing
The flags values used on the command line, a1, Pasc, fp, z1, p12, scourier, C, and N3,
can be seen in the section of the mail labeled FLAG VALUES.
Of more interest is the section of the mail labeled PIPELINE OF FILTERS. Here the pipeline
of filters determined by piobe and constructed by the shell can be seen. The pr filter will
pre–process the print job (/etc/motd) and send its output to pioformat, the
device–independent formatter driver.
This is a good place to examine how piobe uses the virtual printer definition associated with
the spooler queue named asc. The colon file (which contains the virtual printer definition for
this queue) uses the attribute ia to specify the input data stream pipeline (the PIPELINE OF
FILTERS section above) for ASCII jobs. The value of ia for this queue is:
%Ide/pioformat –@%Idd/%Imm –!%Idf/piof5202 –l%IwL –w%IwW
%f[begijpqstuvxyzEGIJLOQWXZ] %Uh
The lsvirprt command can be used to format ia so it reads as follows:
%Id INCLUDE: (Directory Containing Miscellaneous Modules)
’/pioformat –@’
%Idd INCLUDE: (Directory Containing Digested Data Base
Files)
’/’
%Imm INCLUDE: (File Name Of (Digested) Data Base; Init. By
”piodigest” (mt.md.mn.mq:mv))
’ –!’
%Idf INCLUDE: (Directory Containing Loadable Formatter
Routines)
’/piof5202 –l’
%IwL INCLUDE: (Page Length In Chars, Using Length From Data
Base
(used in pipelines))
’ –w’
%IwW INCLUDE: (Page Width In Characters, Using Width From
Data Base
(used in pipelines))
’ ’
%f[begijpqstuvxyzEGIJLOQWXZ] For Each Flag x on Command
Line:”–xArgument” –>
OUTPUT
’ ’
%Uh Indicate to piobe: Pass the Following Attributes to
subsequent printer commands
The %Id resolves to /usr/lib/lpd/pio/etc, the directory that contains miscellaneous
modules. The ’/pioformat –@’ is appended, without the single quotes, to the previous
string, becoming /usr/lib/lpd/pio/etc/pioformat, otherwise known as the full path
name to the formatter driver. The –@ after pioformat is a flag to the pioformat command
which, in this instance, specifies the full path name of the digested database file to be
accessed.
The value of the –@ flag is specified by the concatenation of %Idd, ’/’, and %Imm. The
value of %Idd is defined in the colon file as %I@5/ddi. The @5 is an automatic variable
whose value is /var/spool/lpd/pio/@local, so %Idd resolves to
/var/spool/lpd/pio/@local/ddi. The ’/’, without the single quotes, is appended to
that path. %Imm is defined in the colon file as mt.md.mn.mq.mv, five other virtual printer
attributes. These five attributes define:
mt – Printer type
md – Output data stream type
mn – Device name
mq – Queue name (name of a queue stanza in /etc/qconfig)
mv – Virtual printer name (name of a corresponding device stanza in /etc/qconfig)