Тех-вопрос (казалось бы, простой)

mtk79

Хочу сделать синоним, допустим, аббревиатуры WYSIWYG, командой
\newcommand{\wy}{WYSIWYG}
ну, или, чтобы не переносилось,
\newcommand{\wy}{\mbox{WYSIWYG}}
Тогда в тексте
... \wy hhh
пробел после команды игрорируется, и hh сливается
Разумеется, если сделать отбивку пустыми скобками в самом тексте
... \wy{} hhh
, то все ОК
Но допустим, я над файлом работаю не один, а коллабораторы еще меньше разбираются в Латексе, чем я, и отбивку ставить, конечно же, не будут.
Если же я скобки зашью в определение комады:
\newcommand{\wy}{\mbox{WYSIWYG}{}}
то на печати они игнорируются, и пробел не печатается.
Если же зашить пробел внутрь команды — то, конечно же, он будет печататься и там, где не надо, например, перед точкой или запятой
Доктор Пропер, что делать (кроме того, что финальную редактуру поручить себе-любимому и все это вручную пофиксить)?

marina1206

я всегда для этого \def использовал, никогда таких проблем не возникало

mtk79

одна фигня класс {revtex4}

marina1206

да, я сейчас проверил, оказывается такая же фигня
я просто использовал это только внутри математических окружений, там такого не было

marina1206

Можно использовать пакет xspace (вроде входит в TeX-Live который похоже для этого был специально сделан.
И делать вот так:
\newcommand\wy{WYSIWYG\xspace}
Работает как нужно :)

mtk79

Merci!

BSCurt

ты с факультета TeXа?

mtk79

с филтеха
Оставить комментарий
Имя или ник:
Комментарий: