输入直引号键 " 或简单的连字符 - 并保留它,这是 LaTeX 中最常见的印刷错误。TeX 有一个长期的约定:您输入带有 反引号 的 开始 引号和带有 撇号 的 结束 引号,然后重复连字符以获得正确的弯引号“ ” ‘ ’和破折号 – —。本页涵盖输入约定和现代的、语言感知的方式来做到这一点 - 来自csquotes的\enquote。
引号:左右键入不同
在西方文本中,左引号和右引号具有不同的形状(“ vs ”、“ vs ”)。然而,键盘仅提供无方向的直引号" 和'。因此,TeX 采用了一种约定:键入带反引号(重音符号)的开始引号和带撇号(单引号)的结束引号。 TeX 不会将这些字符视为文字字符,而是将其视为方向说明。
对于单引号,使用一个反引号打开,一个撇号关闭。对于双引号,使用两个反引号打开并使用两个撇号关闭(根本不使用专用的双引号键)。排版后,这些变成了卷曲标记“ ”和“ ”。
`Single' quotes, and ``double'' quotes.
``I'm just going out,'' she said.请注意第二行中单词内的撇号(缩写“I'm”)只是一个撇号。它呈现为相同的字形 ' 作为结束单引号,在上下文中正确读取。如果你交换开盘价和收盘价,你会得到像“”这样的反向标记——所以总是在反引号一侧开始开盘报价。
直引号错误
最常见的失误是出于文字处理习惯而键入 双引号键 "。 LaTeX 只能将其视为结束引号(或普通的直标记),因此两端都会得到相同的直立字形。在论文或书籍中,这种形状看起来很业余。
同样,在您表示左单引号的地方输入撇号' 是错误的:LaTeX 只会将撇号读取为结束方向,因此标记指向错误的方向。规则很简单 - 始终在反引号一侧开始引号。下表总结了正确和错误。
| 所需标记 | 正确输入 | 常见错误 | |
|---|---|---|---|
single | 开始 ' / 结束 ' | 反引号 … 撇号 | 撇号打开(给出 ',反转) |
double | 开始“ / 结束” | 两个反引号…两个撇号 | 直“键(两端直立) |
apostrophe | 词内’(不要等) | 一个撇号 | 不需要 — 保持原样 |
从原始反引号和撇号到大引号的转换是作为文本字体中的 连字 实现的,因此在普通的西方文档中,它可以在不加载包的情况下工作。当您确实需要直立标记时,可以使用专用命令:\textquotesingle(直单引号)和\textquotedbl(直双引号)。
嵌套引号
当一个引文包含另一个引文时,英语惯例将双引号放在外面,单引号放在里面(美国风格;英国风格则相反 - 外部单引号,内部双引号)。如果你只是将这些标记拼在一起,那么内部结尾的 ' 和外部结尾的 ' 的三个撇号会相互拥挤并且阅读效果很差。用细空格\thinspace 将它们分开。
``Her answer was `never'\thinspace'' he reported.这种手动间距很容易出错,而且当文档语言改变时,内/外配对也会改变。要正确且自动地处理嵌套和间距,请使用csquotes,如下所述。
csquotes 和 \enquote
csquotes 包允许您通过含义而不是字形来编写引号。其中央命令 \enquote{…} 自动提供周围标记,并选择 适合文档语言的标记:“ ” 表示英语,“ ”表示德语,« » 表示法语,等等。与babel 或polyglossia 和autostyle 选项一起使用,引文样式会随着语言的切换而变化。
嵌套也是自动的。将一个 \enquote{…} 嵌套在另一个 中,并为您在外部和内部标记之间切换,并正确间隔它们。当您从一开始就想要内部标记时,带星号的形式 \enquote*{…} 会直接跳到内部级别。
\usepackage[english]{babel}
\usepackage[autostyle=true]{csquotes}
% ...
\enquote{She said \enquote*{never} and left.}在英语中,这排版为“她说‘从不’然后离开了。” — 外部双引号和内部单引号,为您选择。原始的反引号和撇号约定仍然有效并广泛使用,但对于多语言文档或大量嵌套,\enquote 更强大且更不易出错 - 现代建议。
破折号(连字符、en、em、减号)
水平短线有四种不同长度,各有用途,输入几个连字符就决定使用哪一种。连字符 - 是 一个;en dash – 是 连续两个,即 --;em dash — 是 连续三个,即 ---。数学中的 减号 则是完全不同的字符,要在数学模式中用 $-$ 生成。
| 马克 | 输入 | 主要用途 | |
|---|---|---|---|
hyphen | - 连字符 | 一个连字符 | 复合词、连字符(众所周知) |
en dash | – 破折号 | 两个连字符 | 范围(第 5--10 页),配对 |
em dash | — 破折号 | 三个连字符 | 括号分隔符(如逗号或括号) |
minus | - 减号 | - 数学模式 | 数学,负数 ($-$, $-3$) |
See pages 5--10. A break---an aside---fits here.
The value is $-3$, a well-known fact.匹配的命令是\textendash (= --) 和\textemdash (= ---)。使用单个连字符表示范围 (5-10),或使用文本连字符表示减号 (-3),与直引号一样,是最常见的错误之一。使用破折号表示范围,并始终在数学模式下设置负数或运算符减号。
其他语言的报价
引用风格因语言而异。德语使用低开口、高闭合标记“”;法语使用双角标记 (guillemets) « »。 Babel 的德语扩展提供了命令和简写,例如 \glqq 和 \grqq,而法语则使用 guillemets。不过,比记住每种语言的命令更可靠的是,让 csquotes 通过 \enquote 传递含义,并将样式留给 babel/polyglossia。
日语是不同的。日语引文使用角括号「」和双角括号『』;上面的西方引号和反引号约定不适用。 “标点符号和括号”页面介绍了日语括号和标点符号。在日语-西方混合文档中,仅在西方段落中使用西方引号(或\enquote),并在日语段落中直接键入角括号。
清理粘贴的散文
当从 Word 或 Web 粘贴英语散文时,直引号、智能引号、Unicode en/em 破折号和普通连字符经常混合在一起。 LaTeX 可以处理 Unicode“” 和 —,但当输入约定一致时,协作和差异会更容易。对于英文较多的稿件,稳定的策略是:通过\enquote从csquotes进行引用,范围为--,括号分隔符为---,数学模式下为负数。
- 搜索双引号键。 如果原始
"仍然存在,请将西方引号转换为\enquote{...}或TeX 开/闭引号约定。 - 检查范围。
5-10或1990-2000等范围应为5--10和1990--2000。 - 不要使用文本连字符作为减号。
-3等数字属于数学模式,与文本连字符不同。 - 直接输入日文角括号。 不要通过
\enquote强制“”『』;将它们视为日语标点符号。
PDF 中的证明破折号
仅凭源文件很难检查引号和破折号,所以要在最终 PDF 中一起校对它们。范围、减号和复合词都从同一个 - 键开始,因此粘贴来的散文常会把它们混在一起。范围 -- 会生成稍长的 en dash;插入语用的 --- 会生成更长的 em dash;数学 $-$ 有数学模式的位置和间距。请确认这些差异在 PDF 中清晰可见。不过不要盲目全局替换:像 well-known 这样的复合词应保留单个连字符。
- 搜索范围。 在年份、页数和图号中查找
digit-digit,并将真实范围转换为--。 - 搜索负数。 在正文中,
-0.5或-3如果表示数字,应写成$-0.5$或$-3$。 - 按语义书写引号。 在多语言或嵌套引号中,优先使用
\enquote{...}而不是原始标记。