Printer and printer data stream attributes reside in colon files. Colon files reside in the /usr/lib/lpd/pio/predef and /var/spool/lpd/pio/@local/custom/* directories. The /usr/lib/lpd/pio/predef directory contains the predefined database and the /var/spool/lpd/pio/@local/custom/* directory contains the customized database.
The following sections describe the conventions for printer and attribute names and values in colon files.
Colon files in both the predefined and customized databases have five fields (separated by colons) for each attribute. They are:
Following is an example of one line in a colon file:
:023:_w::80
The attribute name is _w, the attribute value string is 80, and the attribute description is stored in message number 23 in the message catalog specified by the mD attribute.
Note: All attribute descriptions are stored in message catalogs. If an attribute has the same description for multiple printers, the attribute in each printer's database can reference the same catalog and message number. If the same attribute name has a different description for different printers, separate message numbers are used.
The following conventions have been established for virtual printer attribute names:
Automatic attributes are names and values that are provided automatically and that cannot be in the database:
@0 | Always a null string. This attribute name can be used wherever an attribute name for a null string is needed. | ||||||
@1 | A string containing the full path name of the file being printed. This attribute name is available only to attributes that define pipelines and attributes included by pipelines. The file being printed will be a temporary file if the -c flag is specified with the qprt command. | ||||||
@2 | An integer containing the number of bytes to be passed through when %x is found in a command string by the piocmdout subroutine (obtained from the passthru parameter passed to the piocmdout subroutine). | ||||||
@3 | An integer value indicating how the printer is attached:
| ||||||
@4 | The full path name of the pio directory whose subdirectories (burst, etc, fmtrs, fonts, predef, trans1, and trans2) contain STATIC data files and utility programs used to configure virtual printers and process print jobs. The directory must be a subdirectory of the directory containing the piobe command invoked by the qdaemon. The value for @4 is normally the /usr/lib/lpd/pio directory. | ||||||
@5 | The full path name of the pio directory whose subdirectories (custom, ddi, dev, and flags) contain DYNAMIC data files used to configure virtual printers and process print jobs. The value for @5 is normally the /var/spool/lpd/pio directory. |
The following attribute names are used for communicating from the piobe command (the print job manager) to the pioout command (the device driver interface program). The attribute values are referenced by flag arguments passed to the device driver interface program as specified in the pipelines.
@A | Number of bytes already printed. |
@B | Total number of bytes to print. |
@C | Number of times to send the cancel string (@D) to the printer at print job cancel. |
@D | String to send to the printer if the print job is canceled. |
@I | User to which to send intervention required messages. |
@O | Name of file to be generated by the pioout command in which to store data instead of sending it to the printer. |
@P | Name of file (usually the header page) to be sent to the printer before the first byte of the print file is sent. |
@S | Name of file to be sent to the printer after the last byte of the print file has been sent. |
Reserved attribute names are names that are assumed by the print job manager:
First two characters are _ _ | Group header attribute. |
First character is @ | Value is provided automatically. |
First character is _ | Default value for flag argument. |
First character is i | Pipeline for input data stream. |
First character is l | Flags prohibited for input data stream. |
First character is f | Command string for the filter flag. |
First character is z and second character is D, P, or S:
zD | Default state of the colon file when in the /var/spool/lpd/pio/custom/* directory (+ means expanded, ! means contracted). |
zP | Name of the colon file's parent colon file. The parent colon file is assumed to be in the /usr/lib/lpd/pio/predef/* directory. |
zS | Current state of the colon file (+ means expanded, ! means contracted). |
First character is y | Values for terminal-attached printers. |
Suggested attribute names are names that are assumed by many formatter filters:
First character is s | System administrator value. |
First character is d | Directory path. |
First character is m | Miscellaneous value (constant). |
First character is w | Work value (changes while formatting). |
First character is c | Command aggregate. |
First character is a | ASCII control code. |
First character is e | Printer escape sequence. |
First character is t and second character is 0-9 | |
Full path names of zero or more. Stage 2 translation tables used by formatter. Multiple values must be separated by commas. |
The following conventions have been established for attribute values:
The limits field in the colon file contains two types of information. SMIT dialog information and validation information.
Information used in building SMIT objects represent colon file attributes in the object data manager (ODM). These objects will be used in the Print a File, Printer Setup, and Default Job Characteristics dialogs.
The limits field gives you some control over the type of sm_cmd_opt ODM object that is built for every object. You can control whether or not an attribute is always displayed, never displayed, or displayed only if it is referenced in a pipeline. You can modify the following fields:
Validation information validates attribute values when the colon file is complete and a print job is submitted.