
Я использую 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}
немного сбивает с толку, так как он использует style
дважды. Второй style
выигрывает, поэтому вы в конечном итоге загружаете style=apa,
. (Обратите внимание, что если вам нужен настоящий стиль APA, вам не следует добавлять такие параметры, как maxbibnames=5, minbibnames=5, giveninits=true,
, style=apa,
уже дает вам лучший стиль APA, доступный в biblatex
данный момент, дополнительные параметры могут фактически сделать вывод отклоненным от стиля APA.)
Стиль APA требует, чтобы определенные заголовки были отформатированы в "предложении регистра", что означает, что все буквы, кроме первой, преобразуются в строчные. Это то, что вы видите здесь.
Регистр предложений не имеет смысла для немецких названий, таких как пример записи, которую вы показываете, и фактически biblatex
не будет применять регистр предложений для немецких работ (по крайней мере, со стилями, которые используют рекомендуемый \MakeSentenceCase*
over \MakeSentenceCase
). Вам просто нужен способ указать biblatex
, что ваша работа на немецком языке. biblatex
'угадывает' язык следующим образом.
- Если
langid
поле присутствует, язык берется из этого поля. - Если
langid
отсутствует,biblatex
будет считаться, что запись написана на (текущем активном) языке документа.
В примере вы хотите добавить
langid = {ngerman},
к записи edenhofer_klimapolitik_2019
. Затем biblatex
знает, что ваша запись не должна получать предложение с регистром.
Если весь ваш документ на немецком языке, то достаточно будет загрузить babel
/ polyglossia
с соответствующими опциями и biblatex
он угадает правильный язык. Если вы планируете писать документы на разных языках, определенно рекомендуется использовать это langid
поле.
Если я правильно понимаю, Zotero обычно отображает своиязыкполе в langid
. Так что если вы поместите de
вязыкполе, вы должны получить желаемый результат.
Если вы не хотите, чтобы предложение было полностью закадровым, вы обычно можете отключить эту функцию с помощью
\DeclareFieldFormat{titlecase}{#1}
и в случае biblatex-apa
с
\DeclareFieldFormat{apacase}{#1}
Хотя вышеизложенное написано с style=apa,
учетом того, что вы могли бы воспроизвести аналогичный эффект с помощью style=trad-abbrv,
, поскольку biblatex-trad
стили также применяют регистр предложений. biblatex
Стандартные стили не применяют регистр предложений по умолчанию, так что вам не придется беспокоиться об этом.
решение2
В записях Zotero есть поле языка. Установка его на de (для deutsch) для немецких записей должна помочь. Официальный ответ Zotero на связанный вопрос.