Biblatex 或 Biber 有漏洞吗?

Biblatex 或 Biber 有漏洞吗?

昨天我将我的 MikTex 2.9 发行版(Win XP SP3 32 位)更新至biblatex2.1 以及biber1.1 和其他一些版本。(以下软件包已更新:

biblatex.tar.lzma...
hyperref.tar.lzma...miktex-biber-bin.tar.lzma... miktex-misc.tar.lzma...miktex-texinfo-base.tar.lzma...todonotes.tar.lzma..)

并且,突然间,我无法再编译我的文档了。

以下是我所做的和得到的:

  1. 删除.aux文件。

  2. 运行pdflatex -synctex=1 -interaction=nonstopmode %.tex-> 一切正常。没有错误

  3. 运行biber。可以工作,但是会出现一系列警告,例如:

    WARN - BibTeX subsystem: C:\DOKUME~1\jelzow01\LOKALE~1\Temp\scsg79gtPA\Lit.bib_320.utf8, line 18, warning: 1 characters of junk seen at toplevel
    

    最后的消息仍然是“进程正常退出”。

  4. 由于在此阶段 PDF 文件中的引用尚未解析,因此我pdftex再次运行:

    pdflatex -synctex=1 -interaction=nonstopmode %.tex
    

但这次我收到了很多错误(这里是摘录):

line 1034: Paragraph ended before \name was complete
line 136: Undefined control sequence ...csname newcount\endcsname \scratchcounter
line 136: Missing number, treated as zero ...csname newcount\endcsname \scratchcounter
line 136: Missing = inserted for \ifnum ...csname newcount\endcsname \scratchcounter
line 136: Missing number, treated as zero ...csname newcount\endcsname \scratchcounter
line 136: Undefined control sequence ...csname newcount\endcsname \scratchcounter
line 136: Undefined control sequence ...csname newcount\endcsname \scratchcounter
line 136: Missing number, treated as zero ...csname newcount\endcsname \scratchcounter
line 136: Undefined control sequence ...csname newcount\endcsname \scratchcounter
line 136: You can't use `\xdef' after \advance ...csname newcount\endcsname \scratchcounter

第一个与文件相关*.bbl,其他的与相关supp-pdf.mkii。它们链接到日志文件中的以下几行:

Package biblatex Info: Reference section=2 on input line 10.
Package biblatex Info: Reference section/segment=2/0 on input line 10.
("C:\Programme\MiKTeX 2.9\tex\context\base\supp-pdf.mkii"
[Loading MPS to PDF converter (version 2006.09.02).]
! Undefined control sequence.
<argument> \blx@bbl@data 

然后我找到了这个主题:Biblatex 2.1 错误

Ulrike Fischer 提到,问题可能与 2.1 有关biblatex,不应该出现在 2.0 中。因此,我降级到 2.0。但没有成功。同样的问题再次出现。我注意到以下警告:

Package biblatex Warning: File 'main_diss.bbl' created by wrong version.

Package biblatex Info: ... file 'main_diss.bbl' found.
('path to my bbl file'.bbl
Runaway argument?
{{{hash=3b25bddedd00854b83d926f7f0f709e9}{Tuchin}{T\bibinitperiod }{V\ETC.
! Paragraph ended before \name was complete.
<to be read again> 
                   \par 
l.1034 

显然,biber1.1bblbiblatex2.1 创建了一个文件。然后我想降级到biber1.0。但在存储库中

http://www.ctan.org/tex-archive/biblio/biber/binaries/Windows

我只找到了 2012 年 7 月 30 日上传的最新文件版本。

有人知道问题是什么以及如何解决吗?我在哪里可以得到biber1.0?其他软件包会对这个问题产生影响吗?

非常欢迎任何帮助。

[更新] 我也尝试更新biblatex到 2.2。同样,没有成功。


[更新] 问题解决方案

我想,我不应该指责 biblatex 或 biber。问题出在我用作参考书目数据库的 *.bib 文件中。此文件是从 Zotero 自动导出的。昨天,我添加了一个简短的引文,但没有编译(因为当时正在运行 Miktex 的更新)。今天,更新后,我注意到了上述问题。我真丢脸。

以下是导致问题的条目:

@book{tuchin_tissue_2007,
address = {Bellingham, Wash.},
title = {Tissue optics light scattering methods and instruments for medical diagnosis},
isbn = {9780819464330 0819464333 9780819481061  0819481068  9781615837311  1615837310},
url = {http://link.aip.org/link/doi/10.1117/3.684093},
abstract = {This second edition covers the intensive growth in tissue optics--in particular, the field of tissue diagnostics and imaging--that has occurred since 2000. As in the original edition, Part I describes fundamentals and basic research, and Part {II} presents instrumentation and medical applications. The extensive new material includes results on tissue optical property measurements, including polarized light interaction with turbid tissues; an overview of new polarization imaging and spectroscopy techniques, optical computed tomography {(OCT)} developments and applications; updates on controlling tissue optical properties, and the optothermal and optoacoustic interaction of light with tissues; and descriptions of fluorescence, nonlinear spectroscopies, and inelastic light scattering.},
publisher = {{SPIE/International} Society for Optical Engineering},
author = {Tuchin, V. V and {{Society} of Photo-optical Instrumentation Engineers}},
year = {2007},
file = {Tissue Optics | Press Monographs - eBooks:D:\aj\zotero\storage\SXWHA9T7\pm166.html:text/html;Tissue Optics | Press Monographs - eBooks:D:\aj\zotero\storage\Z2A22V52\pm166.html:text/html}
},

更确切地说,问题是由 author 字段引起的。如果我替换

author = {Tuchin, V. V and {{Society} of Photo-optical Instrumentation Engineers}},

author = {Tuchin, V. V},  

一切正常。如您所见,第二个“作者”(社会)周围有一些额外的括号 {},这可能是造成问题的原因。如果我删除第二个作者,一切正常。

我猜想 biber 会解析作者字段直到找到第一个结束的 } 然后停止。在这种情况下,开括号和闭括号不平衡。这造成了麻烦。

感谢 Ulrike Fischer 和 PLK 的评论。下次我会先尝试一个最小的例子。

相关内容