LaTeX
Cette page me sert d’aide-mémoire LaTeX, ne vous attendez pas à trouver une documentation exhaustive.
Présentation de code source informatique
Il existe plusieurs manières de présenter du code source informatique à l’intérieur d’un document LaTeX
Pour chaque méthode, la syntaxe à utiliser est indiquée (package à utiliser, commande minimale), ainsi que le rendu PDF d’un
fichier LaTeX volontairement simpliste (code en langage c encadré par 2 paragraphes type Lorem Ipsum).
La plupart des packages proposent nombre d’options pour personnaliser l’affichage, ces options seront peut-être un jour présentées ici.
En attendant, n’hésitez pas à consulter la partie ressources pour plus d’informations sur chaque méthode.
L’environnement verbatim
\begin{verbatim}
#include
#includeint main(int argc, char **argv)
{
int i=0;
for(i=0;i<=10;i++)
printf(“%i fois\n”, i);return 0;
}\end{verbatim}
Le package moreverb
(Ubuntu: paquet tetex-extra ou texlive-latex-extra)
Ce package propose un environnement boxedverbatim, plus complet que verbatim (encadrement du code, numérotation des lignes, …)
\usepackage{moreverb}
\begin{boxedverbatim}
#include
#includeint main(int argc, char **argv)
{
int i=0;
for(i=0;i<=10;i++)
printf(“%i fois\n”, i);return 0;
}\end{boxedverbatim}
Le programme lgrind
(Ubuntu: paquet lgrind)
Programme en c permettant de générer le code LaTeX d’un code source. Il est possible de copier le résultat directement dans le document principal, ou, plus propre, le mettre dans un fichier séparé et l’inclure.
Première étape, générer le code LaTeX du source (langage c) :
lgrind -i -lC bidon.c > bidon.tex
Ensuite l’inclure depuis le fichier LaTeX principal :
\usepackage{lgrind}
\lgrindfile{bidon.tex}
Le package listings
(Ubuntu: paquet tetex-extra ou tetex-extra)
Le meilleur pour la fin ![]()
A ma connaissance le package le plus polyvalent ( coloration syntaxique, encadrement, couleur de fond, code en plusieurs fois, commentaires, …)
Fonctionne comme lgrind, sauf qu’aucun pré-traitement n’est nécessaire. Voici avec quelles options je m’en suis servi récemment :
\usepackage{listings}
\usepackage{color}
\definecolor{gris}{rgb}{0.95,0.95,0.95}
\lstset{numbers=left, tabsize=4, backgroundcolor=\color{gris},
frame=single, breaklines=true,
keywordstyle=\color{black},
stringstyle=\ttfamily,
framexleftmargin=6mm, xleftmargin=6mm}\begin{lstlisting}
#include
#includeint main(int argc, char **argv)
{
int i=0;
for(i=0;i<=10;i++)
printf(“%i fois\n”, i);return 0;
}\end{lstlisting}
Ressources :
http://www.ctex.org/documents/packages/verbatim/moreverb.pdf
http://www.pvv.ntnu.no/~berland/latex/docs/listings.pdf
http://www.usq.edu.au/users/leis/notes/latex/code.html
http://latex.developpez.com/faq/?page=devcode
Avec 2 colonnes http://forums.gentoo.org/viewtopic-p-4057704-highlight-.html