
我是 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}
我們得到