如何使用不同语法缩略词形式的词汇表?

如何使用不同语法缩略词形式的词汇表?

我正在用德语写一篇论文,不知道如何让词汇表为我服务。德语中有 4 种不同的格,根据我想要使用的性别、格、单数/复数和定/不定形式的组合,我必须使用不同形式的名词和形容词。我的问题基本上是,如何定义在首字母缩略词列表中使用的标准形式,但对长形式(在第一次使用首字母缩略词的地方)使用语法正确的形式?

我已经进行了很多小时的研究和反复试验,但还没有完全实现我想要的结果。这里描述了一个原则:自定义词汇表生成的首字母缩略词的首次使用我喜欢这个想法,但不幸的是,如果我只使用名词作为首字母缩略词的基础,那么这很容易,因为那样我只有四种不同的形式。如果我使用形容词和名词的组合,我会得到非常多的形式,这意味着在首字母缩略词列表中定义所有这些形式需要做大量工作。

另一项提议(见在其他语言中使用词汇表包。) 是使用\glslink\glsdisp并在使用首字母缩略词的所有地方定义其形式。虽然这很简单,但它并没有像我希望的那样工作,因为它只显示长格式,而且似乎没有设置“首次使用”标志。

我实际上正在考虑一种与第二个建议非常相似的方法,但是使用\gls,因此它将在第一次使用时显示短格式和长格式,之后只显示长格式。我已经尝试根据自己的需要修改第一个示例,但我并不完全理解那里的所有命令,所以我很困惑。

为了说明起见,我想要的是类似这样的东西:\gls{<label>}{<apperance at this point in the text as long form in case of first use>}

编辑:这是我发布的第二个链接中的示例:

\newcommand{\newacronymgerman}[6]{%
\newacronym{#1}{#2}{\protect\gchoose{#3}{#4}{#5}{#6}}}
\newcommand{\acg}[2][N]{\csname choose#1\endcsname\ac{#2}\chooseN}
\newcommand{\chooseN}{\renewcommand\gchoose[4]{##1}}
\newcommand{\chooseA}{\renewcommand\gchoose[4]{##2}}
\newcommand{\chooseD}{\renewcommand\gchoose[4]{##3}}
\newcommand{\chooseG}{\renewcommand\gchoose[4]{##4}}
\newcommand{\gchoose}[4]{#1}

\newacronymgerman{<name>}{<abbrev>}{<Nom>}{<Akk>}{<Dat>}{<Gen>}

现在我想将其更改为在输入时不使用任何预定义 (Nom、Akk、Dat、Gen) 形式,\acg而是在文本中使用它的地方将实际形式作为参数给出\acg。它实际上应该非常简单,但由于我不理解示例中的所有命令(即使经过数小时的查找),我无法自己完成。

编辑:

一个例子是:

  • 我有点老了r曼恩。(我是个老人。)
  • 我是老人的丈夫。 (我是那位老人。)
  • 我看到老女人n曼恩西文。(我看到了老人的妻子。)
  • 我给了他nMann ein Buch。(我给老人一本书。)
  • 我们是老男人。 (我们都是老人。)
  • 你是老女人nMänner。(你们是老男人的妻子。)
  • 我住在老地方n方式n我的书。 (我把我的书送给了老人家)。

另一个例子:

  • 这是一条小路s善良。(这是个小孩。)
  • 这就是小种类。 (这是小孩子。)
  • 小头发的颜色n种类西文ist braun。(孩子的头发是棕色的。)
  • 我爱你们nKind ein Buch vor。(我给孩子读一本书。)
  • 我们是小孩子。 (我们都是小孩子。)
  • 我们是小nKinder。(我们是小孩子。)
  • 这是小头发rKinder。(这是小孩子的头发颜色。)
  • 我很小n金德nein Buch vor.(我给小孩子们读一本书。)

在这些情况下,我仅列出了“alter Mann”(阳性)和“kleines Kind”(中性)需要不同后缀形式的情况。在这两种情况下,不同形式已经因情况而异,而对于阴性词,还会有其他形式。

在这个特定情况下(第一个示例),我希望在我的词汇表中使用“alter Mann”,但在文本中使用类似于的内容Ich bin der \gls[alte Mann]{aM}.来生成第二个示例句子。我担心,事先为每个首字母缩略词定义所有可能的形式(定义首字母缩略词时)会花很长时间,但也许这就是我必须做的?!

答案1

我看不出缩写词与您的问题有何关联,但\newglossaryentry可以使用 来添加新键\glsaddkey,其中指定新键、默认值(如果尚未分配该键)以及可用于稍后访问该键提供的信息的各种命令。(这些命令类似于\glsentrytext\Glsentrytext\glstext和等命令,\Glstext因此\GLStext不受首次使用标志的约束。)

为了简洁起见,我只定义了阳性情况。你可以对其他性别和复数情况应用类似的方法。为了简洁起见,我也只定义了一个术语。我可能犯了语法错误,但这应该能让你了解如何添加新键的一般要点:

\documentclass{article}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\usepackage{glossaries}

\makeglossaries

% Without article:

% masculine nominative
\glsaddkey
 {mnominative}% key
 {}% default value
 {\glsentrymnominative}% no link cs
 {\Glsentrymnominative}% no link ucfirst cs
 {\glsmnom}% link cs
 {\Glsmnom}% link ucfirst cs
 {\GLSmnom}% link all caps cs

% masculine accusative
\glsaddkey
 {maccusative}% key
 {}% default value
 {\glsentrymaccusative}% no link cs
 {\Glsentrymaccusative}% no link ucfirst cs
 {\glsmacc}% link cs
 {\Glsmacc}% link ucfirst cs
 {\GLSmacc}% link all caps cs

% masculine genitive
\glsaddkey
 {mgenitive}% key
 {}% default value
 {\glsentrymgenitive}% no link cs
 {\Glsentrymgenitive}% no link ucfirst cs
 {\glsmgen}% link cs
 {\Glsmgen}% link ucfirst cs
 {\GLSmgen}% link all caps cs

% masculine dative
\glsaddkey
 {mdative}% key
 {}% default value
 {\glsentrymdative}% no link cs
 {\Glsentrymdative}% no link ucfirst cs
 {\glsmdat}% link cs
 {\Glsmdat}% link ucfirst cs
 {\GLSmdat}% link all caps cs

% With definite article:

% masculine nominative
\glsaddkey
 {mdefnominative}% key
 {der \glsentrymnominative{\glslabel}}% default value
 {\glsentrymdefnominative}% no link cs
 {\Glsentrymdefnominative}% no link ucfirst cs
 {\glsmdefnom}% link cs
 {\Glsmdefnom}% link ucfirst cs
 {\GLSmdefnom}% link all caps cs

% masculine accusative
\glsaddkey
 {mdefaccusative}% key
 {des \glsentrymaccusative{\glslabel}}% default value
 {\glsentrymdefaccusative}% no link cs
 {\Glsentrymdefaccusative}% no link ucfirst cs
 {\glsmdefacc}% link cs
 {\Glsmdefacc}% link ucfirst cs
 {\GLSmdefacc}% link all caps cs

% masculine genitive
\glsaddkey
 {mdefgenitive}% key
 {dem \glsentrymgenitive{\glslabel}}% default value
 {\glsentrymdefgenitive}% no link cs
 {\Glsentrymdefgenitive}% no link ucfirst cs
 {\glsmdefgen}% link cs
 {\Glsmdefgen}% link ucfirst cs
 {\GLSmdefgen}% link all caps cs

% masculine dative
\glsaddkey
 {mdefdative}% key
 {den \glsentrymdative{\glslabel}}% default value
 {\glsentrymdefdative}% no link cs
 {\Glsentrymdefdative}% no link ucfirst cs
 {\glsmdefdat}% link cs
 {\Glsmdefdat}% link ucfirst cs
 {\GLSmdefdat}% link all caps cs

% With indefinite article:

% masculine nominative
\glsaddkey
 {mindefnominative}% key
 {ein \glsentrymnominative{\glslabel}}% default value
 {\glsentrymindefnominative}% no link cs
 {\Glsentrymindefnominative}% no link ucfirst cs
 {\glsmindefnom}% link cs
 {\Glsmindefnom}% link ucfirst cs
 {\GLSmindefnom}% link all caps cs

% masculine accusative
\glsaddkey
 {mindefaccusative}% key
 {eines \glsentrymaccusative{\glslabel}}% default value
 {\glsentrymindefaccusative}% no link cs
 {\Glsentrymindefaccusative}% no link ucfirst cs
 {\glsmindefacc}% link cs
 {\Glsmindefacc}% link ucfirst cs
 {\GLSmindefacc}% link all caps cs

% masculine genitive
\glsaddkey
 {mindefgenitive}% key
 {einem \glsentrymgenitive{\glslabel}}% default value
 {\glsentrymindefgenitive}% no link cs
 {\Glsentrymindefgenitive}% no link ucfirst cs
 {\glsmindefgen}% link cs
 {\Glsmindefgen}% link ucfirst cs
 {\GLSmindefgen}% link all caps cs

% masculine dative
\glsaddkey
 {mindefdative}% key
 {einen \glsentrymdative{\glslabel}}% default value
 {\glsentrymindefdative}% no link cs
 {\Glsentrymindefdative}% no link ucfirst cs
 {\glsmindefdat}% link cs
 {\Glsmindefdat}% link ucfirst cs
 {\GLSmindefdat}% link all caps cs

\newglossaryentry{alt}%
{%
  name={Alt},% how it appears in the glossary
  text={alt},% predicative
  plural={alt},% predicative plural
  description={old},% description
% without article
  mnominative={alter},% nominative
  maccusative={alten},% accusative
  mgenitive={altem},% genitive
  mdative={alten},% dative
% with definite article
  mdefnominative={der alte},% nominative
  mdefgenitive={dem alten}% genitive
}

\begin{document}

Ich bin \glsmindefnom{alt} Mann.

Ich bin \glsmdefnom{alt} Mann.

Ich sehe die Frau \glsmdefacc{alt} Mannes.

Ich gebe \glsmdefgen{alt} Mann ein Buch.

\printglossaries

\end{document}

得出的结果为:

结果图像

相关内容