biblatex:未定义控制序列。\lbx@lfromlang ->\iffieldundef

biblatex:未定义控制序列。\lbx@lfromlang ->\iffieldundef

我有点卡住了。当我尝试将我的文档从普通的 bibtex 更改为 biblatex 时(出于引用处理的一些原因),我卡在了此错误消息中:

Undefined control sequence.
\lbx@lfromlang ->\iffieldundef 
                           {origlanguage} {} {\bibstring {from\thefield ...
l.131 \begin{document}

据我所知,这是 biblatex *.lbx 文件的一部分。为此,我尝试使用 babel 包处理其他一些语言,结果它成功了。

下一步。使用相同的 bibfile 创建一个最小示例,尝试重现错误:

\documentclass{scrbook}
\usepackage[english,ngerman]{babel}
\usepackage{biblatex}
\addbibresource{00a_thesis.bib}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\begin{document}
 Text with cite \cite{novikova:2011}\\

 \printbibliography

\end{document}

这工作得很好。

有人能帮我找出导致这种奇怪行为的原因吗?为了排除 biblatex 中的错误,我还尝试了 2.8 开发分支,但没有成功。

编辑: novikova:2011 的 Bibtex 条目

@report{novikova:2011,
     author = "Novikova, Aleksandra and Amecke, Hermann and Neuhoff, Karsten and Stelmakh, Kateryna and Kiss, Bernadett and Rohde, Clemans and Dunkelberg, Elisa and Matschoss, Kaisa and Darby, Sarah",
     title = "Information tools for energy demand reduction in existing residential buildings",
     institution = " Climate Policy Initiative (CPI)",
     year = 2011,
     month = "27~" # jun,
     type = "Study",
     url = "http://enef-haus.de"
}

答案1

我找到了解决问题的方法:
我使用的是大学提供的模板,该模板有自己的类文件。其中有命令\RequirePackage{ngerman}。如果没有该命令,我的文件也可以正常编译biblatex

据我所知,\RequirePacke{ngerman}只有当我想在 之前使用该包的简写时, 才有用\begin{document}
总之:如果我在命令中不使用任何这些,那么只使用 就足够了\usepackage[ngerman]{babel}

相关内容