尽管所有括号都放置完美,但 TeX 仍出现双重脚本错误

尽管所有括号都放置完美,但 TeX 仍出现双重脚本错误

每当我写作时,

${{\dot y}^a}^\top$

我将收到双上标错误。

{{\dot y}^a}^\top 解析得很完美。我不明白为什么会出现错误。请帮忙!

答案1

摘自 TeXbook,第 26 章:数学模式摘要,第 291 页(最后一句是我强调的)

{<math mode material>}。类别 1 的字符标记或与此类字符标记相等的控制序列\bgroup\let导致 TeX 开始新的分组级别,并开始处理新的数学列表。当此类组结束时——`}'使用生成的数学列表作为新 Ord 原子的核心,并将其附加到当前列表中。但是,如果得到的数学列表是单个 Acc 原子(即重音量),则该原子本身会被附加。

最后一句的意思是,如果括号的内容是单个 Acc 原子(包括下标/上标),那么外面的括号会被有效地删除。

相应的例程在 TeX 的§1186 中有描述(再次强调:我强调)

在此处输入图片描述

因此,{{\dot y}^a}数学列表的内容是{\dot y}^a,这是一个 Acc 原子(带上标)。因此括号被剥离,就像您写的 一样{\dot y}^a^\top,导致双上标错误。请注意,每次遇到右括号时都会执行此检查和可能的括号剥离,因此嵌套无济于事:即使是像

{{{\dot{y}^a}}}^\top

戴三副牙套也无济于事。

解决方案是在数学列表中添加一些内容,使其不只包含 Acc 原子,例如空组或零核间距:

${{}\dot{y}^a}^\top$

或者,你可以在第二个上标之前添加空组,如下所示沃纳他在评论中指出。这将导致上标的位置不同,这可能是需要的,也可能不是;你自己选择吧。

\documentclass{article}
\begin{document}
${{}\dot{y}^a}^\top$
${\dot{y}^a}{}^\top$
\end{document}

在此处输入图片描述

相关内容