Создание собственных команд (макросов) в LaTeX: \newcommand

Зачем создавать свои макросы в LaTeX

В математических и технических рукописях часто повторяются длинные типовые конструкции: обозначения векторных пространств $\mathbb{R}^n$, дифференциальные операторы $\frac{\partial^2 f}{\partial x^2}$ или громоздкие аббревиатуры (особенно если затем требуется подробное описание переменных в формулах по ГОСТ). Набирать их вручную десятки раз неэффективно.

Как создать свою команду макрос в LaTeX без параметров

Узнаем, как создать свою команду макрос в latex для простого сокращения. Команда объявляется в преамбуле документа:

LaTeX
\newcommand{\R}{\mathbb{R}}
\newcommand{\eps}{\varepsilon}

Теперь в тексте достаточно написать $\R^3$ вместо длинного $\mathbb{R}^3$, и компилятор автоматически подставит нужное начертание шрифта (а для работы с физическими величинами советуем подключать пакет siunitx для единиц измерения).

Команды с аргументами: newcommand в LaTeX с примерами

Рассмотрим практические newcommand latex примеры с передачей переменных. Синтаксис команды с позиционными параметрами: \newcommand{\имя}[число_аргументов]{определение}.

LaTeX
% Вектор со стрелкой в жирном начертании
\newcommand{\vect}[1]{\mathbf{\vec{#1}}}

% Дробная производная функции по переменной
\newcommand{\pder}[2]{\frac{\partial #1}{\partial #2}}

Использование в документе: $\pder{u}{t} = a^2 \pder{^2 u}{x^2}$. Это делает исходный код статьи чистым и легким для проверки рецензентом.

Макросы с аргументами по умолчанию

LaTeX позволяет задавать первый параметр опциональным: \newcommand{\plusplus}[2][1]{#2 + #1}. Если первый аргумент опущен в квадратных скобках, подставится значение по умолчанию.

Переопределение существующих команд через \renewcommand

Если команда уже существует в базовом дистрибутиве LaTeX (например, \phi или \leq), попытка вызвать \newcommand выдаст ошибку компиляции. В таких случаях используется директива \renewcommand, позволяющая переопределить стандартное поведение (например, заменить стандартное начертание греческой буквы на красивое \renewcommand{\phi}{\varphi}).

Практические советы

1

Имена команд только из букв

Имя макроса в LaTeX может состоять только из латинских букв (без цифр и спецсимволов). Имя \vec1 вызовет ошибку, используйте \vecOne.

Попробуйте прямо сейчас

Оптимизируйте научную верстку в Labkeeper

Онлайн-редактор LaTeX с быстрой компиляцией, удобным менеджером преамбул и встроенным AI-помощником для написания макросов.

LaTeX editor screenshot
  • Полновесная компиляция: Получайте PDF профессионального качества с помощью встроенного LaTeX-компилятора.
  • 60 секунд на выполнение: Работайте со сложными документами без ограничений — лимит времени компиляции в разы выше, чем в аналогичных сервисах.
  • Умная конвертация: Любые вычислительные формулы автоматически преобразовываются в красивый LaTeX
  • Гибридный синтаксис: Используйте легковесные вставки Markdown прямо в сложном LaTeX-коде для ускорения работы.
bg

Другие статьи