I'm using the lstlisting
package in my diploma thesis to include code snippets. Unfortunately one of them won't fit on a single page. Stil LaTeX won't split it over multiple pages and instead the text goes under the bottom of the page.
What am I doing wrong? My setup follows.
...
\newfloat{Algorithm}{t}{lop}
...
\lstset{ %
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{Algorithm}[!htp]
\begin{lstlisting}[mathescape]
... a code snippet which is way too long ...
\end{lstlisting}
\caption{caption}
\label{label}
\end{Algorithm}
...
lstlisting
environment, butAlgorithm
. Listings can be broken over pages just fine, but a floating object (as mentioned by Johannes) can't.