清除 biblatex 2.7 中的字段

清除 biblatex 2.7 中的字段

我使用过该命令\AtEveryBibitem{\clearfield{month}}来阻止biblatex在参考书目中打印出版月份。至少在biblatex2.5 版和biber1.5 版之前,这个命令都运行良好:

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\AtEveryBibitem{\clearfield{month}}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@ARTICLE{lennon,
    AUTHOR = "John Lennon",
    TITLE = "I wrote great music",
    JOURNALTITLE = "Journal of Music",
    YEAR = "1978",
    MONTH = "10",
    PAGES = "15--27",
    VOLUME = "5"}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
\nocite{lennon}
\printbibliography
\end{document}

在此处输入图片描述

然而,在biblatex2.7a 版本和biber1.7 版本中,此命令显然不再有效:

在此处输入图片描述

在新版本中我需要做什么biblatex才能避免打印出版月份?

答案1

实际上,您应该清除的字段是labelmonth,而不是month。如果将命令更改为\clearfield{labelmonth},它就会起作用。要完全清除月份,您应该同时清除labelmonthmonth。这是因为 authoryear 样式使用labeldate=true,因此label*字段用作各种日期字段的来源。

labelmonthlabelday在 2.6 版中添加,以便进行镜像,labelyear这就是您看到与 2.5 版差异的原因

相关内容