我在 MacOS 中安装 TexLive 2018,在install-tl
终端上运行后,我选择scheme-custom
并开始选择installation collections
。选项“基本程序和文件”和“LaTeX 基本包”已被选中,但选项“美国和英国英语”未被选中。实际上,没有选择任何语言。我以为 texlive 总是默认安装“美国和英国英语”包。
如果我在安装 texlive 时没有选择任何语言,会发生什么情况?我能用 TeX/LaTeX 写任何东西吗?
答案1
LaTeX 的基本安装包含美式英语的语言定义,即连字符模式和本地化(如日期格式)以及目录或参考文献等特殊部分的名称。这些定义被用作默认定义,即当文档中未加载任何与语言相关的包时。
如果您想要(正确的)连字符和对其他语言进行本地化,那么babel
可以使用该包,它支持大约 200 种语言。
在软件包存储库 CTAN 中,Babel 被组织成针对不同语言的子包,例如babel-french
或babel-german
(请注意,这些包有些不寻常,因为它们没有使用 加载\usepackage{babel-somelanguage}
,而是为 提供了包选项babel
,例如\usepackage[french]{babel}
)。
还有一个子包babel-english
,这可能看起来很奇怪,因为 LaTeX 已经包含英语的语言定义。但是,该包仍然很有用,原因有二:1. 它为美式英语以外的其他英语变体提供定义,2. 它标准化了语言处理方式(即英语不再是特例)。
下面的 MWE 显示了语言变体british
和的一些差异american
。对于这些变体(称为方言Babel 提供了单独的连字规则,包括一长串带有连字位置的字符序列模式,以及一小串不属于这些模式的完整单词例外。在示例中,义务的在美国例外列表中,但不在英国列表中,而其他单词则基于两种变体之间的不同模式。有关模式的更多信息,请参阅连字模式是如何书写的?。
此外, 的定义\today
已本地化,并为未加载 而未定义的部分和引用提供了一些宏babel
。这些宏对于所有英语方言都是相同的(因此也与默认值相同),通常您不会在文档中直接使用它们,但其他用于格式化标题等的软件包可以使用这些宏进行本地化。
代码(忽略parbox
、minipage
等vspace
,这些只是为了演示目的):
\documentclass{article}
\usepackage[british,american]{babel}
\begin{document}
\alsoname\ \ccname\ \headtoname\ \enclname\ \partname
\vspace{1em}
\hrule
\def\ex{\parbox[][10cm][t]{1mm}{not obligatory elevator chilling}\today}
\selectlanguage{british}
\begin{minipage}{5cm}
\ex
\end{minipage}
\selectlanguage{american}
\begin{minipage}{5cm}
\ex
\end{minipage}
\end{document}
结果: