我正在尝试让 biblatex-chicago 打印出一些非标准日期格式,因为我在将它们导出到 .bib 文件之前已经在 Zotero 中写好了它们:
1971(2006年)
2016 年
2016b
最初 Zotero 将第一个示例导出为 1971 年,并从后两个示例中删除了日期。因此,我手动在 .bib 文件中重新插入了上述日期,现在所有日期在 pdflatex 中都打印为“nd”
我怎样才能像写的那样简单地打印这些日期?我需要直接从 Zotero 导出格式化的参考书目以供网站和 LaTeX 使用,这就是我按原样写日期的原因。这里是 MWE:
\documentclass[a4paper,twoside,nobib]{tufte-book}
\hypersetup{colorlinks}
\usepackage[utf8]{inputenc}
\usepackage[normalem]{ulem}
\usepackage{soul}
\usepackage{amssymb}
%\usepackage{nopageno}
\usepackage{graphicx}
\graphicspath{ {images/} }
% Bibliography
\usepackage[authordate,backend=biber,doi=true,url=true,isbn=false,datelabel=comp]{biblatex-chicago}
\appto{\bibsetup}{\raggedright}
\addbibresource{test.bib}
\AtEveryBibitem{
\ifentrytype{online}
{}
{\clearfield{urlyear}\clearfield{urlmonth}\clearfield{urlday}}}
\DefineBibliographyStrings{english}{%
bibliography = {References}
}
\begin{document}
Some chapters.
\backmatter
\nocite{*}
\printbibliography[heading=bibintoc]
%\addcontentsline{toc}{chapter}{Bibliography}
\end{document}
和.bib 文件:
@incollection{cardew_treatise_1971,
location = {Essex},
title = {Treatise Handbook},
pages = {95--134},
booktitle = {Cornelius Cardew: A Reader},
publisher = {Copula},
author = {Cardew, Cornelius},
editor = {Prévost, Eddie},
date = {1971 (2006)},
keywords = {0, ostertag, treatise}
}
@article{wooley_anthony_????,
title = {Anthony Coleman and Survivors Breakfast Explore Treatise},
volume = {12},
url = {http://soundamerican.org/sa_archive/sa12/sa12-the-treatise-performances.html},
journaltitle = {Sound American},
author = {Wooley, Nate},
date = {2016a},
keywords = {treatise}
}
@article{wooley_mostly_????,
title = {Mostly Other People Do The Killing Are Detained By Treatise},
volume = {12},
url = {http://soundamerican.org/sa_archive/sa12/sa12-the-treatise-performances.html},
journaltitle = {Sound American},
author = {Wooley, Nate},
date = {2016b},
keywords = {barrett, treatise}
}
在此先感谢您的帮助!
答案1
date
中的字段 biblatex
应以YYYY-MM-DD
格式给出(当然您可以从右到左省略信息,因此YYYY-MM
和YYYY
也可以)。
因此2016a
,2016b
和 都1971 (2006)
无法正确解析。
对于前两个,你应该只给出date = {2016}
并让其biblatex
自动附加字母。如果你坚持两个条目的某种顺序与你从排序方案中获得的顺序相反,你可以使用sortyear = {2016-1}
和sortyear = {2016-2}
。
读起来1971 (2006)
更像您应该使用的origdate
。
@incollection{cardew_treatise_1971,
location = {Essex},
title = {Treatise Handbook},
pages = {95--134},
booktitle = {Cornelius Cardew: A Reader},
publisher = {Copula},
author = {Cardew, Cornelius},
editor = {Prévost, Eddie},
date = {2006},
origdate = {1971},
}
使用该选项,cmsdate=both
您将获得输出“(1971) 2006”。请注意,通常您阅读/引用的版本的年份应该是相关日期,而不是其他。
平均能量损失
\documentclass[a4paper,twoside,nobib]{tufte-book}
\usepackage[utf8]{inputenc}
\usepackage[authordate,backend=biber,doi=true,url=true,isbn=false,datelabel=comp,cmsdate=both]{biblatex-chicago}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@incollection{cardew_treatise_1971,
location = {Essex},
title = {Treatise Handbook},
pages = {95--134},
booktitle = {Cornelius Cardew: A Reader},
publisher = {Copula},
author = {Cardew, Cornelius},
editor = {Prévost, Eddie},
date = {2006},
origdate = {1971},
}
@article{wooley_anthony_2016,
title = {Anthony Coleman and Survivors Breakfast Explore Treatise},
volume = {12},
url = {http://soundamerican.org/sa_archive/sa12/sa12-the-treatise-performances.html},
journaltitle = {Sound American},
author = {Wooley, Nate},
date = {2016},
}
@article{wooley_mostly_2016,
title = {Mostly Other People Do The Killing Are Detained By Treatise},
volume = {12},
url = {http://soundamerican.org/sa_archive/sa12/sa12-the-treatise-performances.html},
journaltitle = {Sound American},
author = {Wooley, Nate},
date = {2016},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\AtEveryBibitem{%
\ifentrytype{online}
{}
{\clearfield{urlyear}\clearfield{urlmonth}\clearfield{urlday}}}
\DefineBibliographyStrings{english}{%
bibliography = {References}
}
\begin{document}
\nocite{*}
\printbibliography[heading=bibintoc]
\end{document}
或者,您可以使用字段year
来代替date
。虽然year
应该是整数/年份,biblatex
接受非整数输入并按原样打印。
和
@incollection{cardew_treatise_1971,
location = {Essex},
title = {Treatise Handbook},
pages = {95--134},
booktitle = {Cornelius Cardew: A Reader},
publisher = {Copula},
author = {Cardew, Cornelius},
editor = {Prévost, Eddie},
year = {1971 (2006)},
}
@article{wooley_anthony_2016,
title = {Anthony Coleman and Survivors Breakfast Explore Treatise},
volume = {12},
url = {http://soundamerican.org/sa_archive/sa12/sa12-the-treatise-performances.html},
journaltitle = {Sound American},
author = {Wooley, Nate},
year = {2016a},
}
@article{wooley_mostly_2016,
title = {Mostly Other People Do The Killing Are Detained By Treatise},
volume = {12},
url = {http://soundamerican.org/sa_archive/sa12/sa12-the-treatise-performances.html},
journaltitle = {Sound American},
author = {Wooley, Nate},
year = {2016b},
}
您将获得year
打印的准确字段。不过排序可能不正确。