我想使用biblatex
和newtxmath
。但是同时使用 会给出以下警告Package biblatex Error: Incompatible package 'etextools'. \begin{document}
和许多错误。似乎newtxmath
需要etextools
和biblatex
不兼容。我可以使用其他方法吗?或者有解决方法吗?
梅威瑟:
% !BIB TS-program = biber
% !TeX program = pdflatex
% !TeX encoding = UTF-8 Unicode
\documentclass{article}%
\usepackage[english, german]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[]{newtxmath} %comment this
\usepackage[]{biblatex} %or this out to get it working
\begin{document}
Hallo
\end{document}
答案1
从今天早上 (UTC, 2018-05-17) 开始,此解决方法不再需要。MikTeX 和 TeX live 现在都发布了
newtx
不再加载的软件包的更新版本etextools
。更新newtx
软件包。
这是 1.55 版的一个临时问题newtxmath
。它加载了etextools
与 不兼容的软件包biblatex
。几天后发布的 1.551 版消除了对 的依赖etextools
,并再次与 兼容biblatex
。另请参阅tex-live
邮件列表中的讨论有关这个问题的具体情况以及 https://github.com/plk/biblatex/issues/669和biblatex 和 autonum 不能一起工作有关etextools
和的一般性评论biblatex
。
etextools
(重新)定义宏的\forlistloop
方式与期望的原始定义不兼容etoolbox
。biblatex
(etextools
是思想的扩展etoolbox
,如果我理解正确的话,etextools
在定义时首先出现\forlistloop
。etextools
在 2009-08-31 的版本 2i 中实现了宏,而在 2010-08-21 的版本 2.0 中etoolbox
定义了它\forlistloop
。)这是一个不幸的名称冲突,可能会导致一些问题,最明显的是biblatex
。据我所知,etextools
它一直被认为是一个实验性的软件包,而不是一个用于生产用途的软件包(另请参阅autonum 软件包需要过时的 etex 软件包特别是该软件包作者的以下声明:https://groups.google.com/d/msg/comp.text.tex/VRrFB4ll5n0/1IVvhFyKqsAJ)
目前,只有biblatex
3.10 或 3.11 版本才可以使用
\documentclass{article}%
\usepackage[english, german]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{etoolbox}
\let\oldforlistloop\forlistloop
\usepackage{newtxmath}
\let\forlistloop\oldforlistloop
\usepackage[noerroretextools]{biblatex}
\begin{document}
Hallo
\end{document}
作为一种解决方法。该选项noerroretextools
可能在将来的版本中被删除biblatex
。