如何控制环境前后出现多少垂直空间verbatim
?
使用以下来源(运行通过pdflatex
):
\documentclass[varwidth]{standalone}
\begin{document}
text before verbatim
\begin{verbatim}
some verbatim text
\end{verbatim}
text after verbatim
\end{document}
我得到以下信息:
我希望能够进行一些调整以获得以下行为:
编辑:
我还希望该解决方案适用verbatim
于列表项中的环境:
\documentclass[varwidth]{standalone}
\begin{document}
\begin{itemize}
\item text before verbatim
\begin{verbatim}
some verbatim text
\end{verbatim}
text after verbatim
\end{itemize}
\end{document}
答案1
verbatim
使用在其上方和下方添加和trivlist
的当前值(如果在段落开头,则添加后者);由于在已经由 打开一个组时启动了,因此可以安全地在本地设置值:修补的命令是,以 开头,因此我们可以在该命令之前设置参数:\topsep
\partopsep
trivlist
verbatim
\@verbatim
\trivlist
\usepackage{etoolbox}
\makeatletter
\preto{\@verbatim}{\topsep=0pt \partopsep=0pt }
\makeatother
下面是一个示例,我将两个minipage
环境放在一起只是为了显示行距:
\documentclass{standalone}
\usepackage{etoolbox}
\makeatletter
\preto{\@verbatim}{\topsep=0pt \partopsep=0pt }
\makeatother
\begin{document}
\begin{minipage}{5cm}
text before verbatim
\begin{verbatim}
some verbatim text
\end{verbatim}
text after verbatim
\end{minipage}%
\begin{minipage}{5cm}
abc\\
def\\
ghi
\end{minipage}
\end{document}