bundledoc 未找到 biblatex-dm.cfg

bundledoc 未找到 biblatex-dm.cfg

考虑到这个 MWE

\RequirePackage{snapshot}
\documentclass{scrbook}
\usepackage{filecontents,biblatex}
\begin{filecontents}{\jobname.bib}
  @misc{anything,
  author={A. Anyone}}
\end{filecontents}
\addbibresource{\jobname.bib}


\begin{document}
 \chapter{My document}
This is my text
\end{document}

.dep文件中有一行

  *{file}   {biblatex-dm.cfg}{0000/00/00 v0.0}

当我使用 -file 时.dep出现bundledoc错误

bundledoc: "kpsewhich -progname=latex $BDINPUTS" (BDINPUTS="biblatex-dm.cfg") failed to find biblatex-dm.cfg

我该如何修复它?

答案1

Ulrike Fischer 正确地(我相信)将此报告为一个错误https://github.com/plk/biblatex/issues/719。问题是,即使未找到的文件也会被添加到已使用文件列表中\@addtofilelist。修复程序位于biblatex,请参阅https://github.com/plk/biblatex/pull/721

在此期间,您可以使用

\protected\long\def\blx@inputonce#1#2#3#4#5#6{%
  \ifcsundef{blx@file@#1}
    {\blx@info@noline{Trying to load #2..}%
     \IfFileExists{#1}
       {\blx@info@noline{... file '#1' found}%
        #3\@@input\@filef@und#4#5%
        \listxadd\blx@list@req@stat{#1}%
        \@addtofilelist{#1}}
       {\blx@info@noline{... file '#1' not found}#6}%
     \global\cslet{blx@file@#1}\@empty}
    {#5}}

作为一种解决方法。此补丁需要直接应用于biblatex.sty的原始定义\blx@inputonce,实际上这意味着您需要修改biblatex.sty。由于这可能有点不切实际,Ulrike 提供了另一种解决方法

\makeatletter
\patchcmd\@filelist{biblatex-dm.cfg,}{}{}{\fail}
\makeatletter

这只是biblatex-dm.cfg从使用过的文件列表中删除。

相关内容