LaTeX 定义\frac
为
\DeclareRobustCommand\frac[2]{{\begingroup#1\endgroup\over#2}}
即分数是使用\over
括号组包围的来包含其效果。TeXbook 在第 155 页指出
还有第八种分类,
\mathinner
通常不用于单个符号;分数和\left...\right
构造被视为“内部”子公式,这意味着在某些情况下它们将被额外的空间包围。
这让我以为的结果\frac{1}{2}
是一个\mathinner
原子。然而,下面的 MWE 表明事实并非如此。
\documentclass{article}
\begin{document}
\(\frac{1}{2} (3 + 4 + 5)\)
\(\mathord\frac{1}{2} (3 + 4 + 5)\)
\(\mathinner\frac{1}{2} (3 + 4 + 5)\)
\end{document}
\frac
因此,似乎插入的括号组不是创建一个\mathinner
原子,而是一个\mathord
原子,就像任何其他子公式一样。
- 鉴于
\over
需要用括号括起来以限制其效果,分数何时会创建“内部”子公式?TeXbook 中提到的“某些情况”是什么? \mathinner
在的定义前面加上\frac
,使其真正产生\mathinner
原子,这有什么害处吗?