3

我正在使用 LaTeX 中的词汇表包。我已经\gls{foo}在我的文档中,但我不希望“foo”的条目出现在词汇表中。如何\gls{foo}在我的文档正文中保持工作(即扩展),但从词汇表中排除“foo”条目?

编辑:我想用它\gls{foo}来表示“这里使用的‘foo’在本文档中有它的特定含义。” 不过,在少数情况下,我最终得到了一个“foo”,它的定义太明显——或难以——在词汇表中清晰表达。

所以我想像\gls{foo}往常一样扩展,但我不希望“foo”条目出现在词汇表中。

我希望这会增加一些关于我想要完成的事情的信息。这可能是对术语表的滥用,但我发现确保在编写技术文档时始终使用相同的单词和正确的单词很有帮助。

4

3 回答 3

2

如果您正在使用该glossaries软件包,您可以创建一个“被忽略”的词汇表,例如

\documentclass{article}

\usepackage{glossaries}
\newglossary[glignoredl]{ignored}{glignored}{glignoredin}{Ignored Glossary}
\makeglossaries

\newglossaryentry{foofoo}{name={FOOFOO},description={foofoo stuff}}
\newglossaryentry{foo}{name={FOO},type={ignored},description={no good description}}
\newglossaryentry{bar}{name={BAR},description={bar of stuff}}

\begin{document}

Here is a \gls{foo} that is also a \gls{bar}, but of course it's also a \gls{foofoo}.
Why not consider buying a \gls{foo}?

\printglossary
% \printglossary[type={ignored}]

\end{document}
于 2010-05-15T21:33:58.453 回答
2

我不知道你为什么要这样做,但以下应该有效:

\let\oldgls\gls% store the original meaning of \gls in a new command named \oldgls
\let\gls\relax$ make \gls do nothing
Some text with \gls{foo} no links to the glossary, 
and no ``foo'' entry in the glossary.
\let\gls\oldgls% restore the original meaning of \gls
Some more text with \gls{bar} that links to the glossary,
and with a ``bar'' entry in the glossary.
于 2010-05-15T01:47:41.727 回答
1

这可以通过将术语添加到特殊common字典来完成。它实际上是包的一个内置功能,glossaries它甚至由包作者举例说明。从所说的例子:

\documentclass{article}

\usepackage{glossaries}
\newignoredglossary{common}
\makeglossaries

\newglossaryentry{sample}{name={sample},description={an example}}
\newglossaryentry{commonex}{type=common,name={common term}}

\begin{document}
\gls{sample}. \gls{commonex}.
\printglossaries
\end{document}

注意\newignoredglossary命令的使用。

于 2015-01-04T22:24:42.977 回答