词汇表和莱比锡 - 两次显示简短描述

词汇表和莱比锡 - 两次显示简短描述

我有一份使用直行注解的文档,使用莱比锡包。我希望使用词汇表样式:mcolsindex。但是,这会导致词汇表在词汇表本身中打印两次简短描述。我只想打印short-long

这是一个有效的例子:

\documentclass{article}  

\usepackage[nomain,nonumberlist,smallcaps]{glossaries} 

\usepackage{leipzig}
\usepackage{glossary-mcols}

\renewcommand{\glsnamefont}[1]{\textsc{#1}}

\newleipzig{und}{u}{undergoer} %custom leipzig acronym

\makeglossaries
\glsunsetall %used to surpress the full printing of an abbreviation in the first call.

\begin{document}  
\printglossary[style=mcolindex]

leipzig uses: {\Erg} vs {\Acc}
Custom abbreviation of undergoer: {\Und}

\end{document} 

这将产生如下词汇表: enter image description here

如果我\setacronymstyle{short-long}在序言中使用:它会抑制第二次印刷,但仅限于自定义莱比锡条目。(我会发布一张图片,但没有两张图片的声誉。)这显然与莱比锡包中定义的样式有关。

有人能建议一种可以消除这些问题的解决方法吗?

谢谢。

答案1

mcolsindex您可以根据不显示符号来定义新样式:

\documentclass{article}

\usepackage[nomain,nonumberlist,smallcaps]{glossaries}

\usepackage{leipzig}
\usepackage{glossary-mcols}

\newglossarystyle{mcolindexnosym}{%
  \setglossarystyle{mcolindex}%
  \renewcommand*{\glossentry}[2]{%
     \item\glsentryitem{##1}\glstreenamefmt{\glstarget{##1}{\glossentryname{##1}}}%
     \glstreepredesc \glossentrydesc{##1}\glspostdescription\space
##2%
  }%
}

\renewcommand{\glsnamefont}[1]{\textsc{#1}}

\newleipzig{und}{u}{undergoer} %custom leipzig acronym

\makeglossaries
\glsunsetall %used to surpress the full printing of an abbreviation in the first call. 

\begin{document}
\printglossary[style=mcolindexnosym]

leipzig uses: {\Erg} vs {\Acc}
Custom abbreviation of undergoer: {\Und}

\end{document}

请注意,此定义使用了来自 v4.26 的命令glossaries。对于早期版本,只需将其替换\glstreepredesc\space

image of document

答案2

我将为 leipzig 2.0 添加一个答案(刚刚添加到 CTAN,2017-06-16)。

包中包含了多列词汇表样式。它基于mcolalttree词汇表包的样式,而不是mcolindex。设置缩写词汇表样式的最简单方法是使用包选项,如本 MWE 中所示。

\documentclass{article}  

\usepackage[mcolblock]{leipzig} % simplified package inclusion in abstract!

\makeglossaries

\newleipzig{und}{u}{undergoer} %custom leipzig acronym

\begin{document}  

\printglosses % or \printglossaries, to print all glossaries

leipzig uses: {\Erg} vs {\Acc}
Custom abbreviation of undergoer: {\Und}

\end{document}

输出如下:

enter image description here

当然,如果您愿意,您仍然可以定义自己的风格,而不是使用 leipzig 预定义的块风格。

答案3

问题与 Leipzig 包无关,也与 mcols 无关;而是样式“index”的一部分。Index 在词汇表中显示三个条目,缩写、符号和详细描述。对于这些条目,缩写和符号是相同的。需要做的是采取某种方式来抑制符号的出现。

一个解决方案是编辑“索引”样式表,该样式表位于“词汇表”包中的“词汇表树.sty”中。只需从索引环境中删除对符号的引用,即注释掉第 58 行。

这已经解决了问题,尽管可能还有更优雅的解决方案。

相关内容