具有 ieee 風格的 biblatex 不再工作(biblatex-ieee)

具有 ieee 風格的 biblatex 不再工作(biblatex-ieee)

我的參考書目有問題。使用 MikTeX 更新所有套件後,biblatex拋出錯誤。我已經卸載並安裝了 MikTeX 和 Texmaker 好幾次,但這沒有幫助。經過仔細觀察,我想我找到了問題的根源。他們已經發布了更新biblatex-ieee包,似乎不再能正常工作了。

% not working anymore, with the latest version of biblatex-ieee package
\usepackage[style=ieee]{biblatex} 
! Package biblatex-ieee Error: Failed to update citation style.See the biblatex-ieee package documentation for explanation.Type H <return> for immediate help.... ...p,cite:comp:end,cite:comp:inset,cite:dump}

% what's working
\usepackage[style=ieee-alphabetic]{biblatex} 

所以我的問題是:有誰知道該如何解決這個問題?

我正在考慮安裝舊版本的軟體包,但我不知道該怎麼做。

答案1

此問題已在最新版本中修復biblatex-ieeev1.3c。該更改與自身更新有關biblatex,而不是與biblatex-ieee.此外,只有引用樣式受到影響:即使您尚未更新至 v1.3c,您的參考書目也將繼續工作。


目前,您可以添加

% The second step is to replace \multicitedelim and
% \multicitesubentrydelim with a version wrapped in
% the appropriate delimiter.
\renewcommand*{\do}[1]{%
  \expandafter\patchcmd\expandafter
    {\csname abx@macro@\detokenize{#1}\endcsname}%
    {\multicitedelim}
    {\bibclosebracket\multicitedelim\bibopenbracket}
    {}
    {%
      \PackageError{biblatex-ieee}{Failed to update citation style}\@ehc
    }%
  }
\docsvlist{cite:comp:end,cite:comp:inset,cite:comp:shand,cite:dump}

\renewcommand*{\do}[1]{%
  \expandafter\patchcmd\expandafter
    {\csname abx@macro@\detokenize{#1}\endcsname}%
    {\multicitesubentrydelim}
    {\bibclosebracket\multicitesubentrydelim\bibopenbracket}
    {}
    {%
      \PackageError{biblatex-ieee}{Failed to update citation style}\@ehc
    }%
  }
\docsvlist{cite:comp:inset,cite:dump:inset}


% There's also one \multiciterangedelim and one
% \multicitesubentryrangedelimto alter.
\expandafter\patchcmd\expandafter
  {\csname abx@macro@\detokenize{cite:dump}\endcsname}%
  {\multiciterangedelim}
  {\bibclosebracket\multiciterangedelim\bibopenbracket}
  {}
  {%
    \PackageError{biblatex-ieee}{Failed to update citation style}\@ehc
  }%

\expandafter\patchcmd\expandafter
  {\csname abx@macro@\detokenize{cite:dump:inset}\endcsname}%
  {\multicitesubentryrangedelim}
  {\bibclosebracket\multicitesubentryrangedelim\bibopenbracket}
  {}
  {%
    \PackageError{biblatex-ieee}{Failed to update citation style}\@ehc
  }%

加載後biblatex獲得正確的行為:您仍然會在加載點收到警告,但輸出將被修復。

答案2

感謝@Ulrike Fischer 提供的信息,我沒有註意到 miktex 版本 (1.3b) 不是 ctan (1.3c) 的最新版本。作為解決方案,我從 ctan 下載了最新檔案並覆蓋了 miktex 安裝中的舊檔案。現在一切又如預期進行了。

相關內容