Biblatex/Biber 的 ISO 日期格式?

Biblatex/Biber 的 ISO 日期格式?

我正在使用biblatex/biberbiblatex-chem包来列出小组会议的引文列表。这很有效,但我想在其中添加一篇最近的 C&EN 文章,因为它与我的小组工作非常相关。我可以使用 @online 条目执行此操作,但它使用 03/03/2015 (dd/mm/yyyy) 格式的日期urldate。这与文章日期格式 (MON. DD, YYYY) 不同。无论这是否适合格式(它适用于小组会议,而不是出版物),有没有办法将这两者都更改为 ISO 格式 (YYYY-MM-DD)?我试过了,\usepackage[yyyymmdd]{datetime}但没有成功。有这个答案,但它相当令人生畏,而且我怀疑只会改变发布日期,而不是访问日期。

梅威瑟:

\documentclass[letterpaper, 11pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\begin{filecontents}{test.bib}
@online{Bonding,
  author = {Stu Borman},
  title = {Spying On Bond Making In Solution},
  year = 2015,
  month = 2,
  day = 19,
  url = {http://cen.acs.org/articles/93/i8/Spying-Bond-Making-Solution.html},
  urldate = {2015-03-03},
  addendum= {All about dicyanoaurate, has links to papers.}
}
\end{filecontents}

\usepackage[backend=biber,style=chem-rsc,articletitle=true]{biblatex}
\bibliography{test.bib}

\begin{document}
Foo Bar Baz

\nocite{*}
\printbibliography[heading = none]
\end{document}

答案1

更新 #2 ( biblatex>= 3.10)

biblatex3.10中又有新约定。现已edtf被 取代iso

更新的 MWE:

\documentclass[letterpaper, 11pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\begin{filecontents}{test.bib}
@online{Bonding,
  author = {Stu Borman},
  title = {Spying On Bond Making In Solution},
  date = {2015-02-19},
  url = {http://cen.acs.org/articles/93/i8/Spying-Bond-Making-Solution.html},
  urldate = {2015-03-03},
  addendum= {All about dicyanoaurate, has links to papers.}
}
\end{filecontents}

\usepackage[backend=biber,style=chem-rsc,articletitle=true,urldate=iso,date=iso,seconds=true]{biblatex}
\addbibresource{test.bib}

\begin{document}
Foo Bar Baz

\nocite{*}
\printbibliography[heading = none]
\end{document} 

如果所有日期格式都必须采用 ISO 格式(不仅仅是dateurldate),您可以简单地使用alldates=iso而不是urldate=isodate=iso


更新 #1 ( biblatex>= 3.5)

biblatex3.5 开始,iso8601已弃用,应edtf与一起seconds=true使用。

使用daymonth作为year字段也已弃用,因此您应该使用字段

date = {2015-02-19},

在你的.bib文件中,而不是三个

year = 2015,
month = 02,
day = 19,

更新的 MWE:

\documentclass[letterpaper, 11pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\begin{filecontents}{test.bib}
@online{Bonding,
  author = {Stu Borman},
  title = {Spying On Bond Making In Solution},
  date = {2015-02-19},
  url = {http://cen.acs.org/articles/93/i8/Spying-Bond-Making-Solution.html},
  urldate = {2015-03-03},
  addendum= {All about dicyanoaurate, has links to papers.}
}
\end{filecontents}

\usepackage[backend=biber,style=chem-rsc,articletitle=true,urldate=edtf,date=edtf,seconds=true]{biblatex}
\addbibresource{test.bib}

\begin{document}
Foo Bar Baz

\nocite{*}
\printbibliography[heading = none]
\end{document} 

如果所有日期格式都必须采用 ISO 格式(不仅仅是dateurldate),您可以简单地使用alldates=edtf而不是urldate=edtfdate=edtf


原始答案

urldate=iso8601date=iso8601加载时添加选项biblatex(并记住month在需要时在字段中添加前导零)。

梅威瑟:

\documentclass[letterpaper, 11pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\begin{filecontents}{test.bib}
@online{Bonding,
  author = {Stu Borman},
  title = {Spying On Bond Making In Solution},
  year = 2015,
  month = 02,
  day = 19,
  url = {http://cen.acs.org/articles/93/i8/Spying-Bond-Making-Solution.html},
  urldate = {2015-03-03},
  addendum= {All about dicyanoaurate, has links to papers.}
}
\end{filecontents}

\usepackage[backend=biber,style=chem-rsc,articletitle=true,urldate=iso8601,date=iso8601]{biblatex}
\addbibresource{test.bib}

\begin{document}
Foo Bar Baz

\nocite{*}
\printbibliography[heading = none]
\end{document} 

在此处输入图片描述

顺便说一句:建议使用\addbibresource而不是。\bibliographybiblatex


如果所有日期格式都必须采用 ISO 格式(不仅仅是dateurldate),您可以简单地使用alldates=iso8601而不是urldate=iso8601date=iso8601

相关内容