使用自动编号对公式进行编号时,若未引用,如何手动添加编号

使用自动编号对公式进行编号时,若未引用,如何手动添加编号

autonum只在引用方程式时才使用包对方程式进行编号。但是,有时我想引用一系列方程式。例如,我有 4 个方程式,我输入了\eqref{eq1}-\eqref{eq4}。但是,中间的 2 个方程式不会被编号,因为它们没有被引用。有没有办法手动对这些方程式进行编号?

这是一个最小的例子

\documentclass{article}
\usepackage{autonum}
\begin{document}
\begin{equation}
equation 1  \label{e1}
\end{equation}
\begin{equation}
equation 2
\end{equation}
\begin{equation}
equation 3
\end{equation}
\begin{equation}
equation 4  \label{e4}
\end{equation}

I want to refer to \eqref{e1}-\eqref{e4}, but the middle two will not be numbered with autonum.
\end{document}

答案1

以下示例提供了\retainlabel{<label>}类似于\label{<label>}但也会立即\ref{<label>}在框内设置 的示例。\ref永远不会设置,但会调用,因此不会被删除autonum

在此处输入图片描述

\documentclass{article}

\usepackage{amsmath,autonum}

\newcommand{\retainlabel}[1]{\label{#1}\sbox0{\ref{#1}}}

\begin{document}

\begin{equation}
  f_1(x) = ax^2 + bx + c \label{eqn:one}
\end{equation}
\begin{equation}
  f_2(x) = ax^2 + bx + c \retainlabel{eqn:two}
\end{equation}
\begin{equation}
  f_3(x) = ax^2 + bx + c \retainlabel{eqn:three}
\end{equation}
\begin{equation}
  f_4(x) = ax^2 + bx + c \label{eqn:four}
\end{equation}

See \eqref{eqn:one}--\eqref{eqn:four}.

\end{document}

答案2

autonum提供数学环境的“+”变体,包括equation+无论是否被引用都会被编号的变量:

\documentclass{article}
\usepackage{autonum}
\begin{document}
\begin{equation}
equation 1  \label{e1}
\end{equation}
\begin{equation+}
equation 2
\end{equation+}
\begin{equation+}
equation 3
\end{equation+}
\begin{equation}
equation 4  \label{e4}
\end{equation}
I want to refer to \eqref{e1}--\eqref{e4}, and now the middle two will also be
numbered with autonum.
\end{document}

在此处输入图片描述

答案3

\documentclass{article}



\usepackage{hyperref}
\usepackage{cleveref}
\usepackage{autonum}



\begin{document}

\begin{equation}
a\label{a}
\end{equation}
\begin{equation}
b\label{b}
\end{equation}
\begin{equation}
c\label{c}
\end{equation}

Consider \cref{a,b,c}.
\end{document}

我添加了超文本,因为使用 autonum 时包的顺序很重要。Cleveref 是我最喜欢的包之一。

相关内容