groff
est fourni avec au moins 3 préprocesseurs,
tbl
, eqn
et pic
(certains
systèmes les nomment gtbl
, geqn
et
gpic
). Ils sont destinés à traduire leurs macros
et leurs données en code source troff
standard.
tbl
est un préprocesseur de tableaux,
eqn
en est un d'équation et de mathématiques et
pic
gère les images. Consultez leurs pages de
manuel pour découvrir les fonctionalités qu'ils proposent.
Mais autant être clair : n'écrivez pas de pages de manuel qui utilisent des préprocesseurs.
eqn
produira généralement un résultat catastrophique
sur des périphériques du genre télétype, qui malheureusement
représentent 99% des visualtions de pages de manuel. Par exemple
XAllocColor.3x contient des formules avec des
exposants. A cause de la nature de ces terminaux, l'exposant
sera sur la même ligne que la base. «N puissance
deux» s'affichera "N2".
Il vaut mieux éviter tbl
aussi, car je n'ai jamais vu aucun
xman
qui fonctionne avec lui.
xman 3.1.6
utilise la ligne de commande suivante pour
formater les pages de manuel, par exemple signal(7) :
gtbl /usr/man/man7/signal.7 | geqn | gtbl | groff -Tascii -man \ /tmp/xmana01760 2> /dev/nullqui coince sur toutes les sources utilisant
gtbl
, car
sa sortie est redirigée encore une fois vers gtbl
. Le
résultat donne une page de manuel sans votre tableau. Je ne
sais pas si c'est un bogue ou une particularité de
gtbl
qui s'étrangle sur sa propre sortie ou si
xman
devrait être un peu plus gentil et ne pas
utiliser gtbl
deux fois... De toute façon, si vous
voulez un tableau, formatez-le vous-même et mettez-le entre
les lignes .nf
et .fi
ce qui permettra de ne
pas le formater. Vous ne pourrez pas avoir de gras ou
d'italique par cette méthode mais elle permettra d'avoir votre
tableau dans tous les cas.Je n'ai jamais vu une page de manuel nécessitant le
préprocesseur pic
mais je n'aimerais pas ça. Comme
vous pouvez le voir plus haut, xman
ne l'utilise pas
et groff
ferait sûrement la danse de Saint-Guy en
voyant les données en entrée.