latex:xspace不与textit结合使用

时间:2010-11-23 23:53:59

标签: latex xspace

我把xspace放在我的大多数宏的末尾,例如

\newcommand*{\foobar}{foobar\index{foobar}\xspace}

但我刚刚发现,如果将宏放在textit内,它就不会按预期工作,例如。

Test 1: \foobar. Test 2: \textit{\foobar}.

产生

  

测试1:foobar。测试2: foobar

.字符前有一个额外的空格。当然,我可以为这些情况制作一个重复的非xspace宏,但是我能以某种方式更正确地解决这个问题吗?

1 个答案:

答案 0 :(得分:3)

我在/usr/share/texmf/doc/latex/tools/xspace.pdf中找到了“隐藏”的答案:

  

有时\ xspace可能会出错   决定,并在它是时添加一个空格   不需要。可能有所不同   这种行为的原因,但它可以   总是按照以下方式处理   使用{}的宏,因为这有效果   压制空间。

所以

Test 3: \textit{\foobar{}}.

产生

  

测试3: foobar