Comment écrire dans un fichier pendant une compilation?
On utilisera pour ce faire les commandes
\newwrite
,
\openout
, \write
et \closeout
, dans cet ordre. Un exemple vaut
mieux qu'un long discours :
\newwrite\fichier \openout\fichier=exemple.tex \write\fichier{Ceci est un fichier compilable par \noexpand\LaTeX.} \closeout\fichier
Normalement, \ développe les macros qui seront écrites dans le
fichier. C'est la raison pour laquelle on a mis un
noexpand
dans cet
exemple : de cette fa\c con, la commande LaTeX
n'est pas de\'veloppée,
elle est écrite telle quelle dans exemple.tex
et ne sera
interprétée qu'à la compilation de ce fichier.
Les packages moreverb et sverb définissent un environnement nommé
respectivement
verbatimwrite
et verbwrite
, qui permettent d'écrire
dans un fichier du texte qui ne sera pas
développé. L'exemple ci-dessous, utilisant le package moreverb,
fait donc la m\^eme chose que l'exemple précédent :
\begin{verbatimwrite}{exemple.tex} Ceci est un fichier compilable par \LaTeX. \end{verbatimwrite}