使用 changepage 包中的 adjustwidth 环境时出现奇怪的编译问题

使用 changepage 包中的 adjustwidth 环境时出现奇怪的编译问题

以下代码出现编译错误。

\documentclass{report}

\usepackage{changepage}

\begin{document}

\chapter{Text1}

\begin{adjustwidth}{1cm}{2cm}

\section{Text2}

Text3

\begin{quote}
Text4
\end{quote}

\end{adjustwidth}

\end{document}

错误提示:“有些错误——可能缺少 \item。”在 行中\begin{quote}。当我删除以下任一内容时,错误消失

  • 线\chapter{Text1}
  • 线\section{Text2}
  • 线Text3
  • 环境adjustwidth

怎么会这样?

答案1

嵌套失败。我不知道为什么,但是下面的方法有效:

相关部分是:

\nointerlineskip\leavevmode

这是典型的“LaTeX 将很多东西实现为 trivlist,尽管这会导致奇怪的错误消息”的业务。因此,您需要一些东西来\par正确处理标记,而这\leavevmode正是所需的。这里是完整的 MWE:

\documentclass{report}

\usepackage{changepage}

\begin{document}

\chapter{Text1}

\begin{adjustwidth}{1cm}{2cm}
\nointerlineskip\leavevmode
\section{Text2}

Text3

\begin{quote}
Text4
\end{quote}

\end{adjustwidth}

\end{document}

相关内容