LaTex に参考文献をそのまま印刷するように指示する

LaTex に参考文献をそのまま印刷するように指示する

私は文献には Zotero を使用し、論文に含めるには次のパッケージを使用します。

\usepackage[
    backend=biber, natbib, style=trad-abbrv, maxbibnames=5, minbibnames=5, giveninits=true,
    style=apa
]{biblatex}
\addbibresource{references.bib}
\AtEveryBibitem{\clearfield{month}}
\AtEveryBibitem{\clearfield{day}}

これは通常、かなりうまく機能しますが、参考文献を印刷すると、大文字のタイトルの一部が小文字で書かれるだけです。Latex に Zotero と同じように印刷するように指示するにはどうすればよいでしょうか。

ここに画像の説明を入力してください

下の図では、「Edgerton (1997)」は問題ありませんが、大文字にする必要のあるドイツ語のタイトルのスペルが間違っていることに注意してください。

ここに画像の説明を入力してください

答え1

コード

\usepackage[
    backend=biber, natbib, style=trad-abbrv, maxbibnames=5, minbibnames=5, giveninits=true,
    style=apa
]{biblatex}

は を 2 回使用しているため、少し混乱しますstyle。2 番目がstyle優先されるため、 が読み込まれることになりますstyle=apa,。(実際の APA スタイルが必要な場合は、 などのオプションを追加しないでください。 はmaxbibnames=5, minbibnames=5, giveninits=true,、現時点style=apa,で で使用可能な最高の APA スタイルをすでに提供しますbiblatexが、追加のオプションによって、出力が APA スタイルから逸脱する可能性があります。)

APA スタイルでは、特定のタイトルを「文頭大文字」でフォーマットする必要があります。つまり、最初の文字を除くすべての文字を小文字に変換します。これがここで表示されているものです。

あなたが示した例のエントリのようなドイツ語のタイトルでは、文の大文字と小文字の区別は意味をなさず、実際、biblatexドイツ語の作品には文の大文字と小文字の区別は適用されません (少なくとも、 で推奨されて\MakeSentenceCase*いる を使用するスタイルでは)。必要なのは、自分の作品がドイツ語であることを\MakeSentenceCase示す方法だけです。は、次のように言語を「推測」します。biblatexbiblatex

  • フィールドが存在する場合langid、言語はそのフィールドから取得されます。
  • langidが存在しない場合は、biblatexエントリが(現在アクティブな)ドキュメント言語であると想定されます。

追加したい例では

langid = {ngerman},

エントリにedenhofer_klimapolitik_2019。すると、biblatexエントリが文の大文字と小文字を区別してはならないことがわかります。

ドキュメント全体がドイツ語である場合は、適切なオプションを使用してbabel/ をロードするだけで、正しい言語が推測されます。異なる言語でドキュメントを作成する予定がある場合は、このフィールドを使用することを強くお勧めします。polyglossiabiblatexlangid

私の理解が正しければ、Zoteroは通常、言語フィールドに入力しlangidます。de言語フィールドに入力すると、目的の出力が得られるはずです。

文全体を大文字にしたくない場合は、通常次のように無効にすることができます。

\DeclareFieldFormat{titlecase}{#1}

そしてbiblatex-apa

\DeclareFieldFormat{apacase}{#1}

上記は を念頭に置いて書かれていますが、 のスタイルでは文の大文字/小文字も適用されるため、style=apa,でも同様の効果を再現できます。標準スタイルでは、デフォルトでは文の大文字/小文字は適用されないため、その点について心配する必要はありません。style=trad-abbrv,biblatex-tradbiblatex

答え2

Zotero エントリには言語フィールドがあります。ドイツ語のエントリの場合は、これを de (deutsch) に設定すると役立つはずです。 関連する質問に対する Zotero の公式回答。

関連情報