LaTeX \ newcommand \ par issue - PullRequest
2 голосов
/ 20 мая 2009

Когда я назначаю новую команду и вызываю ее в начале \ par, пробел между текстом переменной и следующим словом отсутствует.

\ newcommand {\ testcmd} {Это тест}

\ par \ testcmd foobar.

Будет отображаться как:

Это testfoobar.

\ par foo \ testcmd bar.

Отобразится нормально как: foo Это тестовая строка.

Кто-нибудь сталкивался с этим раньше и есть решение?

Спасибо

Ответы [ 2 ]

4 голосов
/ 20 мая 2009

Я не знаю точно, что здесь происходит, но есть несколько способов вернуть это пространство:

  1. \newcommand{\testcmd}{This is a test } % <- space before closing brace
  2. par \testcmd{} foobar % <- note {}
  3. Самый многословный, но самый надежный способ:

    \ usepackage {xspace}

    \ newcommand {\ testcmd} {Это тест \ xspace}

1 голос
/ 27 мая 2009

На самом деле гораздо более простым ответом будет:

\newcommand{\testcmd}{This is a test}

\par \testcmd \ foobar.

Обратите внимание на лишние "\" перед foobar (косая черта и пробел). Никакой дополнительной упаковки не требуется. Это так же, как наиболее распространенный метод для таких вещей, как:

Mr.\ Smith
etc.\ and
Proc.\ Amer.\ Math.\ Soc.
...