Dans certains domaines, notamment en informatique, on a besoin de citer du texte
comportant beaucoup de caractères spéciaux pour LaTeX
(&
, _
, \
…).
Le cas extrême se présentera si vous écrivez un document sur LaTeX en LaTeX.
Vous aurez besoin de citer des noms de commandes, de donner des bouts de code…
Dans le jargon LaTeX, citer du texte sans interpréter ce qu'il contient se dit « écrire en verbatim », ce qui veut dire mot pour mot en latin.
Les environnements verbatim
et verbatim*
de
permettent de réaliser cela. Cependant, ils sont assez limités, en
particulier sur la taille de ce que peuvent contenir ces environnements, et
de nombreuses extensions ont été proposées.
Le package verbatim redéfinit les environnements
verbatim
et verbatim*
, afin de ne plus être limité par la taille
du contenu. Il fournit également la commande \verbatiminput
, qui prend
en argument un nom de fichier, et inclut ce fichier en mode verbatim.
L'environnement alltt
du package du même nom alltt
(package dû à Johannes Braams) est une autre solution. À l'intérieur de
cet environnement, le caractère \
et les accolades conservent leur
signification, et il est donc possible d'inclure des commandes dans un
environnement alltt
. Cela permet en particulier d'inclure un fichier en
verbatim, à condition qu'il ne contienne pas d'accolades.
Exemple d'utilisation de alltt:
\documentclass{article} \usepackage[french]{babel} \usepackage{alltt} \begin{document} \begin{alltt} Notez la différence subtile entre $f(x)$ et \(f(x)\) grâce à l'utilisation de la \og{}contre-oblique\fg. \end{alltt} \end{document}
L'extension moreverb va un peu plus loin, en permettant
notamment de numéroter les lignes de l'environnement verbatim
. Elle permet aussi
d'inclure un fichier, bien sûr, mais aussi et surtout d'écrire dans un fichier.
Pour inclure un fichier, on saisira par exemple:
{ \small \listinginput[5]{10}{totor.c} }
Les paramètres 5
et 10
indiquent que la numérotation des
lignes doit se faire de 5 en 5 en commençant à 10.
L'extension fancyvrb permet d'écrire du texte verbatim encadré, en couleur et même dans lequel certaines commandes sont interprétées. Voir cette page pour un exemple.
L'extension sverb de Mark Wooding, propose un environnement listing
.
L'extension verbtext, permet de numéroter les lignes d'un texte verbatim, et d'interpréter certaines commandes.
On peut aussi essayer l'extension verbasef (verbatim
automatic segmentation of external files). Il utilise l'environnement figure
.