Работа в системе LaTeX



         

Команды без аргументов - часть 2


\newcommand{\nachatkursiv}} \newcommand{\konchitkursiv}{}}

приведут в лучшем случае к сообщению об ошибке (и желаемого эффекта не дадут). Если вам кажется, что такие ограничения стеснительны, можете изучить по книге [2], как их обходить; для большинства практических целей возможности создания макроопределений, предоставляемые LaTeX'ом, вполне достаточны.

К сожалению, некоторые русификации TeX'а не позволяют использовать в именах макросов русские буквы.

Еще одно ограничение: имя новой команды не должно начинаться на end.

Наконец, в замещающем тексте макроопределения нельзя пользоваться командой \verb или окружением {verbatim}.

Если команда \newcommand дана внутри группы, то смысл определяемой ею новой команды будет забыт TeX'ом по выходе из группы. Если новая команда определяется в преамбуле, то, естественно, она будет понятна TeX'у на протяжении всего документа.

Давайте теперь разберем несколько примеров, обращая внимание на типичные ошибки.

Макросы хороши как средство скорописи. Например, если в вашем тексте часто встречается знак

\bigtriangleup
, то вам может надоесть все время писать длинную команду \bigtriangleup. Коли так, придумайте сокращенное обозначение (скажем, \btu), напишите в преамбуле

\newcommand{\btu}{\bigtriangleup}

и вы сможете писать формулы наподобие

(A\bigtriangleup B)\cap C= (A\cap C)\bigtriangleup (B\cap C)
$(A\btu B)\cap C= (A\cap C)\btu (B\cap C)$

Ранее было рассказано, что делать, чтобы создать согласующееся с нашими традициями обозначение для тангенса. Теперь мы понимаем, что это был пример макроопределения (если вам интересно знать, что значит команда \mathop в замещающем тексте).

В лекции 2 вы найдете массу других примеров громоздких конструкций, для которых имеет смысл создать макросы.

А теперь — пример типичной ошибки. Пусть в тексте, который вы набираете, регулярно встречаются фразы наподобие

Подмногообразия проективного пространства
\mathbf{P}^n
- основной объект изучения алгебраической геометрии,

и пусть для сокращения письма вы написали в преамбуле

\newcommand{\Pn}{$\mathbf P^n$}

Теперь можно писать, например, так:

... пространства~\Pn{} - основной объект...

Однако для набора формулы

x\in\mathbf P^n
написать $x\in\Pn$ не удастся: появится сообщение о том, что символ ^ и команда \mathbf преступно употреблены вне математической формулы.


Содержание  Назад  Вперед