Comment écrire dans un fichier pendant une compilation?

$\Reponse$ 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>\LaTeX</latex>.}
\closeout\fichier

Normalement, \LaTeX\ 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.

$\Reponse$ 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>\LaTeX</latex>.
\end{verbatimwrite}
composition/macros/ecrire_dans_un_fichier.txt · Dernière modification: 2018/12/09 11:08 par jejust
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0