我发现philosophy-modern.bbx
当使用翻译(或作者以外的任何人)代替作者时无法开始新行。
下面给出最小的例子。
\documentclass[12pt,a4paper]{article}
\usepackage{filecontents}
\begin{filecontents}{test2.bib}
@book{bodhi:numerical,
options = {usetranslator=true},
translator = {Bhikkhu Bodhi},
sortname = {Bodhi},
title = {The Numerical Discourses of the Buddha},
subtitle = {A Translation of the Anguttara Nikaya},
shorttitle = {Numerical},
year = 2012,
address = {Somerville, MA},
publisher = {Wisdom Publications}
}
\end{filecontents}
\usepackage[backend=biber, style=philosophy-modern, language=american,publocformat=loccolonpub]{biblatex}
\addbibresource{test2.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
答案1
此错误已在 中修复
biblatex-philosophy
。更新应该可以解决这个问题。
确实,philopshy-modern
缺少对bbx:translator
宏的重新定义。它对author
和有重新定义bbx:editor
。
我们需要
\renewbibmacro*{bbx:translator}[1]{%
\ifboolexpr{%
test \ifusetranslator
and
not test {\ifnameundef{translator}}
}%
{\usebibmacro{bbx:dashcheck}%
{}%
{\printnames{translator}%
\postsep%ADD
\usebibmacro{bbx:savehash}}}%
{\global\undef\bbx@lasthash%
\usebibmacro{labeltitle}}%
\usebibmacro{date+extrayear}%
\iffieldundef{label}%
{\usebibmacro{#1}%
\clearname{translator}%
\printtext{\addcomma\space}}
{}}%