2009-02-25 22 views
130

Actualmente estoy escribiendo un informe de proyecto, y para explicar el código untuitivo un tanto loco que he usado, tengo que poner muchos extractos breves de código de ejemplo.Crear código en LaTeX look * nice *

¿Cómo puedo obtener el código en LaTeX que:

  • se ve bien
  • no se va a un lado de la página, si la línea es demasiado larga (lista lstlisting o textual)
  • es preferiblemente en línea con el resto del texto

editada (pensé que podría agregar la configuración para que las personas no tienen que tratar de descifrarlos sí mismos (tomado de Wikilibros (enlace más abajo) y editadas por la amabilidad))

buenos ajustes:

\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 ejemplo de estos valores:

+0

lstlisting * puede * hacer un ajuste de línea, solo necesita usar el comando lstset correcto. –

+0

Sí, finalmente encontré algo que me dijo eso. ¡Saludos! –

+1

¡Maravilloso! Me encanta poder copiar y pegar algo en mi documento de látex y hacer que se vuelva hermoso al instante. Me salvaste algunas horas de ajustes ahora. ¡Gracias! :) –

Respuesta

41

El paquete listings es bastante agradable y muy flexión ible (por ej. diferentes tamaños para comentarios y código).

2

Para documentos simples, a veces uso textualmente, pero el listado es bueno para gran parte de código.

17

Resulta que lstlisting es capaz de formatear el código muy bien, pero requiere muchos ajustes.

Wikibooks tiene un buen ejemplo para los parámetros que puede ajustar.