\newcommand 存在问题,在编译的文本中调用新命令后没有空格

\newcommand 存在问题,在编译的文本中调用新命令后没有空格

可能重复:
\newcommand 和间距

在我的乳胶文档中,我定义了一个新命令来强制我在文档中讨论的产品命名的一致性:

\newcommand{\fancyName}{\emph{ABC}} 

但是我遇到了一个问题:

\fancyName is a wonderfull and fancy product.

编译为:

ABCis a wonderfull and fancy product.

编译后的文本中的 \fancyName 后面没有空格。

有人知道如何定义新命令并避免这个问题吗?

答案1

这是一个众所周知的“问题”。您可以编写 \macro{},或者考虑使用

\usepackage{xspace}
\newcommand{\fancyName}{\emph{ABC}\xspace}

如果宏在文本中使用,xspace 应该创建一个空格,但如果宏位于句末且后跟句号,则不创建空格。

相关内容