.TH RUBBER 1 .SH NAME rubber \- un système de compilation de documents LaTeX . .SH SYNOPSIS .B rubber .RI [ options ] .I sources ... .br .B rubber\-pipe .RI [ options ] . .SH DESCRIPTION . Rubber est un emballage autour de LaTeX est des programmes associés. Son but est, étant donné un fichier source LaTeX, de le compiler tant que nécessaire et d'exécuter des programmes annexes comme BibTeX, makeindex, Metapost, etc. pour produire des fichiers de données si besoin est. .PP La commande .B rubber construit complètement les documents spécifiés. Les sources passés en argument 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 (pour le moment, cela signifie un source CWEB ou Literate Haskell). Si une compilation échoue, l'ensemble du processus est interrompu, y compris la compilation des documents suivants sur la ligne de commande, et .B rubber renvoie un code de retour non nul. .PP La commande .B 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. .PP 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 .BR 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, voir pour cela la section .BR DIRECTIVES . . .SH OPTIONS Les options servent soit à choisir l'action à effectuer, soit à configurer le processus de compilation. Elles sont essentiellement les mêmes pour .B rubber et .BR rubber\-pipe . Les options sont lues selon les conventions à la GNU Getopt. .TP .B \-b, \-\-bzip2 Compresse le document final (au format .IR bzip2 ). Cette option équivaut à écrire .I \-o bzip2 après toutes les autres options. .TP .B \-\-cache Utiliser le système (expérimental) de cache. Cette fonction utilise un fichier .I rubber.cache dans le répertoire courant pour stocker le résultat de l'analyse des sources, de sorte que les compilations suivantes sont accélérées. .TP .B \-\-clean Efface tous les fichiers produits par la compilation au lieu de construire le document. Cette option n'est présente que dans .BR 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. .TP .BI \-c,\ \-\-command \ Exécute la commande (ou directive) spécifiée .I avant d'analyser les sources. Voir la section .B DIRECTIVES pour plus de détails. .TP .BI \-e,\ \-\-epilogue \ Exécute la commande (ou directive) spécifiée .I après l'analyse des sources. Voir la section .B DIRECTIVES pour plus de détails. .TP .B \-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 package dans un répertoire système). .TP .B \-z, \-\-gzip Compresse le document final (au format .IR gzip ). Cette option équivaut à écrire .I \-o gz après toutes les autres options. .TP .B \-h, \-\-help Affiche la liste de toutes les options disponibles et quitte. .TP .B \-\-inplace Va dans le répertoire du fichier source avant la compilation, de sorte que les fichiers produits arrivent au même endroit que les sources. .TP .BI \-\-into \ Va dans le répertoire spécifié avant la compilation, de sorte que les résultats de compilation y soient produits, au lieu d'être placés dans le répertoire courant. .TP .BI \-\-jobname \ Spécifie le nom de job à utiliser. Ceci change le nom des fichiers produits et ne s'applique qu'au premier document de la ligne de commande. .TP .B \-k, \-\-keep Cette option est utile dans .B rubber\-pipe uniquement. 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. .TP .B \-l, \-\-landscape Produit un document orienté en paysage. Cette option n'a d'effet qu'avec .B dvips et .BR dvipdfm . .TP .BI \-n,\ \-\-maxerr \ Définit le nombre maximum d'erreurs affichées. Par défaut, au plus 10 erreurs sont rapportées, l'option .I \-n \-1 les affiche toutes. .TP .BI \-m,\ \-\-module \ [: ] Utilise le module spécifié en plus des packages du document. Des arguments peuvent être passés au module en les ajoutant après un signe deux-points, ils correspondent aux options du package dans LaTeX. Le module est chargé .I avant l'analyse du document. .TP .BI \-\-only \ Compile le document partiellement, en n'incluant que les sources spécifiés. Le fonctionnement consiste à ajouter un appel à \(rsincludeonly sur la ligne de commande. L'argument est une liste de noms de fichiers séparés par des virgules. .TP .BI \-o,\ \-\-post \ [: ] Utilise le module spécifié en tant que post-processeur. Cette option est similaire à .I \-m mais elle charge le module .I après l'analyse du document. .TP .B \-d, \-\-pdf Produit un document PDF. Si cette option apparaît après .I \-\-ps (par exemple sous la forme .IR \-pd ) elle est synonyme de .IR \-o\ ps2pdf , sinon elle agit comme .IR \-m\ pdftex , pour compiler avec pdfLaTeX au lieu de LaTeX. .TP .B \-p, \-\-ps Traite le fichier DVI obtenu après compilation avec .BR dvips (1) afin de produire un document PostScript. Cette option est synonyme de .IR \-o\ dvips , elle ne peut pas être utilisée après .IR \-\-pdf . .TP .B \-q, \-\-quiet Diminue la quantité de messages affichés. C'est l'inverse de .IR \-v . .TP .BI \-r,\ \-\-read \ Lire des directives supplémentaires dans le fichier spécifié avant l'analyse des sources (voir aussi la directive «\ read\ »). .TP .B \-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 .I src-specials à .IR yes . .TP .B \-s, \-\-short Formate les messages d'erreur de LaTeX de façon compacte (une erreur par ligne). .TP .BI \-I,\ \-\-texpath \ Ajoute le répertoire spécifié au chemin de recherche de fichiers de TeX. .TP .B \-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 .B rubber et 0 pour .BR rubber\-pipe . Attention, dire .I \-vvv rend Rubber très bavard. .TP .B \-\-version Affiche le numéro de version et termine. .TP .BI \-W,\ \-\-warn \ Rapporter les avertissements d'un type donné, s'il n'y a pas eu d'erreur de compilation. Les types disponibles sont: .B boxes (boîtes mal construites), .B refs (références non définies ou définies plusieurs fois), .B misc (les autres messages) et .B all pour rapporter tous les messages. .PP . .SH MODULES L'action de Rubber est influencée par des modules. Les modules s'occupent des fonctionnalités de packages et de programmes auxiliaires. . .SS Packages Pour chaque package qu'un document utilise, Rubber recherche un module de même nom pour effectuer les opérations que ce package 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: .TP .B beamer Ce module s'occupe des fichiers .head de Beamer de la même façon que pour les autres tables des matières. .TP .B bibtex 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 \(rsbibliography (voir aussi dans .B DIRECTIVES pour les options). .TP .B combine Le package combine sert à rassembler plusieurs documents LaTeX en un seul, et ce module s'occupe de gérer les dépendances dans ce cas. .TP .B epsfig Ce module gère l'inclusion de figures pour les documents qui utilisent l'ancienne méthode avec \(rspsfig. Il s'agit en fait d'une interface pour le module graphics, voir celui-ci pour les détails. .TP .B graphics, graphicx Ces modules identifient les fichier graphiques inclus par le document et de 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. .TP .B hyperref S'occupe des fichiers supplémentaires que produit ce package dans certains cas. .TP .B index, makeidx, nomencl Traite les index et nomenclatures du document avec .BR makeindex (1) lorsque c'est nécessaire (voir dans .B DIRECTIVES pour les options). .TP .B minitoc, minitoc-hyper Lors du nettoyage, supprime les fichiers supplémentaires produits pour la construction de tables des matières partielles. .TP .B moreverb, verbatim Ajoute les fichiers inclus par \(rsverbatiminput et les macros similaires à la liste des dépendances. .TP .B multibib S'occupe des bibliographies supplémentaires créées par ce package, et efface les fichiers associés lors du nettoyage. .TP .B natbib Peut lancer une compilation supplémentaire pour résoudre des références. .TP .B 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. .PP . .SS Pré-traitements Les modules suivants sont fournis pour l'utilisation de programmes qui produisent un source LaTeX à partir de formats différents: .TP .B cweb Ce module sert à exécuter .BR 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 .B .w pour suffixe. .TP .B lhs2TeX Ce module utilise le préprocesseur .B 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 .BR .lhs . .PP . .SS 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 .RS toto.tex \(-> toto.dvi \(-> toto.ps \(-> toto.pdf \(-> toto.pdf.gz .RE il faut charger les modules .BR dvips , .B ps2pdf et .B gz dans cet ordre, par exemple avec la ligne de commande .RS rubber \-p \-o ps2pdf \-z toto.tex .RE .TP .B bzip2 Produit une version du document final compressée avec .BR bzip2 (1). .TP .B dvipdfm Lance .BR dvipdfm (1) à la fin de la compilation pour produire un document PDF. .TP .B dvips Lance .BR dvips (1) à la fin de la compilation pour produire un document PostScript. Ce module est aussi chargé par l'option de ligne de commande .IR \-\-ps . .TP .B expand Produit un source LaTeX à partir du document principal, en remplaçant les macros \(rsinput par les fichiers inclus, les macros de bibliographies par la bibliographie produite par .BR bibtex (1), et les classes et packages locaux par leur source. Si le fichier principal est .IR foo.tex , le fichier développé sera nommé .IR foo-final.tex . Voir la documentation en info pour plus de détails. .TP .B gz Produit une version du document final compressée avec .BR gzip (1). .TP .B ps2pdf Lorsque la compilation produit un document PostScript (par exemple en utilisant le module .BR dvips ), convertit ce document en PDF avec .BR ps2pdf (1). .PP . .SS Choix du compilateur Les modules suivants servent à changer de compilateur LaTeX: .TP .B aleph Utilise Aleph au lieu de TeX, c'est-à-dire compile le document avec .BR lamed (1) au lieu de .BR latex . .TP .B etex Indique à Rubber d'utiliser .BR elatex (1) au lieu de .B latex pour compiler le document. .TP .B omega Utilise Omega au lieu de TeX, c'est-à-dire compile le document avec .BR lambda (1) au lieu de .BR latex . Si le module .B dvips est utilisé, il transformera le DVI avec la commande .BR odvips (1). Notez que si le package .B omega est utilisé par le document, ce module sera chargé automatiquement. .TP .B pdftex Indique à Rubber d'utiliser .BR pdflatex (1) au lieu de .BR 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 .B dvi (par exemple en disant .IR \-m\ pdftex:dvi ) le document est compilé en DVI par .BR pdflatex . Ce module est aussi chargé par l'option de ligne de commande .IR \-\-pdf . .TP .B vtex Indique à Rubber d'utiliser le compilateur VTeX. Par défaut la commande .B vlatex est utilisée, pour produire une sortie en PDF. Avec l'option .B ps (par exemple en disant «\ rubber \-m vtex:ps toto.tex\ ») le compilateur utilisé sera .B vlatexp et le résultat sera un fichier PostScript. .PP . .SH 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 .RS % rubber: cmd args .RE 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: .SS Directives générales .TP .BI alias \ \ Déclare la macro LaTeX .I nom1 comme équivalente à .IR nom2 . Ceci peut être utile quand on définit une macro personnelle autour d'une macro connue de Rubber. .TP .BI clean \ Indique que le fichier spécifié doit être effacé lors du nettoyage par .IR \-\-clean . .TP .BI depend \ Considère le fichier spécifié comme une dépendance à la compilation, sa date de modification sera vérifiée. .TP .BI make \ \ [ ] Déclare que le fichier spécifié doit être produit. Les options permettent de spécifier la façon de le produire: .BI from \ indique le nom du fichier source, .BI with \ indique la règle de conversion à employer. Par exemple, «\ make toto.pdf from toto.eps\ » indique que .I toto.pdf doit être produit à partir de .IR 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. .TP .BI module \ \ [ ] Charge le module spécifié, éventuellement avec des options. Cette directive est équivalente à l'option de ligne de commande .IR \-\-module . .TP .BI onchange \ \ 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. .TP .BI paper \ Spécifie des options relatives à la taille du papier. Pour le moment, ces options sont passées sous forme d'options .I \-t à .B dvips ou .I \-p à .BR dvipdfm . .TP .BI path \ 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\ ». .TP .BI read \ 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. .TP .BI rules \ Lit des règles de conversion supplémentaires dans le fichier spécifié. Ce fichier doit être au même format que le fichier .IR rules.ini , voir la documentation info pour plus de détails. .TP .BI set \ \ Définit la variable .I nom avec la .I valeur spécifiée. Pour plus d'informations sur les variables, voir la documentation en info. .TP .BI watch \ 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. .PP . .SS Directives spécifiques aux modules Si une commande est de la forme .IR toto.tutu , elle est considérée comme une commande .I tutu pour le module .IR 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: .TP .BI bibtex.crossrefs \ Spécifie le nombre minimum de .I crossref requis pour l'inclusion automatique de l'entrée référencée dans la liste de citations. Définit l'option .I -min-crossrefs lors de l'appel à .BR bibtex (1). .TP .BI bibtex.path \ Ajoute le répertoire spécifié au chemin de recherche de bases de données BibTeX (fichiers .bib). .TP .BI bibtex.sorted \ Si l'argument est .IR true , .I yes ou .IR 1 , déclare que la bibliographie est triée (c'est le comportement par défaut), sinon déclare que les citations apparaissent dans l'ordre du texte, ce qui peut nécessiter plus d'appels à .BR bibtex . .TP .BI bibtex.stylepath \ Ajoute le répertoire spécifié au chemin de recherche de styles BibTeX (fichiers .bst). .TP .BI dvipdfm.options \ Passe les options de ligne de commande spécifiées à .BR dvipdfm . .TP .BI dvips.options \ Passe les options de ligne de commande spécifiées à .BR dvips . .TP .BI index.tool \ (index)\ Spécifie l'outil à utiliser pour traiter l'index. Les choix possibles sont actuellement .BR makeindex (1) (valeur par défaut) et .BR xindy (1). L'argument .I 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. .TP .BI index.language \ (index)\ Sélectionne la langue à utiliser pour trier l'index. Ceci ne s'applique que si l'outil utilisé est .BR xindy (1). L'argument optionnel a la même signification qu'au-dessus. .TP .BI index.modules \ (index)\ ... Spécifie quels modules utiliser lors du traitement de l'index par .BR xindy (1). L'argument optionnel a la même signification qu'au-dessus. .TP .BI index.order \ (index)\ Modifie les options de tri de l'index. Les arguments dont des mots (séparés par des espaces) parmi «\ standard\ », «\ german\ », «\ letter\ ». L'argument optionnel a la même signification qu'au-dessus. .TP .BI index.path \ (index)\ 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. .TP .BI index.style \ (index)\