如何使用 imakeidx 创建多个索引?

如何使用 imakeidx 创建多个索引?

下列源文件显示为:如何使用 imakeidx 创建多个索引?

\documentclass{scrartcl}

\usepackage[splitindex]{imakeidx}
\makeindex
\makeindex[name=foo,title=Test]

\begin{document}
Test1\index{Test1}
Test2\index[foo]{Test2}
\newpage
Test3\index{Test3}
Test4\index[foo]{Test4}

\printindex
\printindex[foo]
\end{document}

该问题已被关闭,因为据称其中的一个错误imakeidx已被修复。

但是,当我通过运行pdflatex(两次,可以肯定)来处理该源文件时,然后makeindex,最后pdflatex再次运行,我根本没有得到任何索引。事实上,只有一个.ind文件,而且该文件是空的。

我究竟做错了什么。

答案1

您会收到一条警告:

Package imakeidx Warning: Remember to run (pdf)latex again after calling
(imakeidx)                `splitindex' and processing the indices.

它会准确告诉您需要做什么。

或者,pdflatex使用该-shell-escape选项运行。

解释:splitindex不在允许从受限 shell 转义中调用的“安全程序列表”中。

另一种可能性是,仅使用两个指数,删除该splitindex选项。

相关内容