
Mit dem glossaries
Paket ist es möglich, zwei Glossare zu haben:
eine unsortierte (d. h. in der Reihenfolge ihres Auftretens/ihrer Verwendung), wie etwa für einen Index von Notationen, und
die anderen alphabetisch sortiert, beispielsweise für ein Glossar der Terminologie?
Wenn das so ist, wie?
Hinweis: Ich verlange auch, dass das Glossar der Notation in Gruppen unterteilt wird. Ich weiß, wie das mit nur einem Glossar geht, aber wird die übliche Methode stören, wenn ich auch die 2. Art von Glossar habe?
Falls es wichtig ist: Ich verwende die memoir
Dokumentklasse.
Antwort1
Sie müssen \makenoidxglossaries
und \printnoidxglossary
anstelle von \makeglossaries
und verwenden \printglossary
, wenn Sie andere Sortierregeln wünschen. Die noidx
Variante verwendet TeX zum Sortieren und Zusammenstellen, anstatt makeindex
oder zu verwenden xindy
. Es hätte geholfen, einminimales Arbeitsbeispiel (MWE)um die Art der Einträge zu veranschaulichen, die Sie haben. Das folgende Beispiel verwendet Dummy-Einträge, die in den Testdateien enthalten sind example-glossaries-brief.tex
und example-glossaries-symbols.tex
mit installiert werden sollten 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}
Das Hauptglossar ist nach der Wortreihenfolge sortiert:
Das Symbolglossar ist unsortiert, obwohl es in diesem Beispiel sortiert aussieht, einfach weil die Beispieleinträge in dieser Reihenfolge definiert wurden. Eine andere Option ist, sort=use
die Einträge nach der ersten Verwendung im Dokument zu sortieren.Es stehen viele verschiedene vordefinierte Glossarstile zur Auswahl.
Notiere dass dernoidx
Methodeist beim alphabetischen Sortieren sehr ineffizient und nur für ASCII ausgelegt. Das glossaries-extra
Erweiterungspaket ermöglicht einen Mix-and-Match-Ansatz, sodass makeindex
/ xindy
für das alphabetische Sortieren und \printnoidxglossary
für die Reihenfolge der Definition oder Verwendung verwendet werden kann. (Mit sort=def
oder sort=use
wird \printnoidxglossary
einfach eine interne Liste durchlaufen, was bedeutet, dass keine tatsächliche Sortierung durchgeführt wird).
Angepasstes Beispiel:
\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}
Wenn Sie verwenden makeglossaries
, wird erkannt, dass dies makeindex
nur für das Glossar erforderlich ist main
.