关于 babel、biblatex 包的错误报告(可能与 latex3 相关)

关于 babel、biblatex 包的错误报告(可能与 latex3 相关)

我正在使用 MikTeX (4.8),在上次更新后,我收到一些与“__text_expand_loop:w has an extra }”相关的奇怪错误消息,我花了一段时间才找到问题的可能根源,它似乎与两个包有关(就我而言):babel 和 biblatex

‘生成’错误消息的命令是 \MakeUppercase(如果我使用 babel 包)和 \cite \fullcite(如果我使用带有 abnt 样式的 biblatex 包)。

\documentclass{article}
\RequirePackage[T1]{fontenc}
\RequirePackage[utf8]{inputenc}
%%using the two packages bellow it won't compile
\RequirePackage{babel}
\RequirePackage[backend=biber,style=abnt,pretty,giveninits,extrayear,repeatfields]{biblatex}

%% if, instead, the babel package isn't loaded and biblatex is used as below, it will work
%%\RequirePackage[backend=biber]{biblatex}

\addbibresource{modeloTCC.bib}

\begin{document}

\MakeUppercase{aâãàá b}


\cite{ABNT:NBR-14724-2011}

\fullcite{ABNT:NBR-14724-2011}

\end{document}

文件 modeloTCC.bib

@manual{ABNT:NBR-14724-2011,
    title="{NBR}-14724: Informação e Documentação - Trabalhos Acadêmicos - Apresentação",
    author="ABNT",
    organization="ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS",
    address="Rio de Janeiro",
    year="2011",
    pages="6"
}

我收到的错误消息类型是:

! Argument of \__text_expand_loop:w has an extra }.
<inserted text> 
                \par 
l.14 \MakeUppercase
                   {aâãàá b}

和/或

! Argument of \__text_expand_loop:w has an extra }.
<inserted text> 
                \par 
l.17 \cite{ABNT:NBR-14724-2011}

我不确定这是否真的是 babel/biblatex 错误,或者与 latex3 或(也许)MiKTeX 特定相关。

欢迎任何帮助/想法!

答案1

miktex 也未能更新 firstaid 包。此包包含对 babel 的修复,并关闭了其对 的重新定义\MakeUppercase

在 miktex 中纠正这个问题之前,你可以在加载 babel 之前定义一个命令来关闭 hack:

\def\BabelCaseHack{}

\RequirePackage{babel}

相关内容