我将 xspace 放在大多数宏的末尾,例如
\newcommand*{\foobar}{foobar\index{foobar}\xspace}
但我刚刚发现,如果宏放在里面textit
,它不会按预期工作,例如
Test 1: \foobar. Test 2: \textit{\foobar}.
生产
测试 1:foobar。测试 2:foobar。
字符前有一个额外的空格.
。当然,我可以为这些情况制作一个重复的非 xspace 宏,但我能以某种方式更正确地解决这个问题吗?