biblatex-apa 定制

biblatex-apa 定制

我在网上搜索了答案,但没找到。我正在尝试自定义biblatex-apa标准样式,以便获得以下内容。

使用时\parencite我想得到

(Schmidt 和 Wesson,2015 年)

不是

(Schmidt 和 Wesson,2015 年)

在参考书目中,我希望列出以下名字

Schmidt, S., Wesson, R.,2015。21 世纪早期的社会运动。

不是

Schmidt, S., & Wesson, R. (2015).21 世纪早期的社会运动。

相关代码总结如下main.tex

\documentclass[12pt,twoside]{report}
\usepackage[style=apa]{biblatex}
\addbibresource{references.bib}
\begin{document}
I refer to \parencite{schmidt2015early} to highlight my point.
\printbibliography
\end{document}

并且references.bib我有:

@article{schmidt2015early,
title={Early 21st century movements in society},
author={Schmidt, S and Wesson, R},
year={2015}
}

有人知道我怎样才能获得期望的结果吗?

答案1

biblatex-apa专门为尽可能紧密地实现 APA 引用和参考/参考书目样式的所有要求而编写biblatex。该样式不应定制,编写时也没有考虑可定制性。其唯一目的是生成符合 APA 的输出。

这并不意味着完全无法进行自定义,而是说即使是看似微不足道的事情也可能很棘手。如果您想编写自己的样式,我强烈建议您以标准样式之一为基础。标准样式应该是可自定义的,并且应该是进一步修改的基础。

无论如何,以下是您可以采取的措施biblatex-apa来获得您想要的东西。它并不像使用标准biblatex样式那样简单authoryear(想想nameyeardelimbiblatex-extbiblabeldate格式、不需要finalnamedelim:apa:family-given等等)。

\documentclass[12pt]{article}
\usepackage[style=apa]{biblatex}

\DeclareDelimFormat*{finalnamedelim}{%
  \ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
  \addspace\bibstring{and}\space}
\DeclareDelimAlias[bib]{finalnamedelim}{multinamedelim}
\DeclareDelimAlias[bib]{finalnamedelim:apa:family-given}{finalnamedelim}

\DeclareFieldFormat{apadate}{%
  \ifboolexpr{ test {\ifdatecirca} or test {\ifdateuncertain} }
    {\mkbibbrackets{#1}}
    {#1}}

\renewbibmacro*{author/editor}{%
  \ifthenelse{\ifnameundef{author}\AND\ifnameundef{groupauthor}}
    {\ifnameundef{editor}
      {\usebibmacro{title}%
        % need to clear all title fields so we don't get them again later
        \clearfield{title}%
       \clearfield{subtitle}%
       \clearfield{titleaddon}}
      {\usebibmacro{editorinauthpos}}}
    {\usebibmacro{author}}%
  \setunit{\addcomma\space}\newblock%
  \usebibmacro{labelyear+extradate}}

\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem \parencite{sigfridsson}

\printbibliography
\end{document}

Lorem(Sigfridsson 和 Ryde,1998 年)//Sigfridsson,E.,Ryde,U.,1998 年。从静电势和矩推导原子电荷的方法比较。计算化学杂志,19(4),377–395。https://doi.org/10.1002/(SICI) 1096-987X(199803)19:4⟨377::AID-JCC1⟩3.0.CO;2-P

相关内容