使用 Springer Nature 模板时,\numberwithin 会省略附录中的句点

使用 Springer Nature 模板时,\numberwithin 会省略附录中的句点

通常,\numberwithin{equation}{section}根据方程式出现的部分对方程式进行编号:例如,

正常编号

使用 Springer Nature 作者模板(可通过背页以及Springer Nature 网站)\numberwithin{equation}{section}适用于不作为附录出现的章节。然而,在附录章节中,现在省略了将附录字母与公式编号分隔开的句点:Spring 附录编号

我不明白是什么导致了这种行为。 如何A.1恢复标准格式?

作为参考,我使用 Springer 模板的 MWE 是:

\documentclass[sn-mathphys,pdflatex]{sn-jnl}% Math and Physical Sciences Reference 
\numberwithin{equation}{section}

\begin{document}

\title{Title}

\section{Section}
\begin{equation}
1+1=2
\end{equation}

\backmatter

\begin{appendices}
\section{}
\begin{equation}
2+2=4
\end{equation}
\end{appendices}

\end{document}

答案1

该类有以下代码appendices。首先,它加载appendix包(两次),而且,相当奇怪的是,它会在加载包时有条件地执行代码(!)。这样的代码重新定义了appendices从中取出的代码appendix,然后重新定义再次如下所示(为清晰起见重新格式化,但功能未修改):

\AtBeginDocument{%
  \let\oldappendices\appendices
  \let\oldendappendices\endappendices
  \renewenvironment{appendices}{%
    \setcounter{figure}{0}%
    \setcounter{table}{0}%
    \setcounter{equation}{0}%
    \begin{oldappendices}%
    \gdef\thefigure{\@Alph\c@section\arabic{figure}}%
    \gdef\thetable{\@Alph\c@section\arabic{table}}%
    \gdef\theequation{\@Alph\c@section\arabic{equation}}%
  }{\end{oldappendices}}
}

因此他们做过思考问题决定附录字母和公式编号之间不需要句号:该行

    \gdef\theequation{\@Alph\c@section\arabic{equation}}%

很清楚。在更好的编程中,

\renewcommand\theequation{\Alph{section}\arabic{equation}}

结论是您应该遵循类别维护者的愿望,而这反过来又应该反映发布者的风格。

如果你因为不遵守内部风格而容易被拒绝,你可以这样做

\documentclass[sn-mathphys,pdflatex]{sn-jnl}% Math and Physical Sciences Reference 
\usepackage{xpatch}

\numberwithin{equation}{section}

\AtBeginDocument{%
  \xpatchcmd{\appendices}{\arabic{equation}}{.\arabic{equation}}{}{}%
}

\begin{document}

\title{Title}

\section{Section}
\begin{equation}
1+1=2
\end{equation}

\backmatter

\begin{appendices}
\section{}
\begin{equation}
2+2=4
\end{equation}
\end{appendices}

\end{document}

在此处输入图片描述

如果您收到提及不遵循内部风格的报告,只需删除加载xpatch和补丁即可。

答案2

我建议您在后面插入以下指令\begin{appendices}

\numberwithin{equation}{section}

顺便说一下,跑步\counterwithin{equation}{section}也是可以的。

相关内容