词汇表包中既有排序的词汇表,也有未分类的词汇表?

词汇表包中既有排序的词汇表,也有未分类的词汇表?

使用该glossaries包,是否可以有两个词汇表:

  1. 一种是未分类的(即按出现/使用顺序),例如符号索引,以及

  2. 另一个按字母顺序排序,例如术语表?

    如果是,怎么办?

注意:我还需要将符号词汇表细分为几组。我知道如何只用一个词汇表来实现这一点,但如果我还有第二种词汇表,通常的方法会不会造成干扰?

如果有关系的话,我会使用memoirdocumentclass。

答案1

如果您想要不同的排序规则,则需要使用\makenoidxglossariesand\printnoidxglossary而不是\makeglossariesand 。变体使用 TeX 进行排序和整理,而不是使用or\printglossarynoidxmakeindexxindy。如果有一个最小工作示例(MWE)来说明您拥有的条目类型。以下示例使用测试文件中提供的虚拟条目example-glossaries-brief.texexample-glossaries-symbols.tex应使用 进行安装glossaries.sty

\documentclass{memoir}

\usepackage[symbols]{glossaries}
\usepackage{glossary-mcols}

\makenoidxglossaries

\loadglsentries{example-glossaries-brief}
\loadglsentries[symbols]{example-glossaries-symbols}

\begin{document}

\glsaddall

\printnoidxglossary[sort=word,style=mcolindexgroup]
\printnoidxglossary[type=symbols,sort=def,style=index]

\end{document}

主要词汇表按词序排序:

词汇表样本图片

符号词汇表未排序,尽管在本例中它看起来已排序,因为示例条目是按该顺序定义的。另一个选项是sort=use按照文档中的首次使用对条目进行排序。有许多不同的预定义词汇表样式可供选择。

请注意noidx方法按字母顺序排序效率很低,并且仅适用于 ASCII。glossaries-extra扩展包允许混合搭配方法,因此makeindex/xindy可用于按字母顺序排序,\printnoidxglossary并可用于定义顺序或使用顺序。(使用sort=defsort=use\printnoidxglossary只是遍历内部列表,这意味着不执行实际排序)。

调整示例:

\documentclass{memoir}

\usepackage[symbols]{glossaries-extra}
\usepackage{glossary-mcols}

\makeglossaries[main]

\loadglsentries{example-glossaries-brief}
\loadglsentries[symbols]{example-glossaries-symbols}

\begin{document}

\glsaddall

\printglossary[style=mcolindexgroup]
\printnoidxglossary[type=symbols,sort=def,style=index]

\end{document}

如果您使用makeglossaries,它将检测到makeindex只需要main词汇表。

相关内容