如何修改 biblatex 作者年份文章条目,使其在日期后有句号,但在标题、期刊和页码之间有逗号

如何修改 biblatex 作者年份文章条目,使其在日期后有句号,但在标题、期刊和页码之间有逗号

在添加了来自其他答案的调整之后(谢谢!)我设法使authoryear文章条目变成这样:

Russell, Bertrand (1905). “论表示”。头脑, 第卷14,没有。 56,479–493。

但我还需要做一个调整:在文章标题和期刊名称之间加一个逗号,这样就可以了:

Russell, Bertrand (1905). “论表示”头脑, 第卷14,没有。 56,479–493。

我目前使用以下方式调用 biblatex:

\usepackage[style=authoryear,natbib=true]{biblatex}

在 biblatex.cfg 中我有:

\DeclareFieldFormat{postnote}{#1}%

\DeclareFieldFormat{pages}{#1}%

\renewbibmacro{in:}{%
  \ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}}

% Comma before and after journal volume
\renewbibmacro*{volume+number+eid}{%
  \setunit*{\addcomma\space}% NEW
  \printfield{volume}%
%  \setunit*{\adddot}% DELETED
  \setunit*{\addcomma\space}% NEW
  \printfield{number}%
  \setunit{\addcomma\space}%
  \printfield{eid}}

% Prefixes for journal volume and number
\DeclareFieldFormat[article]{volume}{\bibstring{volume}~#1}% volume of a journal
\DeclareFieldFormat[article]{number}{\bibstring{number}~#1}% number of a journal

答案1

由于您只希望将更改应用于@articles最佳操作方案,因此可能将逗号注入in:宏中,如下所示

\renewbibmacro{in:}{%
  \ifentrytype{article}
    {\setunit{\addcomma\space}}
    {\printtext{\bibstring{in}\intitlepunct}}}

这会在标点符号缓冲区中插入一个逗号并覆盖原来的句点(@article仅适用于 s)。

平均能量损失

\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{csquotes}
\usepackage[style=authoryear]{biblatex}

\addbibresource{biblatex-examples.bib}

\DeclareFieldFormat{postnote}{#1}%

\DeclareFieldFormat{pages}{#1}%

\renewbibmacro{in:}{%
  \ifentrytype{article}
    {\setunit{\addcomma\space}}
    {\printtext{\bibstring{in}\intitlepunct}}}


% Comma before and after journal volume
\renewbibmacro*{volume+number+eid}{%
  \setunit*{\addcomma\space}% NEW
  \printfield{volume}%
%  \setunit*{\adddot}% DELETED
  \setunit*{\addcomma\space}% NEW
  \printfield{number}%
  \setunit{\addcomma\space}%
  \printfield{eid}}

% Prefixes for journal volume and number
\DeclareFieldFormat[article]{volume}{\bibstring{volume}~#1}% volume of a journal
\DeclareFieldFormat[article]{number}{\bibstring{number}~#1}% number of a journal

\begin{document}

\cite{sigfridsson}

\printbibliography
\end{document}

在此处输入图片描述

相关内容