该问题是我在unicode-math
手动编译文档时发现的,下面的代码可以重现该问题。
\documentclass{article}
\usepackage{amsmath}
\usepackage{refstyle}
\begin{document}
test
\end{document}
控制台输出是
This is pdfTeX, Version 3.141592653-2.6-1.40.24 (TeX Live 2022) (preloaded format=pdflatex)
restricted \write18 enabled.
entering extended mode
(./1.tex
LaTeX2e <2022-11-01> patch level 1
L3 programming layer <2023-01-16>
(c:/texlive/2022/texmf-dist/tex/latex/base/article.cls
Document Class: article 2022/07/02 v1.4n Standard LaTeX document class
(c:/texlive/2022/texmf-dist/tex/latex/base/size10.clo)) (./amsmath.sty
For additional information on amsmath, use the `?' option.
(c:/texlive/2022/texmf-dist/tex/latex/amsmath/amstext.sty
(c:/texlive/2022/texmf-dist/tex/latex/amsmath/amsgen.sty))
(c:/texlive/2022/texmf-dist/tex/latex/amsmath/amsbsy.sty)
(c:/texlive/2022/texmf-dist/tex/latex/amsmath/amsopn.sty)) (./refstyle.sty
(c:/texlive/2022/texmf-dist/tex/latex/graphics/keyval.sty) (./refstyle.cfg
! Argument of \eqref has an extra }.
<inserted text>
\par
l.526 lsttxt = \RSlsttxt}
?
然后我发现旧版本amsmath
也可以工作,例如,amsmath.sty(2021/10/15 v2.17l)。
不同之处在于\DeclareRobustCommand{\eqref}[1]{\textup{\tagform@{\ref{#1}}}}
和\newcommand{\eqref}[1]{\textup{\tagform@{\ref{#1}}}}
,即\eqref
是否稳健。
问:如何在最新版本中同时使用amsmath
和?refstyle
答案1
你问,
[H]如何在最新版本中同时使用
amsmath
和?refstyle
答案:你可以加载refstyle
前而不是之后amsmath
。
以下代码在 MacTeX2022、、LaTeX2e <2022-11-01> patch level 1
和refstyle 2010/11/02 v0.5
下可以很好地编译amsmath 2022/04/08 v2.17n
。
\documentclass{article}
\usepackage{refstyle}
\usepackage{amsmath}
\begin{document}
test
\begin{equation}\label{a} 1=1 \end{equation}
A cross-reference: \eqref{a}
\end{document}
答案2
FYI 0.6 版refstyle
(2024-01-31)将修复该问题。