Проблема с сортировкой умлаута в глоссарии (pkg glossaries)

Проблема с сортировкой умлаута в глоссарии (pkg glossaries)

В настоящее время я столкнулся с проблемой сортировки глоссариев. Я пишу свою диссертацию на немецком языке, поэтому в моих аббревиатурах также есть некоторые умлауты, такие как "ä", "ö" и "ü". Например, есть аббревиатура "ÖGD". Теперь проблема в том, что сортировка аббревиатур не работает так, как ожидалось. Аббревиатуры с умлаутом находятся в верхней части списка. Обычно "Ö", например, должна быть после "O". Следующий MWE иллюстрирует эту проблему.

Я знаю, что есть параметр -g или -s при использовании makeindex. Проблема в том, что пакет glossaries поставляется со makeglossariesскриптом -perl. Я не хочу трогать perl-script. Итак, есть ли другая возможность правильно отсортировать мой глоссарий и список сокращений?

\documentclass[a4paper,12pt,ngerman]{scrreprt}

\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{caption}
\usepackage{bibgerm}
\usepackage[ngerman=ngerman-x-latest]{hyphsubst}

\usepackage[style=longheader,toc,acronym,nonumberlist]{glossaries}

\makeglossaries         

\begin{document}    

 \newacronym{B2B}{B2B}{Business to Business}
 \newacronym{oegd}{\"OGD}{\"offentlicher Gesundheitsdienst}
 \newacronym{HL7}{HL7}{Health Level Seven}

\glsaddall

\printglossary[type=\acronymtype]

\end{document}

В настоящее время список сокращений отсортирован следующим образом:

  • ОГД
  • В2В
  • HL7

решение1

Вы можете использовать клавишу сортировки, чтобы изменить порядок сортировки. Также вам следует лучше размещать группы вокруг акцентов (см. параграф перед разделом 4.1. в документе):

\newacronym[sort=OEFFE]{oegd}{{\"O}GD}{{\"o}ffentlicher Gesundheitsdienst}

Вы также можете попробовать использовать xindyвместо makeindex.

решение2

Цитата glossariesиз руководства из раздела 2.4 (Параметры сортировки):

СортироватьЭто key = valueопция, которая может иметь только одно из следующих значений:

  • стандартный: записи сортируются в соответствии со значением ключа, sortиспользуемого в \newglossaryentry? (если присутствует) или nameключа (если sortключ отсутствует);
  • определение: записи сортируются в том порядке, в котором они были определены ( sortвводимые данные \newglossaryentryигнорируются);
  • использовать: записи сортируются в том порядке, в котором они используются в документе ( sortвводимые данные \newglossaryentryигнорируются).

Значение по умолчанию — sort=standard.

Это объясняет сортировку, которую вы получаете: используется, nameпоскольку вы не указали ключ sort, и этонетметка, которую вы используете, но то, что отображается: \"OGD, B2Bи HL7. \"O, вероятно, рассматривается как символ и поэтому отображается первым.

Теперь у вас есть как минимум два варианта: указать sortключ, как предложил Ульрике, или определить их в нужном вам порядке и добавить параметры sort=def«to glossaries».

(Вы также можете использовать, \newacronym{OEGD}{ÖGD}{öffentlicher Gesundheitsdienst}поскольку вы в любом случае разрешаете utf8ввод, …)

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