为什么 \( 和 \) 一开始没有被定义为强命令?

为什么 \( 和 \) 一开始没有被定义为强命令?

我知道使用\(...\)和之间的区别$...$(例如,在移动参数中),是的,我已经阅读了这个问题的答案:\( 和 \) 是否比 $ 更好?\()。我还知道和的定义\)

 \def\({\relax\ifmmode\@badmath\else$\fi}
 \def\){\relax\ifmmode\ifinner$\else\@badmath\fi\else\@badmath\fi}

(摘自 源2e.pdf

我的问题是:在 LaTeX 内核中,无法\(且已被定义为强命令?是否有任何(非平凡的)理由解释为什么它们被定义为脆弱命令?\)

答案1

由于fixltx2e包的结尾是

\MakeRobust\(
\MakeRobust\)
\MakeRobust\[
\MakeRobust\]
\MakeRobust\makebox
\MakeRobust\savebox
\MakeRobust\framebox
\MakeRobust\parbox
\MakeRobust\rule
\MakeRobust\raisebox

可以肯定地说,这只是一个错误,因为内核此时无法更改,所以才遗留了下来。还值得指出的是,文档第 4 节fixltx2e“2005/12/01 添加的修复”中介绍了这一点。

相关内容