Man page - rubber-pipe(1)

Packages contains this manual

Available languages:

en fr

Manual

RUBBER

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
MODULES
Paquets
Pré-traitements
Traitement aprĂšs compilation
Choix du compilateur
DIRECTIVES
Directives générales
Directives spécifiques aux modules
BUGS
VOIR AUSSI

NAME

rubber - un systĂšme de compilation de documents LaTeX

SYNOPSIS

rubber [ options ] sources ...
rubber-pipe
[ options ]

DESCRIPTION

Rubber est un emballage autour de LaTeX et des programmes associĂ©s. Son but est, Ă  partir d’un fichier source LaTeX, d’effectuer autant de compilations que nĂ©cessaire et d’exĂ©cuter des programmes annexes comme BibTeX, makeindex, Metapost, etc. pour produire au besoin des fichiers de donnĂ©es.

La commande rubber construit complĂštement les documents spĂ©cifiĂ©s. Les fichiers traitĂ©s peuvent ĂȘtre des sources LaTeX (auquel cas le suffixe .tex peut ĂȘtre omis), ou des fichiers dans un format que Rubber sait traduire vers LaTeX. Si une compilation Ă©choue, l’ensemble du processus est interrompu, y compris la compilation des documents suivants sur la ligne de commande, et rubber renvoie un code de retour non nul.

La commande rubber-pipe fait la mĂȘme chose avec un seul document, mais le source LaTeX est lu sur l’entrĂ©e standard et le document compilĂ© est envoyĂ© sur la sortie standard.

Certaines informations ne peuvent pas ĂȘtre extraites du source LaTeX. C’est le cas par exemple des chemins d’accĂšs aux fichiers (qui peuvent ĂȘtre spĂ©cifiĂ©s par les variables d’environnement comme TEXINPUTS ), ou encore le style d’index Ă  utiliser avec Makeindex. Pour remĂ©dier Ă  ce problĂšme, il est possible d’ajouter de l’information pour Rubber dans les commentaires des sources LaTeX. Veuillez vous reporter Ă  la section DIRECTIVES .

OPTIONS

Les options servent soit Ă  choisir l’action Ă  effectuer, soit Ă  configurer le processus de compilation. Elles sont essentiellement les mĂȘmes pour rubber et rubber-pipe . Les options sont lues Ă  la maniĂšre de GNU Getopt.
-b, --bzip2

Compresse le document final (au format bzip2 ). Cette option équivaut à écrire -o bzip2 aprÚs toutes les autres options.

--clean

Efface tous les fichiers produits par la compilation au lieu de construire le document. Cette option n’est prĂ©sente que dans rubber . Elle considĂšre la compilation qui aurait eu lieu avec les autres arguments, c’est-Ă -dire que « rubber --clean toto » n’effacera pas toto.ps, alors que « rubber --ps --clean toto » le fera.

-c, --command <commande>

ExĂ©cute la commande (ou directive) spĂ©cifiĂ©e avant d’analyser les sources. Voir la section DIRECTIVES pour plus de dĂ©tails.

-e, --epilogue <commande>

ExĂ©cute la commande (ou directive) spĂ©cifiĂ©e aprĂšs l’analyse des sources. Voir la section DIRECTIVES pour plus de dĂ©tails.

-f, --force

Force au moins une compilation du source. Ceci peut ĂȘtre utile, par exemple, si une dĂ©pendance inhabituelle a Ă©tĂ© modifiĂ©e (par exemple un paquet dans un rĂ©pertoire systĂšme). Cette option n’a pas de sens pour rubber-pipe .

-z, --gzip

Compresse le document final (au format gzip ). Cette option équivaut à écrire -o gz aprÚs toutes les autres options.

-h, --help

Affiche la liste de toutes les options disponibles et quitte.

--inplace

Va dans le rĂ©pertoire du fichier source avant la compilation, de sorte que les rĂ©sultats sont produits au mĂȘme endroit que les sources.

--into <répertoire>

Va dans le rĂ©pertoire spĂ©cifiĂ© avant la compilation, de sorte que les rĂ©sultats y sont produits, au lieu d’ĂȘtre placĂ©s dans le rĂ©pertoire courant.

--jobname <nom>

SpĂ©cifie le nom de travail (« job ») Ă  utiliser. Ceci change le nom des fichiers produits et ne s’applique qu’au premier document de la ligne de commande.

-k, --keep

Cette option n’a de sens qu’avec rubber-pipe . Avec cette option, les fichiers temporaires ne seront pas effacĂ©s aprĂšs la compilation du document et l’envoi du rĂ©sultat sur la sortie standard. Le document temporaire est nommĂ© rubtmpX.tex, oĂč X est un nombre tel qu’aucun fichier de ce nom n’existe au dĂ©part.

-n, --maxerr <num>

DĂ©finit le nombre maximum d’erreurs affichĂ©es. Par dĂ©faut, au plus 10 erreurs sont rapportĂ©es, l’option -n -1 les affiche toutes.

-m, --module <module> [: <args> ]

Utilise le module spĂ©cifiĂ© en plus des paquets du document. Des arguments peuvent ĂȘtre passĂ©s au module en les ajoutant aprĂšs un signe deux-points, ils correspondent aux options du paquet dans LaTeX. Le module est chargĂ© avant l’analyse du document.

--only <sources>

Compile le document partiellement, en n’incluant que les sources spĂ©cifiĂ©s. Le fonctionnement consiste Ă  ajouter un appel Ă  \includeonly sur la ligne de commande. L’argument est une liste de noms de fichiers sĂ©parĂ©s par des virgules.

-o, --post <module> [: <args> ]

Utilise le module spĂ©cifiĂ© en tant que post-processeur. Cette option est similaire Ă  -m mais elle charge le module aprĂšs l’analyse du document.

-d, --pdf

Produit un document PDF. Si cette option apparaßt aprÚs --ps (par exemple sous la forme -pd ) elle est synonyme de -o ps2pdf , sinon elle agit comme -m pdftex , pour compiler avec pdfLaTeX au lieu de LaTeX.

-p, --ps

Traite le fichier DVI obtenu aprĂšs compilation avec dvips (1) afin de produire un document PostScript. Cette option est synonyme de -o dvips , elle ne peut pas ĂȘtre utilisĂ©e aprĂšs --pdf .

-q, --quiet

Diminue la quantitĂ© de messages affichĂ©s. C’est l’inverse de -v .

-r, --read <fichier>

Lire des directives supplĂ©mentaires dans le fichier spĂ©cifiĂ© avant l’analyse des sources (voir aussi la directive « read »).

-S, --src-specials

Active l’insertion de « specials » indiquant les positions dans le code source, si le compilateur le permet. Cette option Ă©quivaut Ă  fixer la variable src-specials Ă  yes .

-s, --short

Formate les messages d’erreur de LaTeX de façon compacte (une erreur par ligne).

-I, --texpath <répertoire>

Ajoute le répertoire spécifié au chemin de recherche de fichiers de TeX.

--synctex

Autorise l’extension SyncTeX pendant l’exĂ©cution de LaTeX.

--unsafe

Permettre au document d’exĂ©cuter lancer des logiciels externes. Cette option est potentiellement dangereuse, rĂ©servez-la Ă  des documents provenant d’une source de confiance !

-v, --verbose

Incrémente le degré de détail dans les messages affichés. Les niveaux existants vont de 0 à 4, le niveau par défaut est 1 pour rubber et 0 pour rubber-pipe . Attention, dire -vvv rend Rubber trÚs bavard.

--version

Affiche le numéro de version et termine.

-W, --warn <type>

Rapporter les avertissements d’un type donnĂ©, s’il n’y a pas eu d’erreur de compilation. Les types disponibles sont les suivants. boxes (boĂźtes trop ou pas assez remplies), refs (rĂ©fĂ©rences non dĂ©finies ou dĂ©finies plusieurs fois), misc (autres messages) et all pour rapporter tous les messages.

MODULES

L’action de Rubber est influencĂ©e par des modules chargĂ©s des paquets ou programmes auxiliaires.

Paquets

Pour chaque paquet qu’un document utilise, Rubber recherche un module de mĂȘme nom pour effectuer les opĂ©rations que ce paquet peut nĂ©cessiter en plus de la compilation par LaTeX. Des modules peuvent ĂȘtre ajoutĂ©s Ă  ceux fournis par dĂ©faut pour ajouter de nouvelles fonctionnalitĂ©s (c’est d’ailleurs un intĂ©rĂȘt du systĂšme modulaire). Les modules standard sont les suivants.
asymptote

Traite les fichiers .asy générés par le paquet LaTeX, puis déclenche une recompilation.

beamer

Ce module s’occupe des fichiers .head de Beamer de la mĂȘme façon que pour les autres tables des matiĂšres.

bibtex, biblatex

S’occupe de traiter la bibliographie du document avec BibTeX lorsque c’est nĂ©cessaire. Ce module est chargĂ© automatiquement lorsque le document contient la macro \bibliography (voir DIRECTIVES pour les options).

combine

Le paquet combine sert Ă  rassembler plusieurs documents LaTeX en un seul. Ce module s’occupe de gĂ©rer les dĂ©pendances dans ce cas.

epsfig

Ce module gĂšre l’inclusion de figures pour les documents qui utilisent l’ancienne mĂ©thode avec \psfig. Il s’agit en fait d’une interface pour le module graphics, voir celui-ci pour les dĂ©tails.

glossaries

Exécute makeglossaries et recompile quand le fichier .glo change.

graphics, graphicx

Ces modules identifient les fichier graphiques inclus par le document et les considÚrent comme des dépendances à la compilation. Ils utilisent en plus certaines rÚgles pour construire ces fichiers. Voir la documentation en info pour plus de détails.

hyperref

S’occupe des fichiers supplĂ©mentaires que produit ce paquet dans certains cas.

index, makeidx, nomencl

Traite les index et nomenclatures du document avec makeindex (1) lorsque c’est nĂ©cessaire (voir dans DIRECTIVES pour les options).

ltxtable

Ajoute une dépendance vers les fichiers insérés par le paquet LaTeX ltxtable.

minitoc, minitoc-hyper

Lors du nettoyage, supprime les fichiers supplémentaires produits pour la construction de tables des matiÚres partielles.

moreverb, verbatim

Ajoute les fichiers inclus par \verbatiminput et les macros similaires à la liste des dépendances.

multibib

S’occupe des bibliographies supplĂ©mentaires créées par ce paquet, et efface les fichiers associĂ©s lors du nettoyage.

xr

Ajoute les fichiers .aux utilisés pour les références externes à la liste des dépendances, afin que la compilation ait lieu lorsque les documents externes sont modifiés.

Pré-traitements

Les modules suivants sont fournis pour l’utilisation de programmes qui produisent un source LaTeX Ă  partir de formats diffĂ©rents.

cweb

Ce module sert à exécuter cweave (1) si nécessaire avant le processus de compilation pour produire le source LaTeX. Ce module est chargé automatiquement si le fichier spécifié sur la ligne de commande a .w pour suffixe.

lhs2TeX

Ce module utilise le prĂ©processeur lhs2TeX pour produire le source LaTeX Ă  partir d’un programme en Literate Haskell. Il est utilisĂ© automatiquement si le nom du fichier d’entrĂ©e se termine par .lhs .

Traitement aprĂšs compilation

Les modules suivants sont fournis pour effectuer diverses transformations aprĂšs la compilation. L’ordre dans lequel ces modules sont utilisĂ©s est important, par exemple pour effectuer une sĂ©rie de transformations comme

toto.tex → toto.dvi → toto.ps → toto.pdf → toto.pdf.gz

il faut charger les modules dvips , ps2pdf et gz dans cet ordre, par exemple avec la ligne de commande

rubber -p -o ps2pdf -z toto.tex

bzip2

Produit une version du document final compressée avec bzip2 (1).

dvipdfm

Lance dvipdfm (1) Ă  la fin de la compilation pour produire un document PDF.

dvips

Lance dvips (1) Ă  la fin de la compilation pour produire un document PostScript. Ce module est aussi chargĂ© par l’option de ligne de commande --ps .

expand

Produit un source LaTeX à partir du document principal, en remplaçant les macros \input par les fichiers inclus, les macros de bibliographies par la bibliographie produite par bibtex (1), et les classes et paquets locaux par leur source. Si le fichier principal est foo.tex , le fichier développé sera nommé foo-final.tex . Voir la documentation en info pour plus de détails.

gz

Produit une version du document final compressée avec gzip (1).

ps2pdf

Lorsque la compilation produit un document PostScript (par exemple en utilisant le module dvips ), convertit ce document en PDF avec ps2pdf (1).

Choix du compilateur

Les modules suivants servent Ă  changer de compilateur LaTeX.

aleph

Utilise Aleph au lieu de TeX, c’est-à-dire compile le document avec lamed (1) au lieu de latex .

omega

Utilise Omega au lieu de TeX, c’est-Ă -dire compile le document avec lambda (1) au lieu de latex . Si le module dvips est utilisĂ©, il transformera le DVI avec la commande odvips (1). Notez que si le paquet omega est utilisĂ© par le document, ce module sera chargĂ© automatiquement.

pdftex

Indique Ă  Rubber d’utiliser pdflatex (1) au lieu de latex pour compiler le document. Par dĂ©faut, cela a pour effet de produire un fichier PDF au lieu d’un DVI, mais si le module est chargĂ© avec l’option dvi (par exemple en disant -m pdftex:dvi ) le document est compilĂ© en DVI par pdflatex . Ce module est aussi chargĂ© par l’option de ligne de commande --pdf .

vtex

Indique Ă  Rubber d’utiliser le compilateur VTeX. Par dĂ©faut la commande vlatex est utilisĂ©e, pour produire une sortie en PDF. Avec l’option ps (par exemple en disant « rubber -m vtex:ps toto.tex ») le compilateur utilisĂ© sera vlatexp et le rĂ©sultat sera un fichier PostScript.

xelatex

Demande à Rubber d’utiliser xelatex (1) au lieu de latex.

DIRECTIVES

Le fonctionnement automatique de Rubber se base sur la recherche de macros dans les sources LaTeX. Dans les cas oĂč ce mĂ©canisme n’est pas suffisant, il est possible d’ajouter des directives dans les commentaires des sources. Une directive est une ligne de la forme

% rubber: cmd args

La ligne doit commencer par un signe « % » puis une suite quelconque de « % » et d’espaces, puis le texte « rubber: » suivi d’espaces et d’un nom de commande, Ă©ventuellement suivi d’espaces et d’arguments. Les commandes disponibles sont les suivantes:

Directives générales

alias <nom1> <nom2>

DĂ©clare la macro LaTeX nom1 comme Ă©quivalente Ă  nom2 . Ceci peut ĂȘtre utile quand on dĂ©finit une macro personnelle autour d’une macro connue de Rubber.

clean <fichier>

Indique que le fichier spĂ©cifiĂ© doit ĂȘtre effacĂ© lors du nettoyage par --clean .

depend <fichier>

ConsidÚre le fichier spécifié comme une dépendance à la compilation, sa date de modification sera vérifiée.

make <fichier> [ <options> ]

DĂ©clare que le fichier spĂ©cifiĂ© doit ĂȘtre produit. Les options permettent de spĂ©cifier la façon de le produire: from <fichier> indique le nom du fichier source, with <rĂšgle> indique la rĂšgle de conversion Ă  employer. Par exemple, « make toto.pdf from toto.eps » indique que toto.pdf doit ĂȘtre produit Ă  partir de toto.eps , avec n’importe quelle rĂšgle susceptible de le faire. Voir la documentation info pour plus de dĂ©tails sur la conversion de fichiers.

module <module> [ <options> ]

Charge le module spĂ©cifiĂ©, Ă©ventuellement avec des options. Cette directive est Ă©quivalente Ă  l’option de ligne de commande --module .

onchange <fichier> <commande>

Exécute la commande shell spécifiée aprÚs la compilation lorsque le contenu du fichier spécifié a changé. Le nom de fichier se termine au premier espace sur la ligne.

path <répertoire>

Ajoute le répertoire spécifié au chemin de recherche de TeX (et de Rubber). Le nom du répertoire est tout le texte qui suit les espaces aprÚs « path ».

produce <fichier>

Informe Rubber que l’exĂ©cution de LaTeX crĂ©e ou modifie ce(s) fichier(s).

read <fichier>

Lit le fichier de directives spécifié. Le fichier doit comporter une commande par ligne. Les lignes vides ou commençant par un « % » sont ignorées.

rules <fichier>

Lit des rĂšgles de conversion supplĂ©mentaires dans le fichier spĂ©cifiĂ©. Ce fichier doit ĂȘtre au mĂȘme format que le fichier rules.ini , voir la documentation info pour plus de dĂ©tails.

set <nom> <valeur>

DĂ©finit la variable nom avec la valeur spĂ©cifiĂ©e. Pour plus d’informations sur les variables, voir la documentation en info.

setlist <nom> <valeurs>

DĂ©finit la variable nom avec la liste de valeurs spĂ©cifiĂ©e. Les valeurs sont sĂ©parĂ©es par des espaces. Pour plus d’informations sur les variables, voir la documentation en info.

shell_escape

Marquer ce document comme nĂ©cessitant des logiciels externes (shell-escape ou write18). Rubber va ne pas accepter cette option sauf quand l’option --unsafe est utilisĂ©e.

synctex

Autorise l’extension SyncTeX pendant l’exĂ©cution de LaTeX.

watch <fichier>

Surveille les modifications sur le fichier spĂ©cifiĂ©. Si le contenu de ce fichier change lors d’une compilation, une nouvelle compilation est dĂ©clenchĂ©e. Ce mĂ©canisme est utile par exemple pour les tables des matiĂšres.

Directives spécifiques aux modules

Si une commande est de la forme toto.tutu , elle est considĂ©rĂ©e comme une commande tutu pour le module toto . Si ce module n’est pas encore enregistrĂ© lorsque la directive est rencontrĂ©e, la commande est simplement ignorĂ©e. Pour les modules standard, les directives sont les suivantes:
biblatex.path
<répertoire>

Ajoute le répertoire donné aux chemins dans lesquels BibTex cherche ses bases de données

bibtex.crossrefs <nombre>

SpĂ©cifie le nombre minimum de crossref requis pour l’inclusion automatique de l’entrĂ©e rĂ©fĂ©rencĂ©e dans la liste de citations. DĂ©finit l’option -min-crossrefs lors de l’appel Ă  bibtex (1).

bibtex.path <répertoire>

Ajoute le répertoire spécifié au chemin de recherche de bases de données BibTeX (fichiers .bib).

bibtex.stylepath <répertoire>

Ajoute le répertoire spécifié au chemin de recherche de styles BibTeX (fichiers .bst).

bibtex.tool <commande>

Utiliser un autre outil que BibTeX pour la bibliography.

dvipdfm.options <options>

Passe les options de ligne de commande spécifiées à dvipdfm .

dvips.options <options>

Passe les options de ligne de commande spécifiées à dvips .

index.tool (index) <name>

SpĂ©cifie l’outil Ă  utiliser pour traiter l’index. Les choix possibles sont actuellement makeindex (1) (valeur par dĂ©faut) et xindy (1). L’argument index est optionnel, il peut ĂȘtre utilisĂ© pour spĂ©cifier la liste des index auxquels s’applique la commande. S’il est prĂ©sent, il doit ĂȘtre placĂ© entre parenthĂšses et la liste est sĂ©parĂ©e par des virgules. Si l’argument est absent, la commande s’applique Ă  tous les index.

index.language (index) <langues>

SĂ©lectionne la langue Ă  utiliser pour trier l’index. Ceci ne s’applique que si l’outil utilisĂ© est xindy (1). L’argument optionnel a la mĂȘme signification qu’au-dessus.

index.modules (index) <module>...

SpĂ©cifie quels modules utiliser lors du traitement de l’index par xindy (1). L’argument optionnel a la mĂȘme signification qu’au-dessus.

index.order (index) <options>

Modifie les options de tri de l’index. Les arguments dont des mots (sĂ©parĂ©s par des espaces) parmi standard, german et letter . Cette option n’a d’effet qu’avec makeindex (1). L’argument optionnel a la mĂȘme signification qu’au-dessus.

index.path (index) <répertoire>

Ajoute le rĂ©pertoire spĂ©cifiĂ© au chemin de recherche de styles d’index (fichiers .ist). L’argument optionnel a la mĂȘme signification qu’au-dessus.

index.style (index) <style>

SpĂ©cifie le style d’index Ă  utiliser. L’argument optionnel a la mĂȘme signification qu’au-dessus.

makeidx.language, .modules, .order, .path, .style, .tool

Ces directives sont les mĂȘmes que pour le module index , mais n’acceptent pas d’argument optionnel.

multibib.crossrefs, .path, .stylepath, .tool

Ces directives sont les mĂȘmes que pour le module bibtex mais elles s’appliquent aux bibliographies gĂ©rĂ©es par le paquet multibib . Elles acceptent un argument initial optionnel, avec les mĂȘmes conventions que pour le module index , qui permet de spĂ©cifier la liste des bibliographies auxquelles s’applique la commande.

BUGS

Il y en a surement quelques uns...

Cette page se rapporte à la version 1.6.7 de Rubber. Le programme et cette documentation sont maintenus par Florian Schmaus <flo@geekplace.eu>. La page web du programme se trouve à l’adresse https://gitlab.com/latex-rubber/rubber.

VOIR AUSSI

La documentation complÚte de rubber est maintenue en tant que manuel en Texinfo. Si les programmes info et rubber sont installés correctement sur votre systÚme, la commande

info rubber

devrait vous donner accĂšs au manuel complet (en anglais).