词汇表:Hyperref/Link 仅指向每章中第一次出现的条目

词汇表:Hyperref/Link 仅指向每章中第一次出现的条目

我想要类似的东西问题,但回答缺少我需要的一些东西:

  • 重新定义宏的复数变体\gls\glspl, \Glspl, \GLSpl
  • 每次开始新的章节时,我希望超级引用能够再次打开(自动)
  • \printglossaries-produced 部分中,全部\gls词汇表引用应为超引用(当我在条目描述中使用时)

关于第一点,如果\gls{x}是的单数形式,\glspl{x}则会产生超链接至相应的词汇表条目。

在后续的词汇表条目使用中,一个可接受的替代方法是禁用超引用上的彩色框(但保留超引用)

答案1

如果您的firsttext值相同,则可以使用以下方法实现此目的:

\documentclass{report}

\usepackage{etoolbox}
\usepackage[colorlinks]{hyperref}
\usepackage
 [
    nohypertypes={main}% suppress automatic links for main glossary
 ]
 {glossaries}

% reset entries at the start of each chapter
\preto\chapter{\glsresetall}

\makeglossaries

% Modify the way `\gls`, `\glspl` (and their case-changing versions)
% and `\glsdisp` appear:

\renewcommand{\glsentryfmt}{%
  \ifglsused{\glslabel}
    {\glsgenentryfmt}% entry has been used.
    {\glshyperlink[\glsgenentryfmt]{\glslabel}}% entry hasn't been used
}

\newglossaryentry{apple}{
  name={apple},
  description={small round fruit}
}

\newglossaryentry{pear}{
  name={pear},
  description={small non-round fruit}
}

\begin{document}

\chapter{Sample}

\section{No Case Change}

Singular: \gls{apple}. Plural: \glspl{apple}.

Singular: \gls{pear}. Plural: \glspl{pear}.

\section{First Letter Uppercase}

Singular: \Gls{apple}. Plural: \Glspl{apple}.

Singular: \Gls{pear}. Plural: \Glspl{pear}.

\section{All Uppercase}

Singular: \GLS{apple}. Plural: \GLSpl{apple}.

Singular: \GLS{pear}. Plural: \GLSpl{pear}.

\chapter{Another Sample}

\section{No Case Change}

Singular: \gls{apple}. Plural: \glspl{apple}.

Singular: \gls{pear}. Plural: \glspl{pear}.

\section{First Letter Uppercase}

Singular: \Gls{apple}. Plural: \Glspl{apple}.

Singular: \Gls{pear}. Plural: \Glspl{pear}.

\section{All Uppercase}

Singular: \GLS{apple}. Plural: \GLSpl{apple}.

Singular: \GLS{pear}. Plural: \GLSpl{pear}.

\printglossaries

\end{document}

第一页:

首页图片

第二页:

第二页图片

词汇表:

词汇表图片

如果您有任何缩写,则此方法将在每章开始时重置它们。如果您不希望发生这种情况,则代码将需要进行一些修改。

相关内容