如何在词汇表中的项目和定义之间添加冒号分隔符?
标准glossaries
使词汇表看起来像这样:
物品长定义。
但我想加一些分隔符
物品:长定义。
在每个项目中添加冒号\newglossaryentry
是一个非常丑陋的解决方案,有没有办法在序言中定义它?
答案1
可以使用新的词汇表样式插入分隔符:
,这可能只是现有样式的变体。对于标准列表样式,必须设置以下内容:
\newglossarystyle{mystyle}{%
\setglossarystyle{list}% base this style on the list style
\renewcommand*{\glossentry}[2]{%
\item[\glsentryitem{##1}%
\glstarget{##1}{\glossentryname{##1}\myitemdelimiter}]
\glossentrydesc{##1}\glspostdescription\space ##2}
}
打印\glossentryname{##1}
词汇表的简称(或缩写),因此这里必须在后面添加分隔符。
\documentclass{book}
\usepackage{hyperref}
\usepackage{glossaries}
\makeglossaries
\newcommand{\myitemdelimiter}{:}
\newglossaryentry{Maxwell}{%
name={James Clerk Maxwell},
description={English physicist}
}
\newglossaryentry{Boltzmann}{%
name={Ludwig Boltzmann},
description={Austrian physicist}
}
\newglossaryentry{Einstein}{%
name={Albert Einstein},
description={German physicist}
}
\newglossarystyle{mystyle}{%
\setglossarystyle{list}% base this style on the list style
\renewcommand*{\glossentry}[2]{%
\item[\glsentryitem{##1}%
\glstarget{##1}{\glossentryname{##1}\myitemdelimiter}]
\glossentrydesc{##1}\glspostdescription\space ##2}
}
\setglossarystyle{mystyle}
\begin{document}
\glsaddall
\printglossary
\end{document}
笔记其他词汇表样式也需要类似的更改,但这取决于样式。请查看glossaries-user.pdf
,这是更详细的glossaries
手册