为什么公式之间的空行会导致错误?LaTeX 中有很多命令,几乎所有命令中这些空行都不重要,但为什么在这种情况下很重要,是否有类似的功能?
答案1
TeXbook 第 135 页的摘录:
... [A] 空行或
\par
在数学模式下是不允许的。这为 TeX 提供了另一种从缺失中恢复的方法$
;此类错误将局限于它们发生的段落。
Knuth 提供了以下示例来阐明这一语法规则:
例如,假设你要写
The smallest $n such that $2^n>1000$ is~10.
TeX 不知道您
$
在第一个 之后忘记了 an
,因为它不懂英语;因此它在前两个$
符号之间找到一个“公式”: 之后,它会认为2
是文本的一部分。但是 却^
出现了不一致的情况;TeX 会自动$
在 之前插入^
,然后您会收到一条错误消息。这样,计算机就恢复了同步,文档的其余部分就可以像什么都没发生一样进行排版了。
因此,虽然乍一看不允许在(内联或显示)数学模式中有空行似乎很麻烦,但这个语法规则实际上有一个很好的理由:它有助于将错误限制在发生错误的段落中,并允许您编译文档的其余部分(假设您想这样做)。
当然,如果我们可以绝对保证输入中永远不会出现任何缺失$
符号,那么就不需要禁止空白行了。然而,我们当中谁完全有能力并愿意提供这样的保证呢?