biblatex 中的 langid 字段与语言字段有何不同?

biblatex 中的 langid 字段与语言字段有何不同?

langid有人能总结一下字段的使用与language字段中的不同吗biblatex? 文档中Gostbibtexlangid是的同义词,language但优先于它。

答案1

我们之前在我可以在我的 .bib 文件中使用缩短的“语言”条目(语言代码)吗?,但让我们在这里更具体地区分一下。

biblatex文档说(第 25-26 页)

langid字段(标识符):参考书目条目的语言 ID。别名hyphenation是为了向后兼容而提供的。标识符必须是babel/polyglossia 包已知的语言名称。此信息可用于切换连字符模式和本地化参考书目中的字符串。请注意,语言名称区分大小写。此包当前支持的语言如表 2 所示。[...]

和(第 20 页)

language列表(键):作品的语言。语言可以按字面意思指定,也可以作为本地化键指定。如果使用本地化键,前缀lang可以省略。

这意味着langid字段保存了您想要在参考书目中使用的本地化内容(以及根据您的language选项设置的引文),它会影响连字模式以及本地化字符串(确切的效果取决于languageautolang选项的设置)。因为这是一个内部的指令中的biblatex信息必须以 TeX 能够理解的形式给出,您可以使用babel/polyglossia语言标识符,甚至可以使用 Biber 的 BCP47 语言代码。

如果您要准备多语言书目,建议提供langid所有条目。只有有了这些信息,LaTeX 才能正确切换语言环境以及字体和编码,以避免错误或不必要的输出。

language另一方面,列表没有特殊的内部含义,它只是将您想要在参考书目中看到的语言作为作品的语言(在标准样式中,语言直接打印在标题之后,默认情况下,该选项会clearlang抑制与文档语言匹配的语言的输出)。biblatex为此提供了一些本地化支持(“已知”语言列在§4.9.2.18语言名称),因此您可以给出语言“键”( russian, langrussian),在这种情况下biblatex系统会为您翻译该字段,或者如果不支持该语言,您可以逐字提供内容 ( Klingon)。

就其本身而言,biblatex这两个字段是完全独立的。它们不会相互影响。而且,你可以只填写其中一个字段,也可以同时填写两个字段,或者不填写任何字段 - 并且字段的内容不必相同。例如,你可以有

@online{elk,
  author   = {Anne Elk},
  title    = {A Theory on Brontosauruses},
  url      = {http://www.example.edu/~elk/bronto.pdf},
  date     = {2016-01-01},
  language = {french and latin},
  langid   = {ngerman},
}

biblatex(错误地)指示将作品视为德语(新正字法)(langid = {ngerman}),连字符和本地化字符串将相应地更改(取决于您的languageautolang选项)。但是,由于我们有language={french and latin}“法语和拉丁语”,因此将打印为作品的语言。当然,给出两种语言是没有意义的langid,但您很可能想要传达这样的信息:作品是法语和拉丁语双语的。

\documentclass[ngerman,british]{article}
\usepackage{babel}
\usepackage{csquotes}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@online{elk,
  author   = {Anne Elk},
  title    = {A Theory on Brontosauruses},
  url      = {http://www.example.edu/~elk/bronto.pdf},
  date     = {2016-01-01},
  language = {french and latin},
  langid   = {ngerman},
}
\end{filecontents}
\usepackage[backend=biber,style=authoryear,autolang=other]{biblatex}
\addbibresource{\jobname.bib}

\begin{document}
  \nocite{elk}
  \printbibliography
\end{document}

我们因此得到

埃尔克,安妮(2016 年)。关于雷龙的理论。法语和拉丁语。网址:http://www.example.edu/~elk/bronto.pdf

请注意,尽管该文件的主要语言是british,但该作品采用法语和拉丁语(“französisch und lateinisch”,language={french and latin})的信息却以德语印刷(langid={ngerman})。

相关内容