\og
我对用于打开和关闭“guillemet”的和字符有问题\fg
。关闭的 guillemet 总是离后面的内容太近,换句话说,和后面的下一个单词之间缺少空格\fg
。我使用的是 TeXmaker,出现问题的典型代码是
\documentclass[11pt]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\begin{document}
Lalala \og blabla \fg lalala.
\end{document}
答案1
如果想要获得\fg
与其后跟单词之间的正确间距,则必须{}
在其后添加一个空语句。
这是因为 的定义\fg
依赖于的frenchb.ldf
定义\FB@fg
\DeclareRobustCommand*{\FB@fg}{\ifdim\lastskip>\z@\unskip\fi
\FBguill@spacing\guillemotright\xspace}
如您所见,此命令不带任何参数,因此如果您没有使用{}
(或 ,\
这是不可取的)明确中断命令,它后面就不会插入空格。
其行为与定义不带参数的新命令相同
\newcommand{\qqq}{qqq}
并将其用作
\qqq word
平均能量损失
\documentclass[11pt]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\begin{document}
Lalala \og blabla \fg{} lalala.
\end{document}
您还可以注意到 的定义在末尾\FB@fg
包含\xspace
。这意味着,如果您不想在{}
每次使用 时都插入\fg
,您可以简单地加载包xspace
。
以下 MWE 给出与上图相同的结果:
\documentclass[11pt]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{xspace}
\begin{document}
Lalala \og blabla \fg lalala.
\end{document}
答案2
由于某些我无法理解的原因,使用键盘 guillemets«
以及包 »
中的以下选项babel
\frenchbsetup{og=«,fg=»}
解决了这个问题(而且很优雅)。当然,需要访问 utf8 字符。这是一个完整的示例。
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\frenchbsetup{og=«,fg=»}
\begin{document}
Ceci est du «texte» entre guillemets.
\end{document}
(来源:univ-mlv.fr)