在法语中,冒号总是放在不可拆分的空格之后。但是,babel
并没有实现此规则。如何纠正?
\documentclass{amsart}
\usepackage[french]{babel}
\begin{document}
Lorem~:
\begin{description}
\item[Dolor] sit
\end{description}
\end{document}
答案1
第 932 行amsart.cls
包含以下行
\newcommand{\descriptionlabel}[1]{\hspace\labelsep \upshape\bfseries #1:}
在可选参数之后直接明确插入冒号\item
。
您可以使用以下示例中的代码来确定是否babel
使用该选项加载french
。如果是,则~
在冒号前添加一个不可分割的空格。
\documentclass{amsart}
\usepackage[french]{babel}
\makeatletter
\@ifpackagewith{babel}{french}{\renewcommand{\descriptionlabel}[1]{\hspace\labelsep \upshape\bfseries #1~:}}{}
\makeatother
\begin{document}
Lorem~:
\begin{description}
\item[Dolor] sit
\end{description}
\end{document}