因此我使用较低的版本,如下所示: 如何强制对特定方程式进行特殊编号
使用 \usetagform{reaction} 和 \usetagform{default} 在反应和默认之间切换
但编号保持不变。在引用 with 时,至少可以\label{R1}
包含\ref{R1}
标题中定义的前缀 R 吗?\newtagform{reaction}[R]()
以下是 MWE:
\documentclass[12pt,fleqn,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{mathtools}
\usepackage[ngerman]{babel}
\newtagform{reaction}{(R}{)}
\begin{document}
\usetagform{reaction}
\begin{align}
X + Y \quad \longrightarrow \quad Z \label{R1}
\end{align}
\usetagform{default}
\begin{align}
x + y = z \label{eq2}
\end{align}
This is what I get:
\begin{enumerate}
\item reaction (\ref{R1})
\item equation (\ref{eq2})
\end{enumerate}
But I want:
\begin{enumerate}
\item reaction ({\rm R}\ref{R1})
\item equation (\ref{eq2})
\end{enumerate}
\end{document}
答案1
更新:这更接近您想要的吗?
\documentclass[12pt,fleqn,a4paper]{article}
\usepackage{amsmath}
\newcommand{\PrependEqNo}[1]{\stepcounter{equation}\tag{#1\theequation}}
\begin{document}
\begin{align}
X + Y \quad &\longrightarrow \quad Z \PrependEqNo{R}
\label{R1}\\
A + B \quad &\longrightarrow \quad C \label{2}
\end{align}
Above are reaction \eqref{R1} and equation \eqref{2}.
\begin{subequations}
\begin{align}
U+V\quad &\longrightarrow \quad W\PrependEqNo{R}\\
F+G\quad &\longrightarrow \quad H
\end{align}
\end{subequations}
\end{document}
老东西:在 mathtools 手册中写道:“当您使用 \eqref 引用方程式时,引用时有效的标记形式将控制格式,因此如果您在整个文档中使用不同的标记形式,请务必小心。”但是,我认为以下内容可能会满足您的要求。
\documentclass[12pt,fleqn,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{mathtools}
\usepackage[ngerman]{babel}
\newtagform{reaction}{(R}{)}
\newcommand{\SwitchToChem}{\renewcommand{\theequation}{R\arabic{equation}}}
\newcommand{\SwitchBack}{\renewcommand{\theequation}{\arabic{equation}}}
\begin{document}
\usetagform{reaction}
\begin{align}
X + Y \quad \longrightarrow \quad Z \label{R1}
\end{align}
\usetagform{default}
\begin{align}
x + y = z \label{eq2}
\end{align}
This is what I get:
\begin{enumerate}
\usetagform{reaction}
\item reaction \eqref{R1}
\usetagform{default}
\item equation \eqref{eq2}
\end{enumerate}
If you want to have this without switching, use
\SwitchToChem
\begin{equation}
U+W\quad\longrightarrow\quad V\label{R2}
\end{equation}
\SwitchBack
Here comes \eqref{R2}.
\end{document}