我应该如何更改词汇表条目之间的垂直间距?

我应该如何更改词汇表条目之间的垂直间距?

在不影响文档其余部分的情况下,一次性更改所有词汇表条目之间的垂直间距的最简单或最佳方法是什么?这肯定是一个基本问题,但我在词汇表和词汇表额外包的文档中找不到答案(这里这里),以及 Stack Exchange 上的其他地方。

梅威瑟:

\documentclass{book}

\usepackage[nogroupskip,nonumberlist,nopostdot]{glossaries}
\makenoidxglossaries
\renewcommand{\glossaryname}{Glossary}
\setglossarypreamble{\noindent This is a glossary.}
\newglossaryentry{cba}{name={cba},
description={definition of cba}}
\newglossaryentry{bca}{name={bca},
description={definition of bca}}
\newglossaryentry{abc}{name={abc},
description={definition of abc}}
\glsaddall

\begin{document}
The main text of the document.

\printnoidxglossaries
\end{document}

答案1

默认的词汇表样式实际上是一个description环境,并使用列表环境的默认间距。项目之间的间距为。\itemsep+\parsep不幸的是,这是在宏中定义的\@listi,您可以重新定义它,但这很丑陋,因为您必须使用\makeatletter...。\makeatother

您可以使用 定义自己的词汇表样式\newglossarystyle,但在我看来,在这种情况下这样做有点过头了。更简单的方法是重新定义环境theglossary并使用一种经过修改的description环境。例如,如果您想消除条目之间的垂直空间:

\renewenvironment{theglossary}%
    {\begin{list}{}
      {%
        \setlength\labelwidth{0pt}%
        \setlength\itemindent{-\leftmargin}%
        \setlength\itemsep{0pt}%
        \setlength\parsep{0pt}%
        \let\makelabel\descriptionlabel}%
      }
      {\end{list}}

在此处输入图片描述

相关内容