Commande pioformat

Objectif

Permet d'unités de formatage d'imprimante.

Syntaxe

/usr/lpd/pio/etc/pioformat -@ DataBaseFile [ -! FormatterName ] [ -# + PassThroughOption ]

Descriptif

La commande pioformat lance le pilote du formateur d'imprimante. Le pilote du formateur établit l'accès aux valeurs de la base de données, charge et lie un formateur d'imprimante, puis pilote le formateur en appelant sa fonction setup , sa fonction initialize , sa fonction lineout , sa fonction passthru et sa fonction restore . Le pilote de formatage fournit également la sous-routine piogetopt , la sous-routine piogetstr , la sous-routine pioexit utilisée par le programme de formatage.

Les indicateurs qui sont répertoriés après cette opération sont traités par le pilote du programme de formatage et ne sont pas transmis au programme de formatage. Cependant, tous les indicateurs NON répertoriés après cela sont supposés être des indicateurs de formatage et sont transmis au formateur.

Indicateurs

Tableau 1. Indicateurs
Article Descriptif
-@ DataBaseFile Indique l'un des éléments suivants
  • Nom de chemin complet du fichier de base de données (digéré) à accéder
  • Noms de file d'attente d'impression et d'unité de file d'attente, séparés par un signe deux-points

Si la chaîne d'arguments commence par une barre oblique ( / ), elle est supposée être un nom de chemin d'accès complet.

La combinaison du nom de file d'attente et du nom d'unité de file d'attente génère une chaîne unique qui fait partie du nom de fichier de base de données et qui est utilisée pour rechercher le nom de fichier de base de données dans le répertoire /var/spool/lpd/pio/@local/ddi . Cette alternative de format court est fournie par souci de commodité lorsque le pilote et le formateur sont exécutés en tant que périphériques autonomes, au lieu d'être exécutés par le spouleur.

-! FormatterName Indique le chemin d'accès complet du formateur à charger, à lier et à piloter.

Si l'indicateur -! n'est pas spécifié, le nom du formateur par défaut défini par le nom d'attribut mf dans la base de données est utilisé. Un nom de formateur par défaut est fourni par commodité lorsque le pilote et le formateur sont exécutés en tant que périphériques autonomes, et non par le spouleur.

-# + PassThroughOption Indique que le fichier d'impression doit être transmis sans modification. Si l'indicateur -# + n'est pas spécifié, le fichier d'impression est formaté.

Le paramètre transmis à la routine setup du programme de formatage contient la valeur 1 au lieu de 0, indiquant que le fichier doit être transmis au lieu d'être formaté.

Exemples

  1. Pour formater le fichier myfile en fonction du fichier de base de données (description d'imprimante virtuelle) pour l'unité de file d'attente nommée std associée à la file d'attente d'impression nommée pro, en remplaçant la largeur de page par 132 caractères, et en utilisant la commande pioformat et un formateur comme filtre autonome, entrez:
    cat myfile | pioformat  -@ pro:std -w 132 >/dev/lp0
  2. Pour utiliser la commande pioformat et un formateur dans un pipeline exécuté sous le spouleur, entrez:
    %Ide/pioformat  -@ %Idd/%Imm  -! %Idf/piof420x %Fbb %Fee ...
    Pour cet exemple, supposons que:
    • L'imprimante est un 4207 modèle 2 Proprinter.
    • Le nom de la file d'attente d'impression est pro.
    • Une seule unité de file d'attente (imprimante virtuelle) est définie pour la file d'attente d'impression. Son nom est std et son type de flot de données en sortie est asc (ASCII étendu).
    • Le nom de l'imprimante est /dev/lp0.
    • L'émetteur du travail d'impression a spécifié l'indicateur et l'argument -i 5.
    Avant que le gestionnaire de travaux d'impression (commande piobe ) ne transmette le pipeline à un interpréteur de commandes pour formater le fichier, il résout les références imbriquées du pipeline en valeurs d'attribut. En fonction des hypothèses indiquées précédemment pour cet exemple, les références d'attribut peuvent être résolues comme suit:
    Article Descriptif
     %Ide -> /usr/lpd/pio/etc Répertoire dans lequel la commande pioformat est présente
     %Idd -> /var/spool/lpd/pio/@local/ddi Répertoire des fichiers de base de données
     %Imm -> 4207-2.asc.lp0.pro:std Nom du fichier base de données
     %Idf -> /usr/lpd/pio/fmtrs Répertoire du formateur
    %Fbb -> Chaîne nulle, car l'émetteur n'a pas spécifié l'indicateur -b
    %Fee -> -i 5 L'émetteur a spécifié cet indicateur et cet argument.
    Le pipeline résultant affiché après cette opération peut être transmis à un interpréteur de commandes pour formater le fichier (affiché sur plusieurs lignes à des fins de lisibilité):
    /usr/lpd/pio/etc/pioformat        # initiate the formatter driver
    -@/usr/lpd/pio/ddi/4207-2.asc.lp0.pro:std
                                      # (digested) database file
    -!/usr/lpd/pio/fmtrs/piof420x     # loadable formatter
    -i5                               # formatting option
                                      # (indent 5 characters)

Fichiers

Tableau 2. fichiers
Article Descriptif
/usr/lpd/pio/etc/pioformat Contient le pilote de formatage.
/usr/lpd/pio/fmtrs/* Contient les formateurs.
/var/spool/lpd/pio/@local/ddi/* Contient les fichiers de base de données digéré.