我使用的biblatex-bath
样式经过一些初步帮助修改后,效果很好。但是,我现在需要修改带有字段的作品的格式化书目输出translator
。.bib
条目为:
@book{luther_collected_2018,
title = {The Collected Works of Martin Luther: Theological Writings,
Sermons \& Hymns: The Ninety-five Theses, The Bondage of the Will,
The Catechism},
url = {www.scribd.com},
publisher = {e-artnow},
author = {Luther, M.},
translator = {Jacobs, C.M. and Cole, H. and Bente, F. and Dau, W.H.T.
and Reu, J.M. and Buchheim, C.A. and Grignon, R.S. and Lenker, J.N.
and Hotten, John and Steinhaeuser, A T W and Gillett, E H
and Bell, Henry and Massie, Richard and Reynolds, William M
and Fox, William Johnson},
date = {2018} }
其输出结果为:
Luther, M. (2018)。《马丁·路德文集:神学著作、布道和赞美诗:九十五条论纲、意志的束缚、教义问答》(C. Jacobs、H. Cole、F. Bente、W. Dau、J. Reu、C. Buchheim、R. Grignon、J. Lenker、J. Hotten、ATW Steinhaeuser、EH Gillett、H. Bell、R. Massie、WM Reynolds 和 WJ Fox 译)。e-artnow。[在线] 可在以下网址获取:www.scribd.com。
然而我需要的输出是:
Luther, M. (2018)。《马丁·路德文集:神学著作、布道和赞美诗:九十五条论纲、意志的束缚、教义问答》。译者:C. Jacobs、H. Cole、F. Bente、W. Dau、J. Reu、C. Buchheim、R. Grignon、J. Lenker、J. Hotten、ATW Steinhaeuser、EH Gillett、H. Bell、R. Massie、WM Reynolds 和 WJ Fox。e-artnow。[在线] 可从以下网址获取:www.scribd.com。
我的 MWE 是:
\documentclass[a4paper, british, 12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=bath, backend=biber]{biblatex}
\DeclareDelimFormat[bib]{nameyeardelim}{\addspace}
\DeclareFieldFormat{datelabel}{\mkbibparens{#1}}
\renewbibmacro*{isonline}{}
\DefineBibliographyStrings{english}{
urlfrom = {available at},
}
\DeclareFieldFormat{url}{%
\bibsentence\bibstring[\mkbibbrackets]{online}%
\addspace
\bibsentence\bibstring{urlfrom}%
\addcolon\space
\url{#1}}
\DeclareFieldFormat{urldate}{\mkbibbrackets{\bibstring{urlseen}\space#1}}
\bibliography{zotero.bib}
\begin{document}
\textcite{luther_collected_2018}
\printbibliography[title=Bibliography]
\end{document}
任何帮助都将不胜感激。谢谢
答案1
翻译器周围的括号是 的一个显式特性biblatex-bath
。在这方面,标准样式更接近您想要的输出。
我们可以改变这两个 bibmacros bytranslator
,bytranslator+others
以便它们的定义从bath.bbx
(第220-228行和第 247-257 页) 再次更接近于biblatex.def
(2645-2650和2666-2674)。
\documentclass[a4paper, british, 12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=bath, backend=biber]{biblatex}
\DeclareDelimFormat[bib]{nameyeardelim}{\addspace}
\DeclareFieldFormat{datelabel}{\mkbibparens{#1}}
\renewbibmacro*{isonline}{}
\DefineBibliographyStrings{english}{
urlfrom = {available at},
}
\DeclareFieldFormat{url}{%
\bibsentence\bibstring[\mkbibbrackets]{online}%
\addspace
\bibsentence\bibstring{urlfrom}%
\addcolon\space
\url{#1}}
\DeclareFieldFormat{urldate}{\mkbibbrackets{\bibstring{urlseen}\space#1}}
\renewbibmacro*{bytranslator}[1][bytranslator]{%
\ifnameundef{translator}
{}
{\bibstring{bytranslator}%
\setunit{\addspace}%
\printnames[#1]{translator}%
\clearname{translator}}}
\renewbibmacro*{bytranslator+others}[1][bytranslator]{%
\ifnameundef{translator}
{}
{\usebibmacro{bytranslator+othersstrg}%
\setunit{\addspace}%
\printnames[#1]{translator}%
\clearname{translator}%
\newunit}%
\usebibmacro{withothers}}
\begin{filecontents}{\jobname.bib}
@book{luther_collected_2018,
author = {Luther, M.},
title = {The Collected Works of {Martin Luther}: Theological Writings,
Sermons \& Hymns: The Ninety-five Theses, The Bondage of the Will,
The Catechism},
translator = {Jacobs, C.M. and Cole, H. and Bente, F. and Dau, W.H.T.
and Reu, J.M. and Buchheim, C.A. and Grignon, R.S. and Lenker, J.N.
and Hotten, John and Steinhaeuser, A T W and Gillett, E H
and Bell, Henry and Massie, Richard and Reynolds, William M
and Fox, William Johnson},
publisher = {e-artnow},
date = {2018},
url = {http://example.com/~joerg/collected.pdf},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}
\begin{document}
\textcite{luther_collected_2018,cicero,aristotle:physics}
\printbibliography
\end{document}
请注意,你可以用花括号将标题的某些部分括起来,以免发生大写更改。因此,你可以这样写
title = {The Collected Works of {Martin Luther}: Theological Writings,
Sermons \& Hymns: The Ninety-five Theses, The Bondage of the Will,
The Catechism},
确保马丁·路德不会以“马丁·路德”的名字出现。我不太确定标题中其他名字的大写状态(《九十五条论纲》、《意志的束缚》、《教义问答》),也许它们也需要保护。
如果要完全关闭句子大小写,请添加
\DeclareFieldFormat{sentencecase}{#1}
\DeclareFieldFormat{midsentencecase}{#1}
到您的文档中。
如果你想看
被某某人翻译
而不是缩写
译者
你有两个选择。
biblatex
使用选项加载abbreviate=false,
。这将导致 bibstring 使用长格式(例如“translated”而不是“trans。”),但可能会对您的参考书目产生比这一个短语更多的影响。仅重新定义相关的 bibstring
\makeatletter \DefineBibliographyStrings{english}{% bytranslator = {translated \lbx@lfromlang\ by}, } \makeatother
biblatex
也支持“组合角色”,因此你可能也需要更改它们。请参阅english.lbx
了解更多字符串和定义。请注意,中的字符串定义\DefineBibliographyStrings
只能有一种形式。