我目前使用authoryear-icomp
该biblatex
包的样式。默认情况下,引用如下:
- 使用
\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}