我想打印 Biblatex仅限年份书目中出版物的编号。目前显示年、月、日。
“日期”选项(例如date=iso8601)无法做到这一点。
答案1
类似于在 biblatex 书目中禁用月份?您可以使用命令禁用month
和day
字段
\AtEveryBibitem{\clearfield{month}}
\AtEveryBibitem{\clearfield{day}}
有一瞬间,我突然想到,在urldate
声明 URL 已检查的字段中可能存在一个警告,但biblatex
即使这样也解决了这个问题。urldate
仍然会打印为完整日期。比较下面的 MWE 及其输出:
\begin{filecontents}{test.bib}
@BOOK{test,
author= {A. Author},
title = {A Title for a Book},
date = {2012-10-08}
},
@ONLINE{test2,
author = {A. Author},
title = {Some title},
url = {http://example.com},
urldate = {2013-01-08}
}
\end{filecontents}
\documentclass{article}
\usepackage{biblatex}
\addbibresource{test.bib}
\AtEveryBibitem{\clearfield{month}}
\AtEveryBibitem{\clearfield{day}}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
这是你打算做的吗?如果不是,请提供一个可以合作的 MWE。
答案2
这问题和答案链接到的@benedikt-bauer 已更新了一个新答案,其中包含更好的解决方案:
https://tex.stackexchange.com/a/346281/181287
包
biblatex
选项date=year
也应该可以工作。可能还需要
labeldate=year
;或者alldates=year
然后像urldate=short
这对于 biblatex 版本 2.8(2013)及更高版本有效。
更新: 为了清楚起见,以下是手册的相关(缩短)部分:
date=year,short,long,terse,comp,ymd,iso
default:comp
此选项控制打印日期规范的基本格式。
<datetype>date=year,short,long,terse,comp,ymd,iso
default:comp
<datetype>date
与日期选项类似,但控制数据模型中字段 的格式。
alldates=year,short,long,terse,comp,iso
将数据模型中所有日期的选项设置为相同的值。默认数据模型中的日期字段为date
、origdate
和。eventdate
urldate
完整手册包含更多详细信息和可能选项的解释,可在此处找到:http://mirrors.ctan.org/macros/latex/contrib/biblatex/doc/biblatex.pdf