我刚开始使用 LaTeX,正在使用 Leipzig 软件包来处理语言注释,我也希望将其显示在词汇表中。在 Leipzig 软件包中,只定义了注释本身,而词素边界(- 和 =)则手动放置在文本中。
快捷方式的定义方式如下:\newleipzig{attr}{attr}{at\-tri\-bu\-ti\-ve} %attributive
第一个 {attr} 是快捷方式,第二个是出现在注释和词汇表中的内容。如果我添加词素边界,例如\newleipzig{attr}{=attr}{at\-tri\-bu\-ti\-ve} %attributive
,它们当然也会出现在词汇表中。
有没有办法定义 2 个单独的输出,即一个用于包括词素边界在内的注释示例,另一个用于词汇表?
下面是一个例子,其中词素边界位于注释之外:
\documentclass[11pt] {book}
\usepackage[a4paper, twoside, top=3cm,bottom=3cm,left=3cm,right=4cm]{geometry}
\usepackage{fontspec} \usepackage{xltxtra} \usepackage{xunicode}
\setmainfont{Charis SIL}
\usepackage[hidelinks]{hyperref}
\usepackage[toc, nonumberlist, mcolblock]{leipzig}
\makeglossaries
\usepackage{gb4e}
\usepackage{cgloss}
\let\eachwordone=\itshape
\let\eachwordtwo=\small
\def\gltoffset{-0ex}
\newcommand{\source}[1]{\hfill {\small \sf #1}}
\newleipzig{attr}{attr}{at\-tri\-bu\-ti\-ve} %attributive
\newleipzig{an}{an}{adjectival noun} %adjectival noun
\newleipzig{act}{act}{ac\-tive} %active
\newleipzig{cv}{cv}{con\-verb} %converb
\newcommand{\Acv}{{\Act}{\Cv}}%
\begin{document}
\printglossary[type=\leipzigtype,title=Abbreviations]
\begin{exe}
\ex \label{ex-bad-ghost}
\gll sulob ɖiʔke loʔ-gu=nu ɖuma bania=kaŋ\\
tree from fall-\Acv{}=\Attr{} spirit bad=\An{}\\
\glt `The spirit of someone who died from falling off a tree is a bad one.' \\
\end{exe}
\end{document}
非常感谢你的帮助 :)
答案1
老实说,我会用它\newcommand
来定义一个包含词缀/附着词连接词和缩写的宏。
您实际上并不想使用\newleipzig
它来执行此操作,因为\newleipzig
定义了词汇表条目,而词缀或附着词连接词并不是正确的“简短”形式的注释。此外,正如您所注意到的,词缀/附着词连接词也会显示在词汇表中。
这里我定义了三个新命令,它们看起来就像 gloss 宏,但有一个“b”前缀(b 代表 bound?)。
\newcommand{\bAttr}{={\Attr}}
\newcommand{\bAn}{={\An}}
\newcommand{\bAcv}{-{\Acv}}
\bAttr
然后,您可以在行间注释示例中使用 eg而不是\Attr
。我想,如果您决定用来分析为词缀的词素实际上是附着词,那么将连字符全局更改为等号将变得很容易……但您仍然需要手动浏览并更改示例的第一行。