我的大学要求在最后一位作者的“&”符号前不要有逗号。
以下是完整引文:
Blinowski, G.、Anna, O. 和 Adam, P. (2022)。单片架构与微服务架构:性能和可扩展性评估。IEEE Access,10,20357–20374。https://doi.org/10.1109/ACCESS.2022.3152803
需要删除“Anna, O., (<-- this here)”和“& Adam, P.”之间的逗号。我该如何调整?
我的使用方式biblatex
如下:
\usepackage[style=apa, backend=biber]{biblatex}
任何帮助都将受到赞赏。
更新:
我可以去掉这个逗号。但是,我注意到在 Overleaf 中,这只适用于 TexLive 2021 或更低版本。如果我切换到 2022,会biblatex
自动在那里添加一个逗号。 \renewcommand*{\finalandcomma}{;}
不要替换逗号,而是在逗号后添加一个分号……所以这对我来说非常奇怪。有人知道这个“错误”吗?
\documentclass{article}
\usepackage[backend=biber,hyperref,style=apa,citestyle=apa,cites]{biblatex}
\begin{filecontents}{mybib.bib}
@book{ref,
author = {Michel Goossens and Frank Mittelbach and Alexander Samarin},
title = {The LaTeX Companion},
year = {1993},
publisher = {Addison-Wesley},
address = {Reading, Massachusetts}
}
\end{filecontents}
\addbibresource{mybib.bib}
\AtBeginDocument{% this is solving it
\renewcommand*{\finalandcomma}{}
}
\begin{document}
\begin{itemize}
\item[] A cite: \cite{ref}.
\item[] A parencite: \parencite{ref}.
\item[] A textcite: \textcite{ref}.
\end{itemize}
\printbibliography
\end{document}
答案1
显然,这个位置上的逗号在逻辑上不是\finalandcomma
。请参阅https://github.com/plk/biblatex-apa/issues/48和biblatex-apa 缺少逗号(以及那里的链接)。您可以在以下位置找到逗号的当前实现说明https://github.com/plk/biblatex-apa/pull/144(也可以看看https://github.com/plk/biblatex-apa/issues/191)。
为了去掉逗号,我们需要重新定义\apablx@ifrevnameappcomma
。(但之后我们仍然需要重置,\finalandcomma
所以它沒有觸發。)
\documentclass[american]{article}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber, style=apa]{biblatex}
\makeatletter
\renewcommand*{\apablx@ifrevnameappcomma}{\@secondoftwo}
\makeatother
\DefineBibliographyExtras{english}{%
\renewcommand*{\finalandcomma}{}%
}
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem \autocite{sigfridsson,companion,aksin,geer}
\printbibliography
\end{document}