法语 babel 问题:1\ier{}、2\ieme{} 等

法语 babel 问题:1\ier{}、2\ieme{} 等

我在使用法语 babel 时遇到了问题。每当我使用\ier{}1、2\ieme{}结构体(得到 1 er、 2 e等),其后的间距表现得非常奇怪。

例如,如果我使用:

  • 1\ier asdf那么 PDF 中的输出将是:“1 er asdf”(请注意“ er ”和“asdf”之间缺少空格)
  • 1\ier~asdf那么 PDF 中的输出将是:“1 er asdf”(中间有一个受保护的空间)
  • 1\ier~ asdf那么 PDF 中的输出将是:“1 er asdf”(有“ er ”和“asdf”之间的空格,一个受保护,一个正常;由于 SE 格式限制,此处无法正确显示)

我不想~每次需要这些构造时都使用它(上面的第二和第三个示例),所以我的问题:上面的第一个例子是错误还是用户错误?避免此类输出故障的正确方法是什么?

我在 Ubuntu 12.04 (带有 LyX) 上使用 TeX Live 2009。

答案1

您应该添加\usepackage{xspace}

根据Frenchb 手册

建议利用 xspace 扩展提供的优势(在前言中添加 \usepackage{xspace} 的大小):命令后面的空间 \ier,。 。 .、\ieres、\ieme、\iemes、\fg 和 \dots 均受 {} 或 \ 强制约束。

答案2

在法语中,缩写和后面的单词之间应始终使用空格。例如,看看“印刷术小课程”由 Jacques André 撰写,第 34 页。因此,您的第二种情况是正确的:“1 er asdf”(中间有一个受保护的空间)。

另外两个是正常行为此类 (La)TeX 命令。

答案3

已更改:将其添加到您的序言中:

\usepackage{etoolbox} 
\apptocmd{\ier}{~}{}{}
\apptocmd{\iere}{~}{}{}

对于每个缩写的法语序数词,情况也类似。奇怪的是,frenchb缺少针对 second(e)(s) 缩写的命令。

相关内容