BreakLines не работают

BreakLines не работают

У меня есть часть кода, которая больше страницы. Я использую следующую конфигурацию lstlisting:

\usepackage{listings}
\lstset{
basicstyle=\ttfamily,
columns=fullflexible,
xleftmargin=3ex,
breaklines=true,
breakatwhitespace=false,
escapechar=`
}

код находится в следующем месте:

\begin{figure}[tb]
\HRule
\begin{lstlisting}
   MY LONG CODE
\end{lstlisting}
\HRule
\caption{some code.\label{fig:code}}
\end{figure}

К сожалению, рисунок с кодом не разделен на две страницы, а показывает только ту часть, которая умещается на одной странице. Что может быть причиной проблемы и каково ее решение?

решение1

Плавающая среда не может иметь разрыв страницы! Вместо этого используйте

\begin{lstlisting}[caption=some code.,label=fig:code]
   MY LONG CODE
\end{lstlisting}

Если вам нужна подпись под кодом, то используйте также captionpos=b.

Связанный контент