![Expex 行间居中包括标点符号](https://linux22.com/image/359204/Expex%20%E8%A1%8C%E9%97%B4%E5%B1%85%E4%B8%AD%E5%8C%85%E6%8B%AC%E6%A0%87%E7%82%B9%E7%AC%A6%E5%8F%B7.png)
如下图所示,使用 时glwordalign=center
, 中的标点符号\gla
算作单词的一部分。因此,\glb
和\glc
不仅以单词为中心,而且以标点符号为中心。如何防止标点符号算作单词的一部分,以便只有单词对齐,而标点符号仍然在正确的位置?
以下是 MWE:
\documentclass{book}
\usepackage{expex}
\lingset{glwordalign=center}
\begin{document}
\exdisplay
\begingl
\gla "aaaaa aaaaaaa!" aaaa aaaa aaaa... //
\glb bbbbb bbbbbbb bbbb bbbb bbbb //
\glc ccccc ccccccc cccc cccc cccc //
\endgl
\xe
\end{document}
PS 忽略错误的起始引号。
答案1
您可以使用\nogloss
宏来标记\gla
行中未打亮的元素,再加上@
来删除空格。请注意 周围的空格@
是必需的。
\documentclass{book}
\usepackage{expex}
\lingset{glwordalign=center}
\begin{document}
\exdisplay
\begingl
\gla \nogloss{``} @ aaaaa aaaaaaa @ \nogloss{!''} aaaa aaaa aaaa @ \nogloss{\ldots} //
\glb bbbbb bbbbbbb bbbb bbbb bbbb //
\glc ccccc ccccccc cccc cccc cccc //
\endgl
\xe
\end{document}