梅威瑟:
\documentclass{article}
\usepackage{lipsum}
\begin{document}
This is the first quote:
\quote{\lipsum[1]}
This sentence and the following quote should not be inside the first quote:
\quote{\lipsum[2]}
\end{document}
第一个引文之后,引文缩进应该结束并恢复正常,但相反,下面的段落继续以与第一个引文相同的缩进。因此,第二个引文得到了双缩进。
为什么会出现这种情况?这是正常现象吗?我该如何防止这种情况发生?
答案1
我知道的唯一一个定义\quote
为带参数的命令的类是moderncv
(参见ModernCV 中的 \quote 和 \raggedright 问题例如)。
我知道的所有其他类都定义了一个quote
环境。因此,命令\quote
已定义,但它永远不应在文档中使用(当然moderncv
,除非它在类中)。
\documentclass{article}
\usepackage{lipsum}
\begin{document}
This is the first quote:
\begin{quote}
\lipsum[1]
\end{quote}
This sentence and the following quote should not be inside the first quote:
\begin{quote}
\lipsum[2]
\end{quote}
\end{document}
您的示例中发生了什么?当 TeX 看到时\begin{quote}
,它会发出\begingroup
作为以下设置声明的范围,例如更宽的边距、段落之间的间距等等;打开组后,\quote
会发出命令,该命令确实会执行设置。
稍后,当\end{quote}
发现时,\endgroup
会发出命令,结束范围并将参数恢复为先前的值。由于您没有范围,因此这种设置将永远持续下去。