我目前正在编写一份大型文档,我有两个词汇表,一个用于首字母缩略词,一个用于普通词汇表。我设置了超链接,以便正文中的词汇表条目具有指向词汇表项目的链接。至少这是计划。不幸的是,这不起作用,所有链接都指向文档的第一页。
这是我的 MWE:
\documentclass[a4paper]{memoir}
\usepackage[acronym,toc]{glossaries}
\usepackage{hyperref}
\makeglossaries
\pagestyle{ruled}
\newglossaryentry{UML}{name={UML},description={definition}}
\newacronym{XML}{XML}{Extensible Markup Language}
\begin{document}
\chapter{Intro}
\gls{XML}
\gls{UML}
\printglossaries
\end{document}
为了使用 latexmk 进行构建,我使用这个 .latexmkrc:
add_cus_dep('glo', 'gls', 0, 'makeglossaries');
sub makeglossaries {
system("makeglossaries '$_[0]'");
}
pdflatex 输出以下警告:
pdfTeX warning (dest): name{glo:UML} has been referenced but does not exist, replaced by a fixed one
pdfTeX warning (dest): name{glo:XML} has been referenced but does not exist, replaced by a fixed one
我不确定glo:
警告中的这个前缀从何而来,也许这就是问题所在?
不,这不是重复的如何通过前言页面获取正确的词汇表链接?. 从词汇表条目到文本中出现的反向链接对我很有用。
答案1
与大多数其他软件包相反,glossaries
必须加载后 hyperref
。这一事实在第 2 页中被强调词汇表 初学者指南。 看哪些包应该在 hyperref 之后加载而不是之前加载?以获取最重要的“例外”列表hyperref
。