这个帖子展示了如何通过对宏进行最小程度的修改来实现作者-年份-期刊引用样式\cite
。我改编了该帖子中的 MWE 以创建作者-期刊-年份样式;但是,仅当期刊名称不包含终止句号时,才会出现用于分隔期刊和年份的逗号。是否可以添加逗号而不管任何终止标点符号?
修改该\cite
宏,添加以下三行:
\setunit{\addcomma\space}%
\usebibmacro{journal}%
\setunit{\addcomma\space}%
完整的MWE如下:
\documentclass{beamer}
\usepackage[english]{babel}
\usepackage[style=authoryear]{biblatex}
\addbibresource{biblatex-examples.bib}
\usetheme{Madrid}
\renewbibmacro*{cite}{%
\iffieldundef{shorthand}
{\ifthenelse{\ifnameundef{labelname}\OR\iffieldundef{labelyear}}
{\usebibmacro{cite:label}%
\setunit{\addspace}}
{\printnames{labelname}%
\setunit{\nameyeardelim}}%
\setunit{\addcomma\space}%
\usebibmacro{journal}%
\setunit{\addcomma\space}%
\usebibmacro{cite:labelyear+extrayear}%
}
{\usebibmacro{cite:shorthand}}}
\begin{document}
\begin{frame}{Polaron Transformation}
\begin{itemize}
\item The original theory was developed by Munn-Silbey{\tiny \footcite{cicero}\footcite{aksin}\footcite{angenendt}} and further refined by Zhao et al. \footcite{bertram}\footcite{doody}
\end{itemize}
\end{frame}
\end{document}
可以看出,第 3 和第 5 个参考文献在期刊和年份之间有一个逗号,而第 2 和第 4 个则没有。例如,我希望第 2 个参考文献显示为“Aksin et al., J. Organomet. Chem., 2006。”。
另外,是否可以\cite
轻松修改宏以在年份周围放置括号?在这种情况下,第二个参考文献所需的格式将是“Aksin et al., J. Organomet. Chem. (2006)”。
答案1
在我的系统(biblatex
v3.14)上,我得到了预期的输出
看来你正在运行的是旧版本biblatex
,尚未添加\isdot
到journaltitle
格式,请参阅https://github.com/plk/biblatex/issues/851作为背景。
如果可能,请更新您的系统。如果无法更新,
\DeclareFieldFormat{journaltitle}{\mkbibemph{#1\isdot}}
应该足以作为一种解决方法。
请注意,我刚刚更新了我的答案将期刊名称添加到 biblatex 参考文献中以避免过时的 bibmacros。