我在我的 tex 文档中使用 biber.exe 和 biblatex 以及以下序言
\documentclass[fontsize =10pt, BCOR=0mm, DIV=default]{scrartcl}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}
\usepackage{polyglossia}
\usepackage{graphicx} % support the \includegraphics command and options
\setmainlanguage{english}
\usepackage{csquotes}
\usepackage[bibstyle= nature, citestyle=numeric-comp, sorting=none, backend = biber]{biblatex}%this style compresses the numbering
\usepackage{setspace} %setting interline spacing
\onehalfspacing
\KOMAoptions{DIV=last}
\bibliography{c} %sets the .bib database \begin{document} \section{Results}
\section{This is a section}
\subsection{This is a subsection}
\emph{this is emphasized} This is a reference
\cite{Beaumont2004}
\end{document}
从那天起,我就遇到了很多 biber.exe 问题。这些问题是在使用我的 MikTex 安装的自动更新方法更新许多软件包后开始出现的。无论我尝试哪个 bib 文件或 tex 文件,biber.exe 都无法正常工作。错误看起来与我曾经使用旧版本的 biber.exe 时类似(这是我在 .bcf 文件上手动执行 biber.exe 时得到的错误)
G:\Hierarchische clustering manuscript>biber.exe TESTC.bcf
Could not find or check module 'IPC::Run' [THIS MAY BE A PROBLEM!] at IPC/Cmd.pm line 125 Already tried to use 'IO::Select', which was unsuccessful [THIS MAY BE A PROBLEM !] at IPC/Cmd.pm line 154 INFO - Logfile is 'TESTC.blg' INFO - Found 'TESTC.bcf' INFO - Reading TESTC.bcf INFO - Found 1 citekeys in bib section 0 INFO - Processing bib section 0 INFO - Found 'c.bib' INFO - Processing bibtex format file 'c.bib' for section 0 INFO - Decoding LaTeX character macros into UTF-8 c.bib.utf8, line 4, warning: 36 characters of junk seen at toplevel
Unicode::Collate: Can't locate Unicode\Collate\allkeys.txt in @INC (@INC contain s: F:\temp\par-homantg\cache-fa06d357fc5a676eeabf7d32fcd743b55bd08598\inc\lib F: \temp\par-homantg\cache-fa06d357fc5a676eeabf7d32fcd743b55bd08598\inc CODE(0x1262 454) CODE(0x1262754))
at Biber.pm line 1412
这是乳胶日志文件的输出(截断)
LaTeX Warning: Citation 'Beaumont2004' on page 1 undefined on input line 104.
[1] ("G:\Hierarchische clustering manuscript\TESTD.aux")
LaTeX Warning: There were undefined references.
Package biblatex Warning: Please (re)run Biber on the file:
(biblatex) TESTD
(biblatex) and rerun LaTeX afterwards.
我希望有位用户或开发人员能更详细地介绍此错误。这是否与我的机器有关,是否与我的 .bib 文件有关(编码方式错误?再次参阅我之前关于 biber.exe 的问题)或其他什么。?
我正在使用最新版本的 biber.exe(从 sourceforge 手动下载)和 biblatex 1.0
最小最小工作示例
\documentclass[11pt]{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage{english}
\title{clustering analysis}
\author{Tim Homan}
\date{oktober 2010} %
\usepackage[backend = biber]{biblatex}
\bibliography{testlibrary} %sets the .bib database
\begin{document}
\section{Results}
text
\subsection{This is a subsection}
This is a reference \cite{Beaumont2004}
\end{document}
图书馆下载
我用于测试的库可以在这里下载(rar 以保存编码):
答案1
(我是一名 biber 开发者)
如果您使用的是二进制文件,biber 应该不可能找不到 Unicode::Collate,因为它包含在 biber 中。“-f”标志使用 perl 的内置排序,该排序可识别区域设置,但完全依赖于您的操作系统区域设置(对于许多操作系统而言,这通常不是最佳的)。有关更多详细信息,请参阅 sourceforge 上的 biber PDF 手册。
您是否在任何地方安装了旧的 biber 二进制前 perl?在我看来就是这样的。我会对您的驱动器进行全面扫描以查找 biber 安装。
答案2
我从这里下载了当前的 biber http://sourceforge.net/projects/biblatex-biber/files/biblatex-biber/current/binaries/Windows/biber.zip/download
并尝试了您的 bib 和示例文档,并且效果良好。
I:\Z-Test\testlibrary>biber -v
biber version: 0.6
I:\Z-Test\testlibrary>biber test-utf8
INFO - Logfile is 'test-utf8.blg'
INFO - Found 'test-utf8.bcf'
INFO - Reading test-utf8.bcf
INFO - Found 1 citekeys in bib section 0
INFO - Processing bib section 0
INFO - Found 'testlibrary.bib'
INFO - Processing bibtex format file 'testlibrary.bib' for section 0
INFO - Decoding LaTeX character macros into UTF-8
INFO - Sorting entries with Unicode::Collate (level => 3, upper_before_lower =
1, locale => English_United States.1252, UCA version: 5.2.0)
INFO - No sort tailoring available for locale 'English_United States.1252'
INFO - Writing 'test-utf8.bbl' with encoding 'UTF-8'
INFO - Output to test-utf8.bbl
我在一个空文件夹中安装了 biber.exe、您的示例和 bib 文件。为了保险起见,我还使用空的 PATH 变量进行了测试,这样像 perl 这样的外部资源就不会干扰。您在哪里安装了 biber.exe?
答案3
解决方案
Unicode::Collate
显然,当 biber 尝试使用进行排序但无法找到/使用它时,就会发生错误
而是使用基于语言区域设置(或其他)的 Perls 内置排序算法。不知道这一切到底意味着什么,但以下设置有效。
Biber -f xxx.bcf