同一页上有多个词汇表,带有章节标题

同一页上有多个词汇表,带有章节标题

我需要两个词汇表。它们之间应该只用 a 分隔,\medskip而不是用\newpage-break 分隔。为了妥善存放它们,我考虑将它们放在一个章节中符号列表

手动的使用长表格样式(例如long3col)时会发出警告,但仅限于具有长描述的条目,因为表格单元格内不会有分页符。然而,这并不适用于此处...

为了抑制分页符,我遵循了这个帖子暂时使\newpage-command 无效(接受的答案建议重新定义\glsclearpage,但这对我的情况不起作用,对其他人来说显然也不起作用)

\begingroup\let\newpage\relax
    \printglossary
    \printglossary
\endgroup

奇怪的是,这似乎抑制了章节标题的出现:第一章/词汇表有六页,章节标题、第一个词汇表和第二个词汇表之间有双分页符。

第二次尝试添加章节/词汇表,结果是页面上同时显示两个词汇表,但没有任何章节标题(左);只有添加文本后才会打印章节标题(右):

tightGlossaryWithWithoutText

\documentclass{scrbook}

\usepackage{glossaries}
% define alternative glossaries
\newglossary[ulg]{UppercaseCharacter}{uld}{udn}{List of uppercase characters}
\newglossary[llg]{LowercaseCharacter}{lld}{ldn}{List of lowercase characters}

% Term definitions
\newglossaryentry{A}{name=A, description={This is an uppercase character}, type=UppercaseCharacter}
\newglossaryentry{a}{name=a, description={This is a lowercase character}, type=LowercaseCharacter}

% activateglossaries
\makeglossaries
\setglossarystyle{long3col}


\begin{document} 
    \chapter*{List of symbols}
     % Print the glossaries
    \printglossary[type=UppercaseCharacter] % domain glossary
    \printglossary[type=LowercaseCharacter] % domain glossary

    \chapter*{Tight list of symbols}
    \begingroup\let\newpage\relax
        \printglossary[type=UppercaseCharacter] % domain glossary
        \bigskip
        \printglossary[type=LowercaseCharacter] % domain glossary
    \endgroup
    
    \chapter*{Tight list of symbols + Text}
    dfgfgjfghj
    \begingroup\let\newpage\relax
    \printglossary[type=UppercaseCharacter] % domain glossary
    \printglossary[type=LowercaseCharacter] % domain glossary
    \endgroup%\clearpage


    \chapter{Content}
    UPPERCASE: \gls{A} and lowercase: \gls{a}

\end{document}

进一步看来,似乎不可能控制 Tex 原始组内的垂直间距,或者是因为词汇表不应该放在一页上?

答案1

仍然不知道为什么发生这种情况时,我发现了两个解决方法。

正如 Tomas Kurlis 在评论中指出的那样,使用-packagesections中的选项glossary不会发生此问题:

\documentclass{scrbook}

\usepackage[section]{glossaries}
% define alternative glossaries
\newglossary[ulg]{UppercaseCharacter}{uld}{udn}{List of uppercase characters}
\newglossary[llg]{LowercaseCharacter}{lld}{ldn}{List of lowercase characters}

% Term definitions
\newglossaryentry{A}{name=A, description={This is an uppercase character}, type=UppercaseCharacter}
\newglossaryentry{a}{name=a, description={This is a lowercase character}, type=LowercaseCharacter}

% activateglossaries
\makeglossaries
\setglossarystyle{longheader}

\begin{document} 
    \chapter*{List of symbols}
    % Print the glossaries
    \printglossary[type=UppercaseCharacter] % domain glossary
    \printglossary[type=LowercaseCharacter] % domain glossary
    
    
    \chapter*{Tight list of symbols}
    \begingroup\let\newpage\relax
    \printglossary[type=UppercaseCharacter] % domain glossary
    \bigskip
    \printglossary[type=LowercaseCharacter] % domain glossary
    \endgroup
    
    \chapter*{Tight list of symbols + Text}
    dfgfgjfghj
    \begingroup\let\newpage\relax
    \printglossary[type=UppercaseCharacter] % domain glossary
    \printglossary[type=LowercaseCharacter] % domain glossary
    \endgroup%\clearpage
    
    \chapter{Content}
    UPPERCASE: \gls{A} and lowercase: \gls{a}
\end{document}

词汇表作为章节

如果您需要将它们作为章节,并且希望在打印之前有一个空白章节\phantom{}。但这不是常见情况(是的,我问的问题并不那么聪明)... 章节标题没有被渲染很奇怪,但您必须忍受章节标题之间的距离,因为它被处理为一行(不可见的)文本。

相关内容