除词汇表中的页码之外,如何使名称和描述成为可点击的超链接?

除词汇表中的页码之外,如何使名称和描述成为可点击的超链接?

默认情况下,词汇表中只有页码是可点击的超链接。

  • 问:如何将条目的名称和描述变成可点击的超链接?

这类似于 hyperref 的linktoc=all目录选项,从而使 PDF 文档具有统一的外观。

我正在使用glossaries-extra包含中间步骤的包bib2gls。单独的文件以 MWE.bib命名。testentries.bib

我们可以假设每个词汇表条目只有一个页码链接。这正是我的用例。[回应卡博哈周到评论

在我的文档中,我只使用\gls*。并且对于文件中的每个条目.bib\gls*{entry}在主文档中只使用一次。这是因为引用本质上是对数学文本中重要术语的首次介绍,并且只能有一个“首次介绍”。

(如果你发现这个假设过于严格,你可以解决一个更一般的情况,例如以“第一个”页码的链接或另一个页码的链接,以某种方式指定为该条目的“主要”参考。然而,没有必要对于我来说这种普遍的运动是有用的:))。


平均能量损失

\documentclass{book}

\usepackage{tocloft} % for creating dots as in table of contents
\usepackage{titlesec} % might change something, not sure
\usepackage{lipsum}
\usepackage[colorlinks=true, linkcolor=blue]{hyperref} % importing hyperref with blue-colored links
\usepackage[record, stylemods={default}, style={alttree}]{glossaries-extra} % importing glossaries-extra alttree style and record option

\GlsXtrLoadResources[src={testentries}, break-at={none},type={main}] % creating the glossary based on testentries.bib via bib2gls
\glssetcategoryattribute{general}{glossnamefont}{textbf} % adding textbf formatting to glossary entry names

\renewcommand{\cftchapleader}{\cftdotfill{\cftsecdotsep}} % same dots in table of contents and glossary
\renewcommand*\glspostdescription{\cftdotfill{\cftsecdotsep}} % same dots in table of contents and glossary

\begin{document}
    
    \chapter{Test Chapter}
    
    \lipsum[1]
    \gls{TestEntry1} bla bla
    \lipsum[2-6]
    \gls*{TestEntry2} bla bla bla
    
    \renewcommand{\glossarypreamble}{\glsfindwidesttoplevelname[\currentglossary]} % nice formatting of names and descriptions (inc. no overlaps)
    \printunsrtglossary[type=main] % prints glossary

\end{document}

文件:.bibtestentries.bib

@entry{TestEntry1,
name={TestEntry1},
text={Name of TestEntry1},
description={Some made-up description of TestEntry1}
}

@entry{TestEntry2,
name={TestEntry2, Longer},
text={Name of TestEntry2},
description={Some made-up description of TestEntry2}
}

词汇表的输出(请注意,蓝色超链接仅限于行末的页码)

词汇表的输出

相关内容