我正在使用 Xelatex 与 biblatex 和 biber.exe 后端:
\documentclass{article}
\usepackage{fontspec}
\usepackage{xltxtra}
\usepackage{polyglossia}
\setmainlanguage{english}
\defaultfontfeatures{Scale=MatchLowercase}
\setmainfont{Sabon LT}
\setsansfont{Syntax LT}
\setmonofont{Courier New}
\usepackage{csquotes}
\usepackage[bibstyle=nature, citestyle=numeric-comp, sorting=none,backend=biber]{biblatex}%this style compresses the numbering
\bibliography{cluster.bib}
\begin{document}
some text
some unicode text áâäæèê\\
some unicode text: Parenicovà áâäæèê with an unicode reference \autocite{Parenicova2000a}\\
unicode reference two Jørgensen \autocite{Joergensen2009}\\
Reference without unicode \autocite{Wu2004}
\printbibliography
\end{document}
Unicode 字符在文本主体中正确显示,但在参考列表中省略了 Unicode 字符(见附图)
这不是与我的 .bib 库相关的问题,当我使用普通的 pdflatex 时,我将我的库编码为 UTF-8(也测试了 UTF-16,没有区别),并且 biblatex 字符可以正常显示。我认为该错误与 biber.exe 与我的 Windows Vista 结合使用有关,当我在 .bcf 文件上手动运行 biber.exe 时会显示以下错误:
F:\LaTeX\xetex_testing>biber.exe testB.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 'testB.blg'
INFO - Found 'testB.bcf'
INFO - Reading testB.bcf
WARN - Warning: You are using biblatex version 1.0 :
biber is more likely to work with version 0.9e.
INFO - Found 3 citekeys in bib section 0
INFO - Processing bib section 0
INFO - Found 'cluster.bib'
INFO - Processing file 'cluster.bib' for section 0
INFO - Decoding LaTeX character macros into UTF-8
Unicode::Collate: Can't locate Unicode\Collate\allkeys.txt in @INC (@INC contain
s: C:\Users\Tim\AppData\Local\Temp\par-Tim\cache-ef9b516290b60f6dc5518a4b5db3004
32676b908\inc\lib C:\Users\Tim\AppData\Local\Temp\par-Tim\cache-ef9b516290b60f6d
c5518a4b5db300432676b908\inc CODE(0x2cc0b14) CODE(0x2cc0e14)) at Biber.pm line 1
403
所以这是与 biber 相关的错误吗,还是我做错了什么?非常感谢大家的帮助。
解决方案
虽然我的 bib 文件在我的参考程序(jabref)中正确显示了所有的 unicode 字符,但 bib 文件的编码似乎是问题所在(显然 jabref 将其保存为 Cp1252?)在使用外部文本编辑器将 bib 文件转换为 UTF8 后,一切都正常!
答案1
我使用 XeLaTeX/biber 组合测试了一个包含 unicode 字符的完整示例,它运行良好。您的日志显示您使用的是旧版 biber,这可能是导致问题的原因(最近在 biber 中添加了对 Unicode 排序机制的更改)。尝试升级到 biber v0.6。
编辑:这是对我有用的示例:
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Palatino Linotype}
\usepackage[backend=biber]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{J01,
author = {Jørgensen, J.},
year = {2001},
title = {Alpha áâäæèê},
}
\end{filecontents}
\bibliography{\jobname}
\begin{document}
\nocite{*}
\printbibliography
\end{document}