%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%81%8B%3F.png)
を使用していますBiblaTeX
が、質問があります。.bib
ファイル内のほぼすべての種類のソースで、エントリを使用できますlanguage
。
しかし、私がそこに入力したものはすべて、私の参考文献に文学的に表示されています。したがって、例えばISO-639-1または別のものも使用できないでしょうか?ISOコード?
例えば:
@online{SOTexBibLangIso,
author = {Stackoverflow Tex Community},
title = {Can I use a shortened "language" entry (language code) in my .bib file?},
url = {https://tex.stackexchange.com/questions/294703/can-i-use-a-shortened-language-entry-language-code-in-my-bib-file},
language = {en},
urldate = {2016-02-18},
}
答え1
biblatex
language
は、(1)と(2)の2つの言語分野を区別しているlangid
。biblatex
ドキュメンテーション、20ページ、
[この
language
フィールドには] 作品の言語が格納されます。言語は、文字どおりに指定することも、ローカリゼーション キーとして指定することもできます。ローカリゼーション キーを使用する場合は、プレフィックスをlang
省略できます。
25ページには
[
langid
] 書誌エントリの言語 ID。[...] 識別子は、babel
/polyglossia
パッケージに認識されている言語名である必要があります。この情報は、ハイフネーション パターンを切り替えたり、書誌内の文字列をローカライズしたりするために使用される場合があります。言語名は大文字と小文字が区別されることに注意してください。
したがって、language
フィールドは作品の言語として参考文献に印刷されるものであり、は の言語切り替え動作langid
のために内部的に使用されます(これを使用して参考文献のハイフネーションを切り替えることができるため、単語は適切にハイフネーションされます。また、言語に依存する文字列も変更される可能性があります。これはオプションで制御されます)。デフォルトでは、そこに指定された言語がドキュメントのメイン言語と一致する場合、情報は印刷されないことに注意してください。これはオプションとで制御されます。biblatex
autolang
language
clearlang
\DeclareRedundantLanguages
例えば、
@online{elk,
author = {Anne Elk},
title = {Über die Anatomie der Donnerechse},
url = {http://www.example.edu/~elk/bronto.pdf},
date = {2016-01-01},
language = {german},
langid = {ngerman},
}
ドイツ語のテキストの場合は (language
はgerman
、langgerman
も OK です)、新しい正書法の規則に従います (langid
はngerman
)。
フィールドは/langid
に認識されている言語識別子でのみ機能しますが、上記の PLK のコメントによると、Biber は BCP47 言語コードも処理でき、それぞれの対応するコードにマッピングできます。実際、Biber は などの意味のない入力を問題なく受け入れますが、以外のものを使用すると または で問題が発生し、言語パッケージは不明な言語 を読み込もうとします。babel
polyglossia
langid = {flobbel}
babel
polyglossia
autolang=none
flobbel
フィールドlanguage
は任意の入力を受け入れますが、 がbiblatex
認識している言語識別子は異なる方法で処理され、翻訳されます。もう少し正確に言うと、これは現在使用されている.lbx
ファイルで として定義されている言語に対して機能し、またはlang<language>
として指定できます。 bibstring が で定義されていない場合、フィールドの内容はそのまま印刷されます。<language>
lang<language>
.lbx
language
サポートされている言語はenglish.lbx
ここで確認できます、オランダ語のリストはこちら)。言語識別子は接頭辞を付けてもlang
付けなくてlanggreek
もgreek
同じ結果が得られます。
language = {english},
オランダ語の文書では、出力は「Engels」となり、文書の言語が英語の場合は「English」となります。
文字列はen
認識された言語識別子のリストにないため、そのまま印刷されます。
langid
ソースマップを使用して、Biberがフィールドで行っていることをエミュレートできます。
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=language,
match=\regexp{\Aen\Z},
replace=\regexp{english}]
\step[fieldsource=language,
match=\regexp{\Ade\Z},
replace=\regexp{german}]
}
}
}