biblatex-apa 和 Unicode 字符

biblatex-apa 和 Unicode 字符

当我使用 中的默认样式之一时biblatex,Unicode 字符会正确打印在参考书目中。biblatex-apa另一方面,当我使用该包时(style = apa在加载biblatex包时添加该选项),许多字段会将这些字符显示为乱码序列,但其他字段会正确显示它们。以下是一个例子:

\documentclass{article}
\usepackage{fontspec,xunicode,xltxtra} % XeLaTeX
\defaultfontfeatures{Mapping=tex-text} % support TeX conventions like ``--''
\setmainfont{Linux Libertine O}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage[style = apa, backend = biber    ]{biblatex}
\DeclareLanguageMapping{american}{american-apa}
\addbibresource{test2.bib}

\begin{document}
Clearly Bj{\char"00F8}rn V{\char"00E5}ge likes the letters {\char"00E6}{\char"00F8}{\char"00E5} a lot \parencite{author1}.
\printbibliography
\end{document}

我的.bib 文件:

@ARTICLE{author1,
    AUTHOR = "Bj{\char"00F8}rn V{\char"00E5}ge",
    TITLE = "A title with {\char"00E6}{\char"00F8}{\char"00E5}",
    JOURNALTITLE = "The {J}ournal of {\char"00E6}{\char"00F8}{\char"00E5}",
    YEAR = "2011",
    ADDENDUM = "An addendum with {\char"00E6}{\char"00F8}{\char"00E5}",
    ANNOTATOR = "The annotator is {\char"00E6}{\char"00F8}{\char"00E5}",
    COMMENTATOR = "The commentator is {\char"00E6}{\char"00F8}{\char"00E5}",
    EDITOR = "P{\char"00F8}lsa S{\char"00E6}b{\char"00F8}",
    ISSUE = "The issue of {\char"00E6}{\char"00F8}{\char"00E5}",
    ISSUETITLE = "The issuetitle is {\char"00E6}{\char"00F8}{\char"00E5}",
    ISSUESUBTITLE = "The issuesubtitle is {\char"00E6}{\char"00F8}{\char"00E5}",
    JOURNALSUBTITLE = "The journalsubtitle is {\char"00E6}{\char"00F8}{\char"00E5}",
    NOTE = "The note says {\char"00E6}{\char"00F8}{\char"00E5}",
    NUMBER = "5",
    PAGES = "100--200",
    SERIES = "The series of {\char"00E6}{\char"00F8}{\char"00E5}",
    SUBTITLE = "The subtitle is {\char"00E6}{\char"00F8}{\char"00E5}",
    TITLEADDON = "The titleaddon is {\char"00E6}{\char"00F8}{\char"00E5}",
    TRANSLATOR = "The translator's name was {\char"00E6}{\char"00F8}{\char"00E5}"}

在此处输入图片描述

答案1

请尝试使用 SourceForge 开发文件夹中的 biber 1.2。它现在将在内部将 \char 结构转换为 Unicode,这对于排序等操作而言无论如何都是必要的。

答案2

问题似乎出在命令上\MakeSentenceCase。您可以尝试以下解决方法:

\makeatletter
\renewrobustcmd*{\MakeSentenceCase}{%
  \@ifstar}
\makeatother

这里有一个错误报告:https://github.com/plk/biblatex/issues/24

笔记

Biber 1.2 版已发布。它修复了这个问题。

相关内容