最佳实践国际模板

最佳实践国际模板

我希望有一个可以国际化的模板(即适合拉丁文字语言)并使用 microtype 包。因此我认为我们需要以下包:

  • babel(我们可以将其设置为英语)
  • inputenc(用于使用国际字符)
  • fontenc(用于正确打印国际字符)
  • lmodern(由于 fontenc 改变了字体,我们想把它改回来)
  • 微型字体(更好看的文本)
  • 可能是 csquotes

以下是当前的文档,请提供改进模板的建议,例如调用包的顺序。

\documentclass{article}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[english]{babel}
\usepackage[babel=true]{microtype}
\usepackage{csquotes}

\begin{document}

Hello World!

\end{document}

答案1

使用cleveref会稍微复杂一些。您必须将所需的语言传递给documentclass或直接传递给cleveref。此外,它不能与 polyglossia 版本的 一起使用\selectlanguage{}

csquotes支持\selectlanguage{},但其手册中指出“多语支持目前处于初步状态”。

因此,在更好地支持多语种之前,我的文档看起来像这样:

\documentclass[english,danish]{memoir}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{lmodern}
\usepackage[kerning,spacing,babel]{microtype}
\usepackage[autostyle]{csquotes}
\usepackage[capitalize,nameinlink,noabbrev]{cleveref}
\begin{document}
\selectlanguage{danish}
...

现在,每次我想切换语言时,我不必编辑序言。它甚至支持在文档中切换语言。

答案2

由于不同国家的小数分隔符可能不同(句号或逗号),我建议您添加icomma 包或者改编代码克劳迪奥·贝卡利文章于PracTEX 期刊,2011 年,第 1 期

另一个intelligent comma包是ncccomma,根据作者和我在网上找到的其他资料,它甚至比 更智能icomma。根据其文档:

此包中使用的解决方案更为广泛(ie 与 icomma 相比。我的评论),因为我们将下一个字符与最多十个十进制字符进行比较。但是此解决方案需要在原始文档中插入较少的空格(仅在逗号分隔某些内容和十进制数的位置才需要空格)。

我不知道这些包是否应该按照任何特定的顺序加载(当然hyperref,之前)。

您还应该考虑添加siunitx 软件包。请参阅 tex.stackexchange.com 上的此链接:德语:数字中逗号的用法

microtype应该有选项babel=true?)

相关内容