我目前面临一个有关词汇表排序的问题。我正在用德语写论文,所以我的首字母缩略词中也有一些变音符号,如“ä”、“ö”和“ü”。例如,有一个首字母缩略词“ÖGD”。现在的问题是首字母缩略词的排序不能按预期进行。带有变音符号的首字母缩略词位于列表顶部。通常,例如“Ö”应该在“O”之后。以下 MWE 说明了这个问题。
我知道使用时有一个参数 -g 或 -s makeindex
。问题是词汇表包附带了一个makeglossaries
-perl 脚本。我不想碰 perl 脚本。那么,还有其他方法可以正确排序我的词汇表和首字母缩略词列表吗?
\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}
目前,首字母缩略词列表排序如下:
- 奥德
- B2B
- 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
按照 Ulrike 建议的方式指定密钥,或者按照您想要的顺序定义它们并添加到sort=def
'glossaries
选项。
(您可能还会使用,\newacronym{OEGD}{ÖGD}{öffentlicher Gesundheitsdienst}
因为无论如何您都允许utf8
输入……)