LaTeX 中的多个索引

LaTeX 中的多个索引

我熟悉如何使用该包创建多个索引。其中一个必需步骤是为每个生成的文件multind运行可执行文件。一个典型的解决方案是按照以下方式执行操作(这是;用户会另眼相看):makeindex.idxunixwindows

for file in *.idx; do
    makeindex ${file}
done

这种方法的缺点是它可能会处理太多.idx文件。有没有简单的方法来确定哪些.idx文件是真正需要的?

答案1

只需使用 Makefile(或诸如latexmklatexmake、之类的实用程序latex-make)。

例如创建一个Makefile文件:(<TAB>代表制表符):

indexes := $(patsubst %.idx,%.ind,$(wildcard *.idx))
all: $(indexes) # and other stuff
%.ind: %.idx
<TAB>   makeidx $^

然后,只需发出make命令即可。这显然可以增强功能,但这make确实是一个很好的起点。

答案2

multind不是多个索引的首选包:它几乎没有任何功能,而且过于简单。TeX FAQ 条目多个索引列出了一些其他可能性

amsmidx
index
splitidx
imakeidx

最后一个(我是作者之一)可以让您摆脱这个问题,因为它会自动执行makeindex

相关内容