如何在 biblatex-chicago 中打印完整的日期字段?

如何在 biblatex-chicago 中打印完整的日期字段?

我正在尝试让 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-MMYYYY也可以)。

因此2016a2016b和 都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打印的准确字段。不过排序可能不正确。

相关内容