Ярлык для коммутативной диаграммы

Ярлык для коммутативной диаграммы

Я делаю

\begin{center}
\begin{tikzcd}
...some commutative diagram...
\end{tikzcd}
\end{center}

десятки раз в день. Есть ли способ сделать ярлык, например,

\diagram{
...some commutative diagram...
}

?

решение1

Это совсем не сложно. Но вы пожалеете об этом, как только поймете, что вам нужно использовать \&в качестве разделителя столбцов (возможно, это не так уж и важно), и вы потеряете возможность нумеровать диаграмму стандартными методами.

\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz-cd}
\usepackage{lipsum}% just for the example

\newcommand{\diagram}[2][]{%
  \begin{equation*}% better than center
  \begin{tikzcd}[ampersand replacement=\&,#1]
  #2
  \end{tikzcd}
  \end{equation*}
}

\begin{document}

\lipsum*[2]
\diagram{
  A \arrow[r,"f"] \arrow[d,"\alpha"] \& B \arrow[d,"\beta"] \\
  C \arrow[r,"g"] \& D
}
\lipsum*[3]
\begin{equation}
\begin{tikzcd}
  A \arrow[r,"f"] \arrow[d,"\alpha"] & B \arrow[d,"\beta"] \\
  C \arrow[r,"g"] & D
\end{tikzcd}
\end{equation}
\lipsum[4]

\end{document}

Видите ли вы реальное улучшение первого показателя по сравнению со вторым?

введите описание изображения здесь

Вы можете передать параметры диаграмме следующим образом:

\diagram[column sep=4em]{
  ...
}

Связанный контент