假设我有以下.tex
文件:
\documentclass{article}
\usepackage[nonumberlist]{glossaries}
\makeglossary
\newglossaryentry{snore}
{
name={snore},
description={to make an unpleasant noise while sleeping soundly}
}
\begin{document}
I don't \gls{snore} when I'm sleeping.
\printglossary
\end{document}
这编译得很好,我得到了想要的结果。但是,我还想使用\gls
动词“打鼾”的其他形式。例如,“我打鼾”、“我在打鼾”、“他打鼾”。
我知道有一个\glspl
命令可以自动生成复数形式。但在这种情况下这还不够。
有没有办法利用该glossaries
包来实现这一点?还是我应该寻找更复杂的库?
答案1
词汇表包有一个优秀的常问问题:
我的术语有多种复数形式,我该如何处理?
使用复数键来输入您最有可能使用的复数术语,并使用其中一个用户键来输入其他复数。例如:
\newglossaryentry{cow}{name=cow, description={a fully grown female of any bovine animal (plural cows, archaic plural kine)}, user1={kine}} \let\glsaltpl\glsuseri
现在,您可以使用
\glspl
表示第一个复数,\glsaltpl
使用 表示第二个复数。有六个用户键,因此此方法也可用于其他语法结构。从 4.0 版开始,您还可以通过 定义自己的键\glsaddkey
。有关更多详细信息,请参阅用户手册中的“附加键”部分。如何为条目定义不同的语法部分?
与 我的术语有多种复数形式,我该如何处理?您可以使用其中一个用户密钥(例如 user1),也可以定义自己的密钥。但是,这会导致大量额外的密钥。您可能会发现使用
\glsdisp
或 更简单\glslink
。例如,使用以下定义:\newglossaryentry{run}{name=run,description={...}}
然后你可以这样做:
I \glsdisp{run}{ran} to the shops. They are \glsdisp{ran}{running} to catch the bus.
(我认为第二个\glsdisp
有错别字,应该是glsdisp{run}{running}
。)
答案2
这是一种可能性。
\documentclass{article}
\usepackage[nonumberlist]{glossaries}
\makeglossary
\newglossaryentry{snore}
{ name={snore},
description={\emph{Verb} To make an unpleasant noise while sleeping soundly}
}
\newglossaryentry{snored}
{ name={snored},
description={Past Tense of \textbf{\gls{snore}}}
}
\newglossaryentry{snoring}
{ name={snoring},
description={Present Continuous Tense of \textbf{\gls{snore}}}
}
\newglossaryentry{snores}
{ name={snores},
description={Simple Tense of \textbf{\gls{snore}}}
}
\begin{document}
I don't \gls{snore} when I'm sleeping.
I \gls{snored}.
I'm \gls{snoring}.
He \gls{snores}.
\printglossary
\end{document}