[Tex/LaTex] biblatex with ieee style not working anymore (biblatex-ieee)

biblatexbibliographiesieee-style

I have a problem with my bibliography. After updating all packages with MikTeX, biblatex throws errors. I have uninstalled and installed MikTeX and Texmaker several times, this did not help. After a closer look I think I found the source of the problem. They have released an update of the biblatex-ieee package, and it seems that it does not work properly anymore.

% 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} 

So my question: Does anyone know how to fix this problem?

I was thinking of installing the old version of the package, but I don't know how to do that.

Best Answer

This issue is fixed in the latest release of biblatex-ieee., v1.3c. The change relates to updates to biblatex itself, rather than to anything in biblatex-ieee. Moreover, only yhe citation style is affected: your bibliography will continue to work even if you have not updated to v1.3c.


For the present, you could add

% 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
  }%

after loading biblatex to get the right behaviour: you'll still have the warning at point-of-loading, but the output would be fixed.