Biblatex 使用多语种语言设置

Biblatex 使用多语种语言设置

我注意到在确认通过选项传递给它的选项之前,首先biblatex使用传递给它的语言选项。polyglossialanguage = <language>

以下是说明该问题的 MWE。

\documentclass[slovene,a4paper,12pt]{article}
\usepackage{polyglossia}
\usepackage[language=slovene, backend=biber]{biblatex}
\usepackage[autostyle]{csquotes}

\setdefaultlanguage{slovenian}
\DeclareLanguageMapping{slovene}{slovene-apa}

\addbibresource{biblatex-examples.bib}

\begin{document}
Cite here \parencite{aksin}.
\printbibliography
\end{document}

该示例编译得很好,但如何避免给出的警告:

包 biblatex 警告:不支持语言“斯洛文尼亚语”。

(biblatex)在输入第 25 行使用后备语言“斯洛文尼亚语”。

答案1

在咨询biblatex维护者 Philip Kime 后,我给出了他的解决方案:

\DeclareLanguageMapping{slovenian}{slovene}

使biblatexbiber理解两种语言标识符都指的是同一种sl-SI语言(请参阅包文档,正如@moewe所建议的那样)。因此,参考书目字符串如andotherspages成功获得各自的翻译 - 这是不是当我编译问题中提供的MWE时的情况。

关于日志文件中的警告,我确认它们是无法避免的。也就是说,除非将标识符slovenian硬编码biblatex为 的同义词slovene,就像UKenglish的同义词一样british

答案2

biblatex总是会首先尝试从默认的 polyglossia/babel 语言中自动检测语言。您看到的问题是由于biblatexpolyglossia以不同的方式命名语言而产生的令人讨厌的现象。我希望将来polyglossiababel可以标准化 BCP47 语言环境名称(biber已经支持这些名称并在内部映射到polyglossia/babel名称)。

相关内容