TeXnicCenter - makeindex 不会一次性生成首字母缩略词和词汇表

TeXnicCenter - makeindex 不会一次性生成首字母缩略词和词汇表

我目前正在撰写硕士论文,必须结合使用 MiKTeX 和 TeXnicCenter 进行写作。我遇到了一个问题makeindex

在我的 Tex 文件中,我使用这个glossary包。我用它创建词汇表条目和首字母缩略词。TeXnicCenter 允许我插入一个makeindex命令。目前

"%tm".glo -t "%tm".glg -s "%tm".ist -o "%tm".gls

使用此命令,我得不到我想要的结果。我通过运行 Windows 命令得到此结果:

makeindex Masterarbeit.glo -s Masterarbeit.ist -t Masterarbeit.glg -o Masterarbeit.gls
makeindex -s Masterarbeit.ist -t Masterarbeit.alg -o Masterarbeit.acr Masterarbeit.acn

是否可以将其合并为一个并插入到 TeXnicCenter 中?

我注意到,这makeindex必须在生成 pdf 之前执行。如何触发它?(这样就可以使用新的首字母缩略词和词汇表条目)

谢谢!

编辑:这是当我在创建 pdf 之前没有运行 Windows 命令时显示的消息:

pdfTex 警告(目标):名称{glo:ABC} 已被引用但不存在,请用固定名称替换

答案1

获取包括词汇表和首字母缩略词的 pdf 文件的正确运行顺序是:

  1. pdflatex Masterarbeit.tex(首次运行将创建词汇表和缩略词所需的文件)
  2. makeindex(制作词汇表,第二个makeindex创建首字母缩略词(稍后我们使用批处理通过一次调用完成两次运行))
  3. pdflatex(包括目录、词汇表和缩略词)
  4. pdflatex(最终得到正确的页码)

我认为最快的方法是创建一个mwe.bat包含两行的 Windows 批处理文件,其中包含需要运行makeindex两次的命令:

makeindex Masterarbeit.glo -s Masterarbeit.ist -t Masterarbeit.glg -o Masterarbeit.gls
makeindex -s Masterarbeit.ist -t Masterarbeit.alg -o Masterarbeit.acr Masterarbeit.acn

将批处理文件放入包含tex代码的同一目录中。

我可能是你必须添加相关的路径,当你尝试时你就会明白。

在 TeXnicCenter 中,您有预定义的输出配置文件,但您可以自己定义新的配置文件。进入 TeXnicCenter 菜单Build-->Define Output profiles并选择您用于编译的配置文件。单击Copy并为新复制的配置文件输入新名称,例如mwe-makeindex

选中(La)TeX并单击最后一个框以取消选中(不要在此配置文件中使用 makeindex)。

现在单击post processor,单击new(查找目录符号)并输入后处理器名称glossary。添加到executables批处理文件的名称中mwe.bat(如果需要,添加路径)。要关闭窗口,请单击“确定”按钮。

通过这种构造,您可以使用新的输出配置文件来编译您的tex代码,然后由 TeXnicCenter 自动使用批处理文件mwe.bat来运行makeindex您需要的两个命令。

首先编译后,您将获得所需的所有文件makeindex。然后调用批处理来运行两个命令(这就是我使用邮政处理器!)。

下一次编译运行可以使用这两个makeindex命令的结果。

我只有德语版的 TeXnicCenter,但如果您需要,如果上述建议不清楚,我可以附上屏幕截图。

相关内容