为什么使用 xindy 的时候需要(使用)texindy(调用 xindy)?

为什么使用 xindy 的时候需要(使用)texindy(调用 xindy)?

如果我将以下内容中的单词替换texindyxindy回答代码编译并产生相同的输出(至少使用 TeXShop)。 texindy存在是有原因的,至少有一位专家使用它而不是xindy直接使用。(见回答

xindy如果我直接使用而不texindy调用它,会发生什么问题(在什么情况下) ?

答案1

以下是手册页的摘录xindy(原始(格式化)源中的粗体和斜体):

辛迪是灵活索引系统 xindy 的独立于格式化程序的命令。它以原始索引作为输入,并生成合并、排序和标记的索引。合并、排序和标记由 xindy 样式文件控制。...

如果你想为 LaTeX 文档生成索引,可以使用以下命令特辛迪(1)可能对你更感兴趣。它是辛迪默认情况下启用许多 LaTeX 约定。

我将其解释为辛迪(很大程度上)与格式无关,特辛迪更适合用于 LaTeX 文档,因为它了解 LaTeX 的格式相关和其他约定。

当然,对于足够简单的 LaTeX 文档和索引要求,这两个命令的输出可能很难区分。由于不知道您的 LaTeX 文档有多复杂,因此无法回答您的问题:如果您使用 而xindy不是,会“出现什么问题” texindy。有关xindy和命令的更多信息,请参阅相应的手册页 - 可以通过和texindy调出。texdoc xindytexdoc texindy

答案2

我还没有使用过 Xindy,但以下可能是使用 texindy 而不是 xindy 的一个优势。来自Xindy 回顾:UTF-8 时代的多语言索引创建

目前,原始索引文件最常用的编码是 \index 命令的 LATEX 输出。它将非 ASCII 字符编码为宏;该表示称为 LATEX 内部字符表示或 LICR,如《LATEX Companion》第 2 版第 7.11 节所述。Xindy 了解 LICR:xindy 模块具有合并规则来识别这些字符表示。LATEX 的特殊调用命令 texindy 会自动拾取它们,因此作者无需考虑它们。

附言:我本来想发表评论,但我的声誉太低了……

相关内容