我如何确保列表不会被拆分?

我如何确保列表不会被拆分?

我如何确保列表不会被拆分?如果要拆分,我希望整个列表移动到下一页,有效地一次性移动所有内容。我的意思是列表之后的任何文本都必须保留在列表之后。

答案1

您可以将lstlisting环境包装在minipage环境中以禁止分页符:

 \begin{minipage}{\textwidth}
 \begin{lstlisting}
   content
 \end{lstlisting}
 \end{minipage}

但是,当列表不适合时,这可能会导致列表前的页面上出现较大的空白。将列表变成带有标题和标签的浮动,并在文本中使用\refafigure或等引用它会更好table。这可以使用以下方法完成:

 \begin{lstlisting}[float,caption=<Caption text>,label=<label>]
   content
 \end{lstlisting}

然后\ref{<label>}在文本中使用。

这当然会让.tex文件中列表后面的文本出现在最终文档中列表前面,而您不想看到的内容则不会出现。正如所述,更好的样式是调整您的文档以适应这一点。

答案2

\begin{framed} \begin{lstlisting} 或 \lstinputlisting{...} \end{lstlisting} \end{framed}

相关内容