1

ほとんどのマクロの最後に xspace を置きます。

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

しかし、マクロが内部textitに配置されている場合、期待どおりに機能しないことがわかりました。

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

生産する

テスト 1: フーバー。テスト 2: foobar

文字の前に余分なスペースがあり.ます。もちろん、これらの場合に非 xspace マクロを複製することもできますが、何らかの方法でこれをより適切に修正できますか?

4

1 に答える 1

3

/usr/share/texmf/doc/latex/tools/xspace.pdf に「隠された」答えが見つかりました。

\xspace が間違った決定を下し、不要なときにスペースを追加することがあります。この動作にはさまざまな理由が考えられますが、スペースを抑制する効果があるため、マクロの後に {} を付けることで常に処理できます。

そう

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

生産する

テスト 3: foobar

于 2010-11-24T00:16:55.310 に答える