为什么 LaTeX 将 \DeclareMathSymbol 和 \DeclareSymbolFont 设为仅有前言?

为什么 LaTeX 将 \DeclareMathSymbol 和 \DeclareSymbolFont 设为仅有前言?

有没有很好且令人信服解释为什么 LaTeX 限制序言部分\DeclareSymbolFont和的使用\DeclareMathSymbol?我也可以问许多其他宏。

更新:我添加\DeclareMathVersion一个特别相关的内容。


我添加了不同的情况\mathversion:它只能在数学模式之外使用。这一点似乎没有必要讨论。或者是吗?当 TeX 在到达数学列表末尾时会查看数学字体,如果可以在中途使用\mathversion(基本上\boldmath),这甚至会改变之前的内容。所以人们可能会想,好吧,这足以让它无法在数学模式下使用。但真的是这样吗?用户无权亲自查看其选择的后果(尽管手册中有适当的警告),而只是收到一条错误消息,提示禁止这样做。

我只是不明白这一点:两种情况都会出错。第一种情况会导致结果出错;毕竟用户会发现它并没有按照预期的方式工作。这将成为获得良好参考手册的动机。第二种情况会立即做出判断:禁止这样做!哪种情况最好?我更喜欢第一种。

答案1

\begin{document}LaTeX 中,设置已声明的字体表需要做大量工作。如果允许稍后更改这些内容,则将变得相当复杂。此外,1993 年的机器上的 LaTeX2e 刚好适合 TeX 的可用内存,通过将所有字体声明机制(和包加载机制)重新定义为\let相同的定义,它释放了大量标记内存,使您可以在文档中进行交叉引用和其他定义。

相关内容