我喜欢为工作制作词汇表。为此,我有一个小小的风格问题:每次词汇表中的单词出现时,您是否都会链接到词汇表条目,还是仅在章节/部分/段落/... 第一次出现时才链接到词汇表条目?因为在 MS Word 中我没有遇到这样的问题 ^^
例子:
\glslink{bla}{apples} and \glslink{bla}{apples} and \glslink{bla}{apples}
或者:
\glslink{bla}{apples} and apples and apples
哪一个更好?因为对每个单词都这样做会非常烦人。
谢谢 ^^
答案1
这取决于文档,无论您主要使用类似\gls
(我通常这样做)的命令还是类似\glslink
(如您的问题)的命令,以及您是否使用可以配置为通过键映射或类似方式插入命令以减少打字的复杂文本编辑器。
如果您的文档类似于参考书或用户手册,大多数读者只是浏览一下,而不是从头到尾阅读,那么如果他们从索引中查找了某些内容(或使用了 PDF 查看器的搜索功能),他们可能会从章节中间开始阅读。在这种情况下,如果您每章只添加一次超链接或仅在第一次使用时添加超链接,他们可能会错过第一个链接。如果您隐藏链接,那么它们就不会那么令人反感,但仍可以帮助可能不熟悉术语的读者。
如果您使用类似 的命令(而不是使用或\gls
提供链接文本),那么这可以帮助保持一致性。例如,在英语中,一些复合词带有连字符,而有些则没有。我并不总是记得住,但如果我使用 ,那么我只需要在定义条目时查找它,而不是每次使用它时都查找。同样,如果术语需要一些特殊的格式。\glslink
\glsdisp
\gls
例如,bib2gls
用户手册以及随行的入门指南有很多超链接来自\gls
(或类似),但它们都使用:
\usepackage[hidelinks]{hyperref}
所以它们不会太显眼。
如果您由于变格而使用了\glslink
很多,那么我建议按照 Christian 的回答添加键。如果您只想要偶尔的超链接,而不是只索引第一次使用,另一种可能性是默认关闭超链接,只在特定用例中启用它们。例如:
\documentclass{article}
\usepackage[colorlinks]{hyperref}
\usepackage{glossaries-extra}
% \glslinkpresetkeys requires glossaries-extra.sty:
\renewcommand{\glslinkpresetkeys}{\setkeys{glslink}{hyper=false}}
\newglossaryentry{sample}{name={sample},description={an example}}
\begin{document}
\glslink{sample}{an example},
\glslink+{sample}{an example},
\glslink{sample}{an example}.
\printunsrtglossary % requires glossaries-extra.sty
\end{document}
修饰符+
的作用类似于hyper=true
选项的快捷方式,适用于所有\gls
和\glstext
类型的命令,以及由创建的命令\glsaddkey
。(相反的是*
应用的修饰符hyper=false
。)
如果您有编辑、主管、校对员或测试读者,那么可能值得询问他们是否认为超链接有帮助或分散注意力,因为写作最终是为了读者的利益。
答案2
没有规定条目是否应该链接。根据hyperref
etc 的设置,带有彩色边框的链接可能读起来很乏味,因此只需链接第一次出现的内容或将其用作 的colorlinks
选项hyperref
。
根据文本中的位置,在遇到条目时提供链接可能会很方便,以便能够跳转到词汇表。如果不确定,请链接任何出现的情况。
这是一种无需明确\glslink
条目的方法,而是配置\glslinkpostsetkeys
该条目迄今为止是否已被使用。
这样,\glspl
等\gls
可以以各种方式使用。如果\setkeys{glslink}{hyper=false}
启用,则链接被禁用。为了启用链接的第一次使用,\glsentrycurrcount
需要评估和hyper=false
设置宏,请参阅下面的代码。
如果任何事件需要链接,则删除重新定义\glslinkpostkeys
或hyper=true
在那里说出来。
作为一个特殊用例,我已定义genitiv
和genitivplural
键以应用于德语。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{hyperref}
\usepackage{glossaries}
\usepackage{blindtext}
\makeglossaries
\glsenableentrycount
% Either remove this macro redefinition completely or say hyper=true if any occurence shall be linked.
\renewcommand*{\glslinkpostsetkeys}{%
\ifnum\glsentrycurrcount{\glslabel}>1% Did we use it more than once?
\setkeys{glslink}{hyper=false}%
\fi
}
% Defining keys with a lovely mix of English and German words ;-)
\glsaddkey{genitiv}{%
%empty on purpose since German genitive construction is irregular
}{%
\glsentrygenitiv% no link
}{%
\Glsentrygenitiv%
}{%
\glsgenitiv%
}{%
\Glsgenitiv%
}{%
\GLSgenitiv%
}
\glsaddkey{genitivplural}{%
% empty on purpose since German genitive construction is irregular
}{%
\glsentrygenitivplural% no link
}{
\Glsentrygenitivplural%
}{%
\glsgenitivplural%
}{%
\Glsgenitivplural%
}{%
\GLSgenitivplural%
}
\newglossaryentry{apple}{%
name=Apfel,
plural=Äpfel,
genitiv=Apfels,
genitivplural={{Ä}pfel},
description={Apple}
}
\begin{document}
Der \Gls{apple} war reif. Das Aussehen des \glsgenitiv{apple} entsprach nicht meinen Vorstellungen.
Die \glspl{apple} waren reif. Das Aussehen der \GLSgenitivplural{apple} ließ zu Wünschen übrig, daher kaufte ich die \glspl{apple} nicht.
But again in upper case:\GLS{apple} and here in usual German writting: \Gls{apple}
\end{document}