索引中的数字顺序

索引中的数字顺序

我用它imakeidx来创建我的索引。它工作得很好,只是它不能用数字创建正常的订单。

代替:

1

3

10

三十

它创建:

1

10

3

三十

有办法改变这种情况吗?

这是我的 MWE:

\documentclass[a4paper,11pt]{scrbook}
\usepackage[utf8]{inputenc}%
\usepackage[T1]{fontenc}%
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage{imakeidx}% MULTIPLE INDICES
\indexsetup{level=\section*,toclevel=section,headers={Stellenregister}{\indexname}}%
\makeindex[name=band1-bibelstellen,title=Bibelstellen, intoc, options=-c -s untitled.ist]
\makeindex[name=band1-themen,title=Themen, intoc, options=-c -s untitled.ist]
\makeindex[name=band1-personen,title=Personen, intoc, options=-c -s untitled.ist]
\begin{document}
\blindtext\index[band1-themen]{Augustine!Sermones!1, 12}
\blindtext\index[band1-themen]{Augustine!Sermones!3, 34}
\blindtext\index[band1-themen]{Augustine!Sermones!10, 1}
\blindtext\index[band1-themen]{Augustine!Sermones!30, 2}
\addcontentsline{toc}{chapter}{Stellenregister}
\printindex[band1-bibelstellen]
\printindex[band1-themen]
\printindex[band1-personen]
\end{document}

我的 untitled.ist 目前看起来像这样:

delim_0 ":\\quad "
delim_1 ":\\quad "
delim_2 ":\\quad "

答案1

Makeindex 将条目按文本而不是数字排序。条目1, 12以数字开头,但不是数字。

可以使用符号@添加排序键来获得所需的排序顺序:

\blindtext\index[band1-themen]{Augustine!Sermones!01, 12@1, 12}
\blindtext\index[band1-themen]{Augustine!Sermones!03, 34@3, 34}
\blindtext\index[band1-themen]{Augustine!Sermones!10, 1}
\blindtext\index[band1-themen]{Augustine!Sermones!30, 2}

排序键现在是:

01, 12
03, 34
10, 1
30, 2

结果是:

1, 12
3, 34
10, 1
30, 2

相关内容