编辑:根据@kmbkrkn 的要求,从原始文档中添加了一个示例(见下文)
我用语言语言注释,并有类似的问题gb4e 注释中带下划线的单词未垂直对齐。我尝试使用不同的宏,这些宏使我能够在第一个注释行上的一个或多个单词字符下方添加一些内容(大多数情况下只是元音下方的 \cdot,有时会更宽一些),到目前为止,使用 的\stackrel
效果最好。但是,这种高度变化会严重影响下一个(注释)行的垂直对齐。我尝试了一些建议\smash
,但到目前为止找不到解决方案(并且不想尝试更改 中的任何内容,linguex.sty
因为文档应该尽可能便携)...
那个部分A。示例中的\stackrel
宏仅对“受影响”的单词使用 ( \stb
= \somethingbelow
);由于高度差异导致更严重的混乱,我将所有“不受影响”的单词包装在类似的stackrel
宏中 ( \ntb
=\nothingbelow
部分中的b.结果更具可读性,但远非完美对齐。
有什么想法吗?如果我只需要更改我的\stb
/\ntb
宏,那就太好了...
\documentclass[11pt]{article}
\usepackage{stackrel}
\usepackage{linguex}
\usepackage{geometry}
\geometry{a4paper}
\begin{document}
\newcommand{\somethingthenbelow}[2]{% 2 args
$\stackrel[\textrm{#2}]{}{\textrm{#1}}$%
} % \somethingthenbelow
\def\stb{\somethingthenbelow}
\newcommand{\nothingbelow}[1]{% 1 arg
$\stackrel[\textrm{}]{}{\textrm{#1}}$%
} % \nothingbelow
\def\ntb{\nothingbelow}
% glossing vertical alignment test:
\ex.
\ag. some gl\stb{o}{$\cdot$}ssing with c\stb{e}{\scriptsize$\cdot\,k$}rtain height alignment problems\\
Some Glossing w. some altitude alignment probs\\
`It's about some glossing with certain height alignment problems!'
%
\bg. \ntb{some} gl\stb{o}{$\cdot$}ssing \ntb{with} c\stb{e}{\scriptsize$\cdot\,k$}rtain \ntb{height} \ntb{alignment} \ntb{problems}\\
Some Glossing w. some altitude alignment probs\\
`It's about some glossing with certain height alignment problems!'
%
\cg. \ntb{some} gl\stb{o}{$\cdot$}ssing \ntb{with} c\stb{e}{\scriptsize$\cdot\,k$}rtain \ntb{height} \ntb{alignment} \ntb{problems}\\
capital LETTERS don't make IT any BETTER\\
`It's about some glossing with certain height alignment problems!'
\par
% test.
\end{document}
编辑:原始文档中的一个例子
它看起来与我迄今为止尝试排版的并没有太大不同……
它有单一\cdot
标记,另外还有钾— 引用第一个词(Òzó)。
答案1
原始资料的排版确实很糟糕。语言示例来自 Èdó(一种尼日利亚语言),其正字法包括Ọ/̣o
和Ẹ/̣e
(我将它们呈现为代码,因为网站上的常规字体无法正确显示它们)以及所有元音上的音调标记。下点有时使用下划线来书写,但这并不是正确的正字法。使用 XeLaTeX 和支持正确组合字符的字体来获取下点。我使用了 Gentium Plus,这是 SIL 提供的免费字体,可用这里。
使用linguex
\documentclass{article}
\usepackage{linguex}
\renewcommand\glt{} % removes extra vertical space from translation line
\usepackage{fontspec}
\setmainfont{Gentium Plus}
% Make _ active everywhere load last
\catcode`_=\active
\def_#1{\ifmmode\sb{#1}\else$\sb{#1}$\fi}
\begin{document}
\exg. Òzó_{k} gbọ́ọ́ ívìn Ọ́_{k} bòló ọ́kà\\
Ozo plant coconut he peel korn\\
\glt ‘Ozo planted coconut and [he] peeled the corn’
\end{document}
使用gb4e
\documentclass{article}
\usepackage{gb4e}
\renewcommand\glt{} % removes extra vertical space from translation line
\usepackage{fontspec}
\setmainfont{Gentium Plus}
\begin{document}
\begin{exe}
\ex\gll Òzó_{k} gbọ́ọ́ ívìn Ọ́_{k} bòló ọ́kà\\
Ozo plant coconut he peel korn\\
\glt ‘Ozo planted coconut and [he] peeled the corn’
\end{exe}
\end{document}