PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fehlerhaftes Einrücken bei listings



Quaneu
27-04-2010, 12:52
Hallo,
da bin ich mal wieder mit einem neuen Problem…
Ich benutze das Package listings um Quellcode bzw. Pseudo-Code anzuzeigen.
Jedoch Rückt er immer bei einem Zeilenumbruch zu weit bzw. fehlerhaft ein. Deseiteren setzt er die Komma im unterschiedlich.
Ich weiß einfach nicht was ich machen muss um den Fehler zu beheben...

Hier das Beipiel und im Anhang die Ausgabe:


\documentclass[11pt,a4paper,fleqn]{scrartcl}
\usepackage{ngerman}
\usepackage[latin1]{inputenc}
\usepackage{enumitem}
\usepackage[intlimits]{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{makeidx}
\usepackage{amsthm}
\usepackage{parskip}
\usepackage{listings}
\usepackage{hyperref}
\usepackage{subfig}
\usepackage{graphicx}

\begin{document}

\lstset{language=[Visual]C++, basicstyle=\small, frame=tb, breaklines=true, breakautoindent=false, breakindent=65pt}
\begin{lstlisting}[caption={Pseudo--Code: Min--Cut}]
Schritt 0: Aufteilung der Layoutfläche in zwei Teilflächen mit senkrechter oder horizontaler Schnittrichtung
Schritt 1: Anwendung des FM - Algorithmus, zur optimierten Verteilung der Zellen auf die beiden Teilflächen
Schritt 2: Rekursive Aufteilung der neu entstehenden Teilflächen und jeweils Neuzuordnung der Zellen auf diese. Alternierende Wechsel zwischen senkrechter und horizontaler Schnittrichtung.
Schritt 3: Falls jede Teilfläche genau eine Zelle enthält, dann ENDE, sonst weiter mit Schritt 2.
\end{lstlisting}
\end{document}

u_fischer
27-04-2010, 13:33
Du musst dich halt entscheiden, welche columns-Einstellung du willst:


\documentclass[11pt,a4paper,fleqn]{scrartcl}
\usepackage{ngerman}
\usepackage[latin1]{inputenc}
\usepackage{listings}
\usepackage{hyperref}

\begin{document}

\lstset{language=[Visual]C++, basicstyle=\small\ttfamily, frame=tb, breaklines=true, breakautoindent=false, breakindent=65pt}
\begin{lstlisting}[caption={Pseudo--Code: Min--Cut},basicstyle=\small\ttfamily, columns=fixed]
Schritt 0: Aufteilung der Layoutfläche in zwei Teilflächen mit senkrechter oder horizontaler Schnittrichtung
Schritt 1: Anwendung des FM - Algorithmus, zur optimierten Verteilung der Zellen auf die beiden Teilflächen
Schritt 2: Rekursive Aufteilung der neu entstehenden Teilflächen und jeweils Neuzuordnung der Zellen auf diese. Alternierende Wechsel zwischen senkrechter und horizontaler Schnittrichtung.
Schritt 3: Falls jede Teilfläche genau eine Zelle enthält, dann ENDE, sonst weiter mit Schritt 2.
\end{lstlisting}

\begin{lstlisting}[caption={Pseudo--Code: Min--Cut},basicstyle=\small, columns=flexible]
Schritt 0: Aufteilung der Layoutfläche in zwei Teilflächen mit senkrechter oder horizontaler Schnittrichtung
Schritt 1: Anwendung des FM - Algorithmus, zur optimierten Verteilung der Zellen auf die beiden Teilflächen
Schritt 2: Rekursive Aufteilung der neu entstehenden Teilflächen und jeweils Neuzuordnung der Zellen auf diese. Alternierende Wechsel zwischen senkrechter und horizontaler Schnittrichtung.
Schritt 3: Falls jede Teilfläche genau eine Zelle enthält, dann ENDE, sonst weiter mit Schritt 2.
\end{lstlisting}

\begin{lstlisting}[caption={Pseudo--Code: Min--Cut},basicstyle=\small, columns=fullflexible]
Schritt 0: Aufteilung der Layoutfläche in zwei Teilflächen mit senkrechter oder horizontaler Schnittrichtung
Schritt 1: Anwendung des FM - Algorithmus, zur optimierten Verteilung der Zellen auf die beiden Teilflächen
Schritt 2: Rekursive Aufteilung der neu entstehenden Teilflächen und jeweils Neuzuordnung der Zellen auf diese. Alternierende Wechsel zwischen senkrechter und horizontaler Schnittrichtung.
Schritt 3: Falls jede Teilfläche genau eine Zelle enthält, dann ENDE, sonst weiter mit Schritt 2.
\end{lstlisting}
\end{document}

Quaneu
27-04-2010, 13:58
Danke dir (mal wieder).
Also mit columns=fixed klappt es fast immer ganz gut. Doch leider auch nicht immer...