web-dev-qa-db-fra.com

Faire du code dans LaTeX look * Nice *

Je suis en train de rédiger un rapport de projet et pour expliquer le code peu intuitif un peu fou que j'ai utilisé, j'ai besoin de mettre plein de courts extraits d'exemples de code.

Comment puis-je obtenir du code dans LaTeX qui:

  • à l'air cool
  • ne sort pas du côté de la page si la ligne est trop longue (list lstlisting ou verbatim)
  • est de préférence en ligne avec le reste du texte

MODIFIÉ (figuré, j'ajouterais les paramètres pour que les gens n'aient pas à essayer de les comprendre eux-mêmes (extraits de wikibooks (lien plus bas) et édités pour plus de gentillesse))

Paramètres sympas:

\usepackage{color}
\usepackage{listings}
\lstset{ %
language=C++,                % choose the language of the code
basicstyle=\footnotesize,       % the size of the fonts that are used for the code
numbers=left,                   % where to put the line-numbers
numberstyle=\footnotesize,      % the size of the fonts that are used for the line-numbers
stepnumber=1,                   % the step between two line-numbers. If it is 1 each line will be numbered
numbersep=5pt,                  % how far the line-numbers are from the code
backgroundcolor=\color{white},  % choose the background color. You must add \usepackage{color}
showspaces=false,               % show spaces adding particular underscores
showstringspaces=false,         % underline spaces within strings
showtabs=false,                 % show tabs within strings adding particular underscores
frame=single,           % adds a frame around the code
tabsize=2,          % sets default tabsize to 2 spaces
captionpos=b,           % sets the caption-position to bottom
breaklines=true,        % sets automatic line breaking
breakatwhitespace=false,    % sets if automatic breaks should only happen at whitespace
escapeinside={\%*}{*)}          % if you want to add a comment within your code
}

\begin{lstlisting}
!!code!!
\end{lstlisting}

Un exemple de ces paramètres:

132
Ed James

Le package listings est assez agréable et très flexible (par exemple, différentes tailles pour les commentaires et le code).

42
Fabian Steeg

Il s’avère que lstlisting est capable de bien formater le code, mais nécessite beaucoup de peaufinage.

Wikibooks a un bon exemple pour les paramètres que vous pouvez modifier.

18
Ed James

Pour un document simple, j’utilise parfois mot pour mot, mais la liste est pratique pour de gros morceaux de code.

2
claf