makeindex 用反斜杠替换垂直线

makeindex 用反斜杠替换垂直线

我的索引条目在数学模式下包含一条垂直线。makeindex似乎用反斜杠替换它,导致我重新编译时出现错误,因为它认为反斜杠后面的文本是一个命令。

梅威瑟:

\documentclass{article}
\usepackage{makeidx}
\makeindex

\begin{document}

$(r|p)$ centroid \index{$(r|p)$ centroid}

\printindex

\end{document}  

我运行latex时没有错误,然后makeindex也没有任何错误或警告,然后当我latex再次运行时我得到:

Writing index file mwe.idx
(./mwe.aux) (./mwe.ind [1{/usr/local/texlive/2015/texmf-var/fonts/map/pdftex/up
dmap/pdftex.map}]
./mwe.ind:3: Undefined control sequence.
l.3   \item $(r\, \p
                    )$ centroid{1}

mwe.ind包含:

\begin{theindex}

  \item $(r\, \p)$ centroid{1}

\end{theindex}

mwe.idx包含:

\indexentry{$(r|p)$ centroid}{1}

注意:如果我使用,也会出现同样的问题\index{rp centroid@$(r|p)$ centroid}

有什么建议吗?

答案1

在 中makeindex,竖线是转义字符,用于引入要应用于页码的命令。因此,它具有与反斜杠相同的效果(并被解释为反斜杠)。例如,如果您希望页码以斜体显示,请以 结束索引条目输入\textit

如果您希望在索引中出现垂直条,请将其输入为\vert(在数学模式下)。(还有一些其他可能性,但我现在不在可以检查的位置。)

手册中记录了这一点:\texdoc makeindex

相关内容