列表中,如何禁止其他页面的上下框架栏?

列表中,如何禁止其他页面的上下框架栏?

pdflatex正在运行

\documentclass{article}
\usepackage{listings}
\begin{document}
\vspace*{121ex}% writing 122ex instead of 121ex leads to breaking just after the upper bar.
\begin{lstlisting}[frame=tb]
a single code line
\end{lstlisting}
\end{document}

在下方栏之前产生分页符:

输出

我们的非最小示例也是一行代码,因此它是有意义的

A. 将代码与上下分隔线完全放在一页上,

或者——这是一个略有不同的目标,但对我们来说也可以——

. 避免在刚好在上方栏之后和刚好在下方栏之前出现分页符。

实现这两个目标的方法可能有很多种,那么最好的或最标准的方法是什么呢?据我所知,列表文档中没有提到分页符。(目标的解决方案比目标更受欢迎A。我们的环境:在我们的非最小示例中,我们使用 Springer 的 svmono.cls 和 NewTX 字体。)

为了A,我们尝试了 minipage,但不知道如何垂直正确地将代码与上面的文本分开:

\documentclass{article}
\usepackage{listings,lipsum}
\begin{document}
\vspace*{88ex}
\lipsum[1]
\smallskip% not sure about the standard vertical skip above the lstlistings.
\begin{minipage}{\linewidth}% causes too small vertical spacing above. Adding \smallskip increases the space below. (Why?)
\begin{lstlisting}[frame=tb]
a single code line
\end{lstlisting}%
\end{minipage}\par
\lipsum[2]
\end{document}

产量

小型页面解决方案尝试的输出

为了,我们没有解决方案。因此非常受欢迎。

已通知维护者。

相关内容