align 环境中的 \index 问题

align 环境中的 \index 问题

$\mu^{\otimes\downarrow n}$请编译以下 MWE。然后您会看到,索引中的排版很奇怪!

\documentclass{article}
\usepackage{amsmath}
\usepackage{imakeidx}
\makeindex
\begin{document}
\begin{align}\index{$\mu^{\otimes\downarrow n}$}
x
\end{align}
\printindex
\end{document}

equation注意:将 代替align或 如果$\index{$\mu^{\otimes\downarrow n}$}$放在 之前没有问题\begin{align}

这里有什么问题?

答案1

通常,的参数\index是逐字读取的,但 ams 比对充当命令参数并逐字击败,因此参数被读取为命令标记,并且条目扩展为

 \indexentry{$\mu ^{\otimes \delimiter "3223379 n}$}{1}

这会弄乱索引。你可以使用

\index{$\mu^{\otimes\protect\downarrow n}$}

它可以工作,但在方程式或其他正常环境中使用时会产生不同的索引条目。确保所有使用都产生相同索引条目的最简单方法可能是使用

\mbox{\index{$\mu^{\otimes\protect\downarrow n}$}}

其中,\mbox只是为了强制将参数转换为宏参数,以便始终关闭逐字处理。

相关内容