如何交叉引用 chemmacros/chapter 中的反应?

如何交叉引用 chemmacros/chapter 中的反应?

我更改了标签格式,其中也包括章节号(R 0.1)。当我交叉引用反应时,只使用数字(1),而不是带有章节号的整个标签。我如何才能为交叉引用获得相同的格式/标签?

\documentclass{scrreprt}

\usepackage{chemmacros}
\chemsetup{modules={all}}
\chemsetup[reactions]{
    before-tag = R \thechapter.,
    tag-open = ( ,
    tag-close = )
}

\begin{document}

\begin{reactions}
  A + B &-> C "\label{test1}" \\
  X + Y + Z &-> XX "\label{test2}"
\end{reactions}

In reaction \ref{test1} and \ref{test2}
\end{document}

答案1

数学等式也一样。这是因为标签是放在计数器数字周围的在方程中

\the<counter表示计数器数字的实际打印方式,到处

\documentclass{article}

\usepackage{mathtools}
\renewtagform{default}{[}{]}
\usetagform{default}

\begin{document}

\begin{equation}
  1 \neq 2 \label{foo}
\end{equation}

\ref{foo} % not [1] but 1

\renewtagform{default}{}{}
\renewcommand\theequation{[\arabic{equation}]}

\begin{equation}
  3=3 \label{bar}
\end{equation}

\ref{bar} % [2]

\end{document}

在此处输入图片描述

它与chemmacros反应完全类似:

\documentclass{article}

\usepackage{chemmacros}
\usechemmodule{reactions}
\renewtagform{reaction}{[}{]}

\begin{document}

\begin{reaction}
  CH4 \label{foo}
\end{reaction}

\ref{foo} % not [1] but 1

\renewtagform{reaction}{}{}
\renewcommand\thereaction{[\arabic{reaction}]}

\begin{reaction}
  H2O \label{bar}
\end{reaction}

\ref{bar} % [2]

\end{document}

在此处输入图片描述

chemmacros选项实际上只是mathtools'的包装器\renewtagform

相关内容