2012 年在 Polyglossia 和 Babel 之间做出选择

2012 年在 Polyglossia 和 Babel 之间做出选择

有人能总结一下(1)共同点和(2)不同点吗?babelpolyglossia软件包?我知道babel3.8(当前版本)无法在 LuaLaTeX 和 XeLaTeX 下运行某些语言(例如俄语)(至少 2 年前是这样)。polyglossia如果babel3.9(现在)babel-alpha) 能否与 XeLaTeX 配合使用?在这种情况下,使用polyglossia它来替代是否有意义?babel

更新:很抱歉在一篇帖子中混入了几个问题。主要问题是关于polyglossia和之间的区别babel。例如,polyglossia有针对某些语言的选项。

答案1

babel和XeTeX之间的关系polyglossia很复杂。一般的经验法则是,如果 babel.ldf文件使用非拉丁文字,那么您应该使用polyglossia,通常不能使用babel,但如果它假设拉丁文字,您仍然可以使用babel。关于您的具体问题,关于俄语,显然可以编写同时babel .ldf适用于两个引擎的文件,但对于大多数非拉丁文字,这还没有完成,polyglossia仍然是必需的。

西里尔文的问题可能比使用 RTL 脚本(如希伯来语和阿拉伯语)的问题要简单得多(@egreg 的评论中提到了这一点)。其他脚本(如印地语)也存在特殊问题,因此 pdfLaTeX 不太可能成为选择。因此,polyglossia对于那些独立依赖 XeLaTeX 的脚本来说,它仍然是必需的。

2013 年,Javier Bezos 发布了新版本babel,该版本(除其他功能外)为 XeLaTeX 和 LuaLaTeX 等 UTF-8 引擎提供了更好的支持。这意味着对于大多数基于拉丁文字的语言,babel和之间的差异polyglossia将很小,但对于 RTL 语言和非拉丁文字语言,polyglossia支持可能是更好的选择。当前版本babel(撰写本文时为 3.9)提供“对 XeTeX 和 LuaTeX 的最低限度支持”。

答案2

据我所知,polyglossia旨在babel替代XeLaTeX

相关内容