在 authoryear-icomp 中将 \parencite 中的“and”替换为“&”(与号)

在 authoryear-icomp 中将 \parencite 中的“and”替换为“&”(与号)

我目前使用authoryear-icompbiblatex包的样式。默认情况下,引用如下:

  • 使用\citeauthor{Butler.2012}:Butler 和 Ekdahl
  • 使用\parencite{Butler.2012}:(Butler 和 Ekdahl,2012)
  • 参考书目中的著作有:Butler, Nancy Evelyn 和 Elizabeth Muriel Ekdahl (2012) [...]

是否可以调整样式以\parencite{Butler.2012}产生“(Butler & Ekdahl,2012)”,而其他引用样式仍然使用“and”而不是“&”符号?

我尝试重新定义and关键字:

\DefineBibliographyStrings{english}{
    and = {\&}            
}

但这当然会导致这样的情况全部“and” 被“&” 取代。

编辑:最小工作示例:

\documentclass{scrartcl}

\usepackage[backend=biber,%
style=authoryear-icomp,%
natbib=true,%
hyperref=true,%
useprefix=true,%
minnames=1,%
maxnames=2]{biblatex}

\DefineBibliographyStrings{english}{ %
    and = {\&}%
}

\addbibresource{testbib.bib}

\begin{document}
\citeauthor{Butler.2012}

\parencite[5]{Butler.2012}

\printbibliography
\end{document}

使用参考书目文件testbib.bib

@book{Butler.2012,
 author = {Butler, Nancy Evelyn and Ekdahl, Elizabeth Muriel},
 year = {2012},
 title = {{Aprenda Terena Vol. 1}},
 url = {https://www.sil.org/resources/archives/75521},
 urldate = {2022-02-24},
 edition = {Edição Online},
 publisher = {{Associação Internacional de Linguística – SIL Brasil} and {SIL International}},
 origdate = {1979},
 location = {Anápolis, GO},
 organization = {{Associação Internacional de Linguística – SIL Brasil}},
 editor = {Bridgeman, Loraine Irene}
}

答案1

使用 that finalnamedelim(在名称列表中最后两个名称之间插入的分隔符)是上下文敏感的,因此可以在\parencite其他地方获得和的不同定义。

\documentclass{scrartcl}

\usepackage[backend=biber,
  style=authoryear-icomp,
  natbib=true,
  useprefix=true,
  minnames=1,
  maxnames=2]{biblatex}

\DeclareDelimFormat[parencite]{finalnamedelim}{\addspace\&\space}

\addbibresource{biblatex-examples.bib}

\begin{document}
\citeauthor{sigfridsson}

\parencite[5]{sigfridsson}

\printbibliography
\end{document}

Sigfridsson 和 Ryde(Sigfridsson & Ryde, 1998, 第 5 页) Sigfridsson, Emma 和 Ulf Ryde (1998)。

相关内容