无标题的词汇表

无标题的词汇表

我有一个分两列打印的词汇表,但标题打印在第一列:

在此处输入图片描述

如果我单独打印标题,则有:

在此处输入图片描述

如何避免使用该命令再次打印“Glossario” \printglossary?我使用包glossary

这是我的 MWE:

\documentclass[english,11pt,twoside]{scrbook} 
\usepackage[paperwidth=17.5cm,paperheight=25cm, inner=1.25cm,outer=5.75cm,top=3cm,bottom=3cm]{geometry}
\usepackage{multicol}
\usepackage[style=list,glossaryname=false,number=none]{glossary}
\makeglossary
\begin{document}
\glossary{name={Luce}, description={Radiazione elettromagnetica di particolare frequenza, percepibile dall'occhio umano. La lunghezza d'onda dello spettro luminoso varia da 1 nm (violetto estremo) a 1000 nm (rosso).}}

\glossary{name={Numero atomico}, description={Numero utilizzato per caratterizzare chimicamente un atomo. Corrisponde al numero di protoni presenti nel nucleo dell'atomo.}}

%\normalsize
\addcontentsline{toc}{chapter}{Glossario}
\newgeometry{inner=1.25cm,outer=1.25cm}
%\chapter*{Glossario}
\thispagestyle{plain}

\hfill \huge\textbf{Glossario}
\small  
\begin{multicols}{2}
\printglossary
\end{multicols}
\restoregeometry
\end{document}

答案1

问题是,无论 的值如何\glossarytitle,包都会注入\chapter*命令,这会导致列错位。要解决这个问题,请将\glossarytitle宏重新定义为空并输入您自己的\chapter* 环境multicols

\documentclass[11pt,twoside]{scrbook} 
\usepackage[style=list,number=none]{glossary}
\usepackage{multicol}

\renewcommand\glossaryname{Glossario}
\renewcommand\glossarytitle{}
\makeglossary

\begin{document}
\chapter{The First Chapter}
This is a test\glossary{name={test}, description={test}} of glossary functionality.

\section{The First Section}
Here we will test and check\glossary{name={check}, description={test2}} the glossary.

\chapter*{\glossaryname}
\begin{multicols}{2}
\printglossary
\end{multicols}
\end{document}

给出输出: MWE 输出

您可能会考虑切换到glossaries包裹,因为glossary已经过时,而新包的样式更灵活。提供了迁移说明这里

答案2

首先,该选项glossaryname对于该包来说不是一个有效的选项glossary

我建议您重新定义theglossary环境,以便词汇表以两列打印。也就是说,在序言中添加以下几行

\makeatletter
\renewenvironment{theglossary}{%
\glossarytitle\glossarypreamble%
\begin{multicols}{2}\@bef@reglos%
}{%
\@ftergl@s\end{multicols}%
\noindent\glossarypostamble}
\makeatother

toc=true此外,如果您想要目录中的词汇表条目,只需在加载时添加选项即可glossary(不需要该\addcontentsline行):

\usepackage[style=list,number=none,toc=true]{glossary}

MWE(我也加载了babelitalian选项):

\documentclass[11pt,twoside]{scrbook}
\usepackage[paperwidth=17.5cm,paperheight=25cm, inner=1.25cm,outer=5.75cm,top=3cm,bottom=3cm]{geometry}
\usepackage[english,italian]{babel}
\usepackage{multicol}
\usepackage[style=list,number=none,toc=true]{glossary}

\makeatletter
\renewenvironment{theglossary}{%
\glossarytitle\glossarypreamble%
\begin{multicols}{2}\@bef@reglos%
}{%
\@ftergl@s\end{multicols}%
\noindent\glossarypostamble}
\makeatother

\makeglossary

\begin{document}
\tableofcontents

\glossary{name={Luce}, description={Radiazione elettromagnetica di particolare frequenza, percepibile dall'occhio umano. La lunghezza d'onda dello spettro luminoso varia da 1 nm (violetto estremo) a 1000 nm (rosso).}}

\glossary{name={Numero atomico}, description={Numero utilizzato per caratterizzare chimicamente un atomo. Corrisponde al numero di protoni presenti nel nucleo dell'atomo.}}

%\normalsize

\newgeometry{inner=1.25cm,outer=1.25cm}
%\chapter*{Glossario}
\thispagestyle{plain}

\small
\printglossary

\restoregeometry
\end{document} 

输出:

在此处输入图片描述

相关内容