Scissor LaTeX 中的 babel 和 polyglossia
babel 和 polyglossia 宏包在 Scissor LaTeX 中部分可用:两者加载时都不会出错,任何语言和文字系统的 UTF-8 文本都能排版,但语言设置不会生效:断词规则仍是英语的,“Figure”和“References”等名称仍是英语,\today 不输出任何内容,"a 这样的简写也不会被读取。
宏包的作用
babel(用于 pdfLaTeX)和 polyglossia(用于 XeLaTeX 和 LuaLaTeX)让文档适应某种语言。它们会加载断词规则,翻译固定名称(德语中用“Abbildung”代替“Figure”),按当地习惯格式化 \today,还会增加简写,例如德语中表示 ä 的 "a,或法语引号 \og ... \fg。用 \selectlanguage{...} 切换语言,或用 \foreignlanguage{...}{...} 只切换几个词。
这里可用的功能
| 功能 | 在 Scissor LaTeX 中 | 说明 |
|---|---|---|
\usepackage[ngerman]{babel}, \usepackage{polyglossia} | 可用 | 会被接受,不显示提示。 |
| 以 UTF-8 输入的该语言文本 | 可用 | 所有文字系统,参见其他语言和字体。 |
| 断词 | 忽略 | 所有语言都使用英语规则。 |
| 名称:“Figure”、“Table”、“Contents”、“References”、“Proof” | 忽略 | 始终是英语。 |
\today | 忽略 | 不输出任何内容。 |
\selectlanguage{...}, \setdefaultlanguage{...}, \setotherlanguage{...} | 忽略 | 会被接受,但不起作用。 |
\foreignlanguage{lang}{text} | 可用 | 文本保留。 |
\begin{otherlanguage}{lang} | 部分可用 | 文本保留,但语言名会输出在文本前面。 |
\textenglish{...}, \textgerman{...}(polyglossia) | 部分可用 | 文本保留;命令被报告为无法识别。 |
简写:"a、"s(ngerman) | 不支持 | 输出为一个引号加上字母。请直接输入 ä 和 ß。 |
\og ... \fg(french) | 不支持 | 会被跳过并显示提示;引号会缺失。 |
示例
使用 ngerman 时,正文是德语,但标题中的名称仍是英语:
babel ngerman:名称仍是英语
\documentclass{article}
\usepackage[ngerman]{babel}
\begin{document}
\section{Einleitung}
Erika Mustermann hat 44 Proben gewogen; die Ergebnisse stehen
in Tabelle~\ref{tab:proben}.
\begin{table}[h]
\centering
\caption{Gewicht der Proben}
\label{tab:proben}
\begin{tabular}{lr}
Probe & Gewicht \\
A & 12\,g \\
B & 15\,g \\
\end{tabular}
\end{table}
\end{document}直接输入特殊字母,而不要使用 babel 的简写,日期也请自己写出:
直接输入的变音字母和写出的日期
\documentclass{article}
\usepackage[ngerman]{babel}
\begin{document}
Berlin, 4.~November 2026
Grüße an Hans Mustermann: Die Maße der Straße sind korrekt.
Auf Französisch: \foreignlanguage{french}{«~À bientôt~»}.
\end{document}otherlanguage 环境会保留文本,但也会输出语言名。请使用 \foreignlanguage,或者干脆不切换语言:
otherlanguage 会输出语言名
\begin{otherlanguage}{english}
Good morning, John Doe.
\end{otherlanguage}兼容性
- 从 TeX 发行版迁移到这里: 每种语言的文本都会保留。
"a和\og等简写需要换成直接输入的字符,名称和日期要么是英语,要么缺失。 - 从这里迁移到 TeX 发行版: 文档可以在那里编译,babel 或 polyglossia 届时会翻译名称并正确断词。如果希望在那里使用当地的日期格式,请把手写的日期换成
\today。
完整手册见 CTAN:babel 和 polyglossia。另请参阅其他语言和字体和字体和编码。
常见问题
为什么我的德语文档显示“Figure”而不是“Abbildung”?
Scissor LaTeX 目前还不会应用 babel 的本地化名称。标题文字本身是你写的,仍然是德语;只有编号前面的那个词是英语。
为什么 \today 不输出任何内容?
\today 的日期不会被填入。请把日期写成文本。
能用 babel 或 polyglossia 写阿拉伯文或希伯来文吗?
即使不用这两个宏包,UTF-8 文本也能排版。单词会按从右到左的方向成形,但段落仍是从左到右;参见其他语言和字体。
本页的每个示例都在构建网站时由 Scissor LaTeX 排版。 最后更新:2026-11-07