如何手动更改索引文件(.ind)以实现外文字母的正确顺序?

如何手动更改索引文件(.ind)以实现外文字母的正确顺序?

我使用的是 MikTex、pdfLaTex、WinXP_SP3。我想创建一个包含外文字母的索引,并按正确的字母顺序排列。使用 Xindy 似乎很麻烦,所以我想避免使用它。如何在.ind创建索引文件 () 后手动更改它,以正确的字母顺序设置条目?

我将回答我自己的问题。

序言包含

\usepackage{imakeidx}
%\usepackage{makeidx}
\makeindex[columns=3,  intoc]

我尝试过使用makeidx,但没有效果,所以我改用imakeidx

在文件末尾有

\clearpage
\printindex

通过这种设置,可以创建并打印一个索引文件,但所有单词都以外文字符开头,这是不正确的。

用记事本打开.ind文件。手动将错误放置的条目复制粘贴到正确位置,并\indexspace根据需要添加条目。(实际上,在写字板中更容易完成此操作)。现在对序言进行以下更改:

%\usepackage{imakeidx}
\usepackage{makeidx}
%\makeindex[columns=3,  intoc]

否则,makeidx 会失败,现在会打印手动更改的索引文件。甚至索引的 TOC 条目也会保留。任务完成。

答案1

辛迪

您可以考虑切换到 XIndy,这是一个功能更强大的索引生成器,它支持多种语言的排序规则。

帮助 Makeindex

可以通过指定排序键来影响 Makeindex 的排序。在默认设置中,字符@将排序键与索引中出现的单词分开,例如:\index{Strasse@Straße}, \index{Baecker@Bäcker}/ (取决于排序规则)。然后 Makeindex 将按和/\index{Backer@Bäcker}排序条目,但和将出现在索引中。StrasseBaeckerBackerStraßeBäcker

.idx文件排序

上述方法也可用于编写脚本,为文件中的条目提供排序键.idx。但是,无法创建新的字母组。

.ind文件排序

解析.ind文件比较麻烦。可以编写样式文件来添加更多逻辑标记以简化解析。识别条目后,脚本可以执行自己的排序,包括添加新的字母组。

相关内容