我是 LaTeX 和 Stack Exchange 的新手,对于任何无意的不当行为我深表歉意,并且正在努力改变biblatex-philosophy
风格。
我的问题是,如何在作者之后和年份之前添加逗号?
答案这里似乎无法与 配合使用biblatex-philosophy
。我对于如何更改 的样式有了些许想法biblatex
,但目前我无法理解更改插件所带来的复杂性。
这是我需要的格式: *请注意,即使在作者姓名首字母后也要有逗号。
我大致有以下几点:
\documentclass[11pt, a4paper]{scrartcl}
% Bibliography preamble
\usepackage[giveninits=true, style=philosophy-modern]{biblatex}
\addbibresource{testbib.bib}
% Some tweaks I've already made
\DeclareFieldFormat{postnote}{#1}% no postnote prefix in "normal" citation commands
\DeclareFieldFormat{multipostnote}{#1}% no postnote prefix in "multicite" commands
\DeclareFieldFormat{pages}{#1}% no prefix for the `pages` field in the bibliography
\DeclareFieldFormat[article]{title}{#1} % Remove quotations from Article title
\setlength{\yeartitle}{5.4em} % Set greater spacing between the year and the title
\setlength{\postnamesep}{2.5ex plus 2pt minus 1pt}
\begin{document}
Sentence containing citation \parencite{pavese1965}.
\printbibliography
\end{document}
和.bib
文件:
@book{pavese1965,
Author = {Pavese, Cesare},
Publisher = {University of Michigan Press},
Title = {Dialogues with Leucò},
date = {1965},
Editor = {William Arrowsmith and D. S. Carne-Ross},
editortype = {translator},
Location = {Ann Arbor}}
输出:
正如您所见,仅需进行一些细微的更改(我将提出一个单独的问题,关于如何将“trans. by”更改为“trans。”)。
答案1
我们只需要\addcomma
在原有的定义上加上\postsep
\renewcommand{\postsep}{%
\addcomma
\null\par\nobreak\vskip\postnamesep%
\hskip-\bibhang\ignorespaces}
总共
\documentclass[11pt, a4paper]{scrartcl}
% Bibliography preamble
\usepackage[giveninits=true, style=philosophy-modern]{biblatex}
\addbibresource{biblatex-examples.bib}
% Some tweaks I've already made
\DeclareFieldFormat{postnote}{#1}% no postnote prefix in "normal" citation commands
\DeclareFieldFormat{multipostnote}{#1}% no postnote prefix in "multicite" commands
\DeclareFieldFormat{pages}{#1}% no prefix for the `pages` field in the bibliography
\DeclareFieldFormat[article]{title}{#1} % Remove quotations from Article title
\setlength{\yeartitle}{5.4em} % Set greater spacing between the year and the title
\setlength{\postnamesep}{2.5ex plus 2pt minus 1pt}
\renewcommand{\postsep}{%
\addcomma
\null\par\nobreak\vskip\postnamesep%
\hskip-\bibhang\ignorespaces}
\begin{document}
Sentence containing citation \parencite{sigfridsson,vizedom:related,worman}.
\printbibliography
\end{document}
我们得到