在注释示例中添加一行文本

在注释示例中添加一行文本

这是我正在使用的代码(你需要cgloss.sty运行它):

\documentclass[11pt]{article}
\usepackage{linguex}
\usepackage{cgloss}
\begin{document}

\ex.
\ag. This is a sentence. \\
a b c d\\ \hfil{lalalala}
\glt `blah'
\bg. This is a sentence. \\
a b c d\\ \hfil{lalalala}
\glt `blah'

\end{document}

它产生以下内容:

在此处输入图片描述

有没有办法修改它,使它看起来像这样:

在此处输入图片描述

也就是说,我希望在我的示例中包含“This is a sentence”的行上方有一行包含“Context”的行。如果我只使用\\,这会弄乱行间注释。

答案1

另一个不使用linguex. 的理由 :) 如果您不打算使用它,我建议您改用。但是如果您打算使用它,您可以直接使用注释宏而不是包装器gb4e来做您想做的事情。cgloss4elinguex

linguex单独使用

因为linguex在行中添加了一个小的垂直空间\ex.,所以我制作了一个相应的命令,用于示例包含介绍行的情况。如果您喜欢小的额外空间(如我示例代码的第二个版本),那么您根本\ix.不需要该命令。\ix.

\documentclass{article}

\usepackage{linguex}
\def\ix.{\ex.\setlength{\Extopsep}{0pt}}
\begin{document}
\ix. 
\a. This is an introductory sentence describing the context.
\gll This is a gloss\\
This is another gloss\\
\glt `This is a translation.'

\ex. 
\a. This is an introductory sentence describing the context.
\gll This is a gloss\\
This is another gloss\\
\glt `This is a translation.'

\end{document}

linguex 代码的输出

使用linguexcgloss

如果您也在使用cgloss,那么解决方案实际上更简单,我们只需要\vskip\gll命令中添加零长度,我们就可以使用etoolbox包来完成。

\documentclass{article}

\usepackage{linguex,cgloss}
\usepackage{etoolbox}
\pretocmd{\gll}{\vskip0pt}{}{}
\begin{document}
\ex. 
\a. This is an introductory sentence describing the context.
\gll This is a gloss\\
This is another gloss\\
\glt `This is a translation.'\hfill (Language information)

\end{document}

cgloss 代码的输出

相关内容