我想知道为什么biblatex-apa
没有禁止urldate
打印。所以我四处寻找,找到了问题biblatex-apa 输出奇数日期,但发现这更多与日期的格式有关。
美国心理学协会风格手册指出
“除非源材料可能随时间而改变(例如 Wiki),否则不要包含检索日期”(美国心理学会,2010 年,第 192 页)
问题:我如何才能不打印检索日期(除非我引用的是 wiki)?
bibliography.bib
:
@article{myers,
author = {Scott W. Myers and Michael Ballweg and John L. Wedberg},
title = {Assessing the impact of {European} corn borer on corn grown for silage},
url = {http://www.uwex.edu/ces/crops/uwforage/ECB.htm},
urldate = {2013-07-09},
journaltitle = {Focus on Forage},
volume = {3},
issue = {4},
organization = {University of Wisconsin Wisconsin Team Forage},
keywords = {jared},
}
sample.tex
:
\documentclass[preview,border=5]{standalone}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage[style=apa, backend=biber]{biblatex}
\DeclareLanguageMapping{american}{american-apa}
\addbibresource{bibliography.bib}
\begin{document}
\nocite{*}
\printbibliography
\section*{Desired output:}
\begin{minipage}{\linewidth}
\hangindent=24pt
Myers, S. W., Ballweg, M., \& Wedberg, J. L. (n.d.).
Assessing the impact of European corn borer on corn grown for silage.
\emph{Focus on Forage, 3}.
Retrieved from \url{http://www.uwex.edu/ces/crops/uwforage/ECB.htm}
\end{minipage}
\end{document}
我知道我可以手动urldate
从文件中的条目中删除bib
,但我不想这样做,因为在使用其他引用样式时我使用的是同一个文件。
答案1
将此添加到您的序言中,以urldate
从字段url
看起来不像 wiki 的条目中删除字段。当然,您可以根据您的要求调整正则表达式:
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldsource=url,
notmatch=\regexp{wiki},
final=1]
\step[fieldset=urldate, null]
}
}
}
这urldate
将从 biblatex 动态看到的数据流中删除,因此您不需要触碰您的 .bib。