我有一个环境,用于格式化我正在编写的文档中的示例。该环境的内容通常由几个短段落组成,通常每个段落只有一两行。我有时会在下一页或上一页上发现一行分隔开,但由于这些行通常是单行段落,LaTeX 不会将它们视为孤行或孤行,因此\clubpenalty
和\widowpenalty
不适用。
我希望让 LaTeX 将整个环境视为一个段落,以便惩罚孤行和孤行;或者对环境中的任何分页符添加额外的惩罚。我并不指望它们完全停止,但我看到很多分页符,我相信如果 LaTeX 知道这样做的话,它就可以避免。
不确定 MWE 是否真的添加了任何内容,但无论如何,这里有一个。
\documentclass[a4paper]{article}
\usepackage{mdframed,parskip,color,xcolor,lipsum}
\mdfsetup{leftmargin=2em,linewidth=3pt,
rightline=false,topline=false,bottomline=false,
skipabove=1em,skipbelow=0.25em}
\definecolor{examplebg}{HTML}{E9FBE9}
\definecolor{exampleln}{HTML}{9999FF}
\newmdenv[backgroundcolor=examplebg,linecolor=exampleln]{examplebox}
\newenvironment{example}{\begin{examplebox}%
\textit{Example} --- \ignorespaces}%
{\end{examplebox}}
\begin{document}
\lipsum
\begin{example}
\lipsum
\end{example}
\lipsum
\end{document}