![在 biblatex 中,style=verbose 会杀死 \printbibliography](https://linux22.com/image/335513/%E5%9C%A8%20biblatex%20%E4%B8%AD%EF%BC%8Cstyle%3Dverbose%20%E4%BC%9A%E6%9D%80%E6%AD%BB%20%5Cprintbibliography.png)
我想将详细的脚注引文(例如style=verbose
)和所有参考书目项目的完整列表(带有\printbibliography
)结合起来。结果发现,它不起作用。这让我完全困惑,因为我认为这是一个非常标准的组合。
这是我的 MWE:
\documentclass[]{scrreprt}
\usepackage[
style=verbose, % #1: works without this line
backend=biber
]{biblatex}
\addbibresource{bibliography_mwe.bib}
\begin{document}
This is only a test! \footcite{TestArticle}
\appendix
\printbibliography % #2: works without this line
\end{document}
% does not work if both line #1 and #2 are included
并且,为了完整起见,我的bibliography_mwe.bib
:
@article{TestArticle,
author = {John Doe},
journal = {Latex Discoveries},
title = {How to set up Biblatex},
year = {2014}
}
如果我运行这个,我得到以下错误:
! Undefined control sequence.
<argument> \bibhang
由此还引发了一些错误。
如果我注释掉第 行#1
,则不会出现错误,但我只会得到数字引用。如果我注释掉第 行#2
,则不会出现错误,但显然我不会得到参考书目。
这是怎么回事?我做错了什么?这是一个非常简单的设置,我肯定忽略了一些显而易见的事情。
编辑:这是该命令生成的文件列表\listfiles
:
*File List*
scrreprt.cls 2015/10/03 v3.19a KOMA-Script document class (report)
scrkbase.sty 2015/10/03 v3.19a KOMA-Script package (KOMA-Script-dependent ba
sics and keyval usage)
scrbase.sty 2015/10/03 v3.19a KOMA-Script package (KOMA-Script-independent
basics and keyval usage)
keyval.sty 2014/10/28 v1.15 key=value parser (DPC)
scrlfile.sty 2015/10/03 v3.19a KOMA-Script package (loading files)
tocbasic.sty 2015/10/03 v3.19a KOMA-Script package (handling toc-files)
scrsize11pt.clo 2015/10/03 v3.19a KOMA-Script font size class option (11pt)
typearea.sty 2015/10/03 v3.19a KOMA-Script package (type area)
biblatex.sty 2016/03/03 v3.3 programmable bibliographies (PK/JW/AB)
biblatex_.sty 2016/03/03 v3.3 programmable bibliographies (biber) (PK/JW/AB)
etoolbox.sty 2015/08/02 v2.2a e-TeX tools for LaTeX (JAW)
kvoptions.sty 2011/06/30 v3.11 Key value format for package options (HO)
ltxcmds.sty 2011/11/09 v1.22 LaTeX kernel commands for general use (HO)
kvsetkeys.sty 2012/04/25 v1.16 Key value parser (HO)
infwarerr.sty 2010/04/08 v1.3 Providing info/warning/error messages (HO)
etexcmds.sty 2011/02/16 v1.5 Avoid name clashes with e-TeX commands (HO)
ifluatex.sty 2010/03/01 v1.3 Provides the ifluatex switch (HO)
logreq.sty 2010/08/04 v1.0 xml request logger
logreq.def 2010/08/04 v1.0 logreq spec v1.0
ifthen.sty 2014/09/29 v1.1c Standard LaTeX ifthen package (DPC)
url.sty 2013/09/16 ver 3.4 Verb mode for urls, etc.
blx-dm.def
verbose.dbx
biblatex-dm.cfg
blx-compat.def 2016/03/03 v3.3 biblatex compatibility (PK/JW/AB)
biblatex_.def
standard.bbx 2016/03/03 v3.3 biblatex bibliography style (PK/JW/AB)
authortitle.bbx 2016/03/03 v3.3 biblatex bibliography style (PK/JW/AB)
verbose.bbx 2016/03/03 v3.3 biblatex bibliography style (PK/JW/AB)
verbose.cbx 2016/03/03 v3.3 biblatex citation style (PK/JW/AB)
biblatex.cfg
english.lbx 2016/03/03 v3.3 biblatex localization (PK/JW/AB)
biblatex_mwe.bbl
***********
biber --version
>biber version: 2.4
lsb_release -d
>Description: Ubuntu 14.04.4 LTS
我正在使用最新的 texlive 2015,从手动 texlive 2014 安装(不是 Ubuntu 存储库中的安装)升级而来。
我添加了日志档案一次运行。完整的错误消息是:
! Undefined control sequence.
<argument> \bibhang
l.13 \end
{document}
?
! Missing number, treated as zero.
<to be read again>
\relax
l.13 \end
{document}
?
! Illegal unit of measure (pt inserted).
<to be read again>
\relax
l.13 \end
{document}
?
答案1
这有点令人伤心,但似乎是隐藏在 texlive 内部神秘迷宫中的某种奇怪的情况导致了这个问题。
以下技巧提供了一种快速的解决方法:
\newlength{\bibhang}
\setlength{\bibhang}{5mm}
但最终,我除了安装 texlive 2016 之外没有其他解决方案。
感谢所有有用的评论!
根据评论中的建议,我升级到了 texlive 2016。MWE 运行正常,没有任何问题。显然,texlive 2015 中详细引用和最后的完整参考书目的组合被破坏了。