Biblatex:当有两位作者时,如何在 \textcite 中使用 & 符号

Biblatex:当有两位作者时,如何在 \textcite 中使用 & 符号

我的 MWE:

\documentclass[a4paper, 12pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{ellipsis}
\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage[style=apa, backend=biber, sortlocale=de]{biblatex}
\DeclareLanguageMapping{german}{german-apa}
\addbibresource{Literatur.bib}
\usepackage{filecontents}

\begin{filecontents}{literatur.bib}

@article{MartinsonBerridge2015,
  title = {Successful {{Aging}} and {{Its Discontents}}: {{A Systematic Review}} of the {{Social Gerontology Literature}}},
  shorttitle = {Successful {{Aging}} and {{Its Discontents}}},
  author = {Martinson, Marty and Berridge, Clara},
  date = {2015-02}
}

\end{filecontents}


\begin{document}

„hello“ \parencite[p. 12]{MartinsonBerridge2015}

\textcite{MartinsonBerridge2015} say,
\printbibliography
\end{document}

它吐出

“你好”(Martinson & Berridge,2015,第 12 页)

Martinson und Berridge (2015) 表示,

但我希望它吐出:

“你好”(Martinson & Berridge,2015,第 12 页)

Martinson & Berridge (2015) 表示,

所以我怎样才能\textcite将“&”改为“代替” undand德语)。

我首先对此感到困惑,因为在两种情况下都需要使用 & 符号来符合 APA 指南,我不知道为什么它甚至会在那里显示出不一致。

答案1

正如 Alan 在评论中所说,这是正确的 APA 风格(例如https://apastyle.apa.org/style-grammar-guidelines/citations/basic-principles/author-date)。如果您想更改 的输出\textcite,可以尝试以下方法

\documentclass[a4paper, 12pt]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage[ngerman]{babel}
\usepackage{csquotes}
\usepackage[style=apa, backend=biber]{biblatex}

\DeclareDelimAlias[textcite]{finalnamedelim}[parencite]{finalnamedelim}

\begin{filecontents}{\jobname.bib}
@article{MartinsonBerridge2015,
  title    = {Successful Aging and Its Discontents},
  subtitle = {A Systematic Review of the Social Gerontology Literature},
  author   = {Martinson, Marty and Berridge, Clara},
  date     = {2015-02},
  journal  = {Gerontologist},
  volume   = {55},
  pages    = {58-69},
  doi      = {10.1093/geront/gnu037},
}
\end{filecontents}
\addbibresource{\jobname.bib}


\begin{document}
\enquote{hello} \parencite[12]{MartinsonBerridge2015}

\textcite{MartinsonBerridge2015} say

\printbibliography
\end{document}

“你好” (Martinson & Berridge, 2015, S. 12) Martinson & Berridge (2015) 说

这是更改 的最短方法\textcite。一个概念上稍微更令人满意但更长的解决方案是将所有 cite 命令的输出更改为使用 & 符号,如下所示

\DeclareDelimFormat*{finalnamedelim}
  {\ifnum\value{liststop}>2 \finalandcomma\fi\addspace\&\space}
\DeclareDelimFormat[bib,biblist]{finalnamedelim}{%
  \ifthenelse{\value{listcount}>\maxprtauth}
    {}
    {\ifthenelse{\value{liststop}>2}
       {\finalandcomma\addspace\&\space}
       {\addspace\&\space}}}

反而。

相关内容