biblatex 和 autonum 不能一起工作

biblatex 和 autonum 不能一起工作

biblatex并且autonum似乎在最新版本中无法协同工作。考虑以下 MWE:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[backend=biber]{biblatex}
\usepackage{autonum}

\begin{document}

\end{document}

我收到以下错误消息:

0 File ended while scanning use of \ettl@for@do1
0 pdflatex: \pdfmatch: repetition-operator operand invalid pdfTeX warning: pdflatex: \pdfmatch: repetition-operator operand invalid)Runaway argument?{{\blx@bibdata@i {\blx@tempb }}\blx@bibfiles \eappto \blx@tempa {\blx@xml@comme

注释掉 或 之后biblatexautonum错误消失。

答案1

问题在于autonum使用etextools。事实上,使用 也可以重现此错误

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[backend=biber]{biblatex}
\usepackage{etextools}

\begin{document}

\end{document}

问题在于etextools重新定义的\forlistloop方式与biblatex预期不相符。

据我所知autonum.sty,中\forlistloop未使用,因此可以安全地将其恢复为biblatex期望的值。但不能保证biblatex中 use 构造的其他宏存在错误etextools

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[backend=biber]{biblatex}


\let\etoolboxforlistloop\forlistloop % save the good meaning of \forlistloop
\usepackage{autonum}
\let\forlistloop\etoolboxforlistloop % restore the good meaning of \forlistloop


\begin{document}

\begin{equation}
A\label{A}
\end{equation}

\begin{equation}
B\label{B}
\end{equation}

\ref{A}

\begin{equation}\label{C}
\begin{split} A\\ b \end{split}
\end{equation}

\end{document}

在此处输入图片描述

的功能autonum似乎还不错。

也可以看看etextools 和 etoolbox 命令 \dolistloop (\forlistloop) 之间不兼容?

相关内容