2009-02-25 2 views
130

Ich schreibe gerade einen Projektbericht, und um den leicht verrückten unintelligenten Code zu erklären, den ich benutzt habe, muss ich viele, viele kurze Auszüge aus Beispielcode einfügen.Code in LaTeX machen look * nice *

Wie kann ich Code in LaTeX erhalten, dass:

  • schön aussieht
  • nicht auf die Seite der Seite gehen, wenn die Zeile zu lang ist (Liste lstlisting oder wörtlich)
  • ist vorzugsweise Inline mit dem Rest des Textes

EDITED (Figured ich die Einstellungen hinzufügen würde, damit die Menschen haben, um sie nicht zu versuchen, herauszufinden, sich (von wikibooks (Link weiter unten genommen) und für Nettigkeit bearbeitet))

Nizza Einstellungen:

\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} 

Ein Beispiel für diese Einstellungen:

+0

lstlisting * kann * Zeilenumbruch tun, müssen Sie nur den richtigen lstset Befehl verwenden. –

+0

Ja, ich habe irgendwann etwas gefunden, was mir das gesagt hat. Prost aber! –

+1

Wunderbar! Ich liebe es, einfach etwas in mein Latex-Dokument kopieren und einfügen zu können und es sofort schön werden zu lassen! Du hast mich für einige Stunden der Feinabstimmung gerettet. Vielen Dank! :) –

Antwort

41

Das listings Paket ist sehr nett und sehr flex (z. B. verschiedene Größen für Kommentare und Code).

2

Für einfaches Dokument, verwende ich manchmal wörtlich, aber Auflistung ist gut für große Stück Code.

17

Es stellt sich heraus, dass lstlisting in der Lage ist, Code schön zu formatieren, aber erfordert viel Feinabstimmung.

Wikibooks hat ein gutes Beispiel für die Parameter, die Sie optimieren können.