![为什么枚举中的右引号后面没有空格?](https://linux22.com/image/279978/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%9E%9A%E4%B8%BE%E4%B8%AD%E7%9A%84%E5%8F%B3%E5%BC%95%E5%8F%B7%E5%90%8E%E9%9D%A2%E6%B2%A1%E6%9C%89%E7%A9%BA%E6%A0%BC%EF%BC%9F.png)
我正在使用以下代码:
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[dutch]{babel}
\newcommand{\add}{$\oplus$\space}
\newcommand{\ent}{\textit}
\begin{document}
\begin{enumerate}
\item Content: \add \ent{"Node add form" base form}
\end{enumerate}
\end{document}
不幸的是,枚举中的右引号后没有空格。我该如何解决这个问题?
答案1
切勿将其用作"
引号。特别是在babel
用作"
简写形式的语言中,直双引号会以各种方式失效。正确的形式是
Content: \add \ent{``Node add form'' base form}
或者使用 Unicode 字符
Content: \add \ent{“Node add form” base form}
为什么"
不能用于引号?确实,有时打印的是字形”,但此字符通常没有设置\sfcode
,这意味着在结束引号之前键入的句子结束句号(如美国印刷术中正常)的间距错误。
但最大的问题是babel
,在很多语言中, 和"
被用作简写。该机制使用\@ifnextchar
和,因此字符后的空格会被忽略,这正是示例中的情况。
''
使用或时,这些问题都不会发生”
(后者当然需要适当调用inputenc
)。可以设置好的编辑器,以便键入会"
触发正确的操作。例如,使用 Emacs 和 AUCTeX,如果在空格后(或在行首),则键入"
会产生否则;键入另一个``
''
"
会产生单身的 "
。