Как отсортированные, так и несортированные глоссарии с пакетом глоссариев?

Как отсортированные, так и несортированные глоссарии с пакетом глоссариев?

Используя glossariesпакет, возможно ли иметь два глоссария:

  1. один несортированный (т.е. в порядке появления/использования), например, для индекса обозначений, и

  2. другой сортируется в алфавитном порядке, например, для глоссария терминов?

    Если да, то как?

Примечание: Я также требую, чтобы глоссарий обозначений был подразделен на группы. Я знаю, как это сделать с одним глоссарием, но будет ли мешать обычный метод, если у меня также есть глоссарий 2-го типа?

Если это имеет значение, я использую memoirdocumentclass.

решение1

Вам нужно использовать \makenoidxglossariesand \printnoidxglossaryвместо \makeglossariesand , \printglossaryесли вы хотите разные правила сортировки. noidxВариант использует TeX для сортировки и сопоставления вместо makeindexor xindy. Было бы полезно иметьминимальный рабочий пример (MWE)для иллюстрации типа записей, которые у вас есть. В следующем примере используются фиктивные записи, предоставленные в тестовых файлах example-glossaries-brief.tex, example-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=defили просто итерирует внутренний список, что означает, что фактическая сортировка не выполняется).sort=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глоссария.

Связанный контент