使 origyear 在 biblatex 中工作

使 origyear 在 biblatex 中工作

我刚刚从 切换natbibbiblatex,因为我想向translator我的参考书目添加条目。我现在正试图开始origyear工作。之前我的条目是这样的:

@book{schaeffer1977traite,
    AUTHOR      = "Schaeffer, Pierre",
    TITLE       = {{Trait{\'e} des objets musicaux: essai interdisciplines}},
    YEAR        = {1977 (1966)},
    ADDRESS     = "Paris",
    PUBLISHER   = {{Editions du Seuil}}
}

但这很麻烦,而且会产生与右括号相关的问题。所以我尝试了

    YEAR        = {1977},
    ORIGYEAR    = {1966},

但原始年份并没有显示出来。我的导入如下所示:

\usepackage[natbib=true,style=verbose-ibid]{biblatex}

我尝试简单地创建一个biblatex.cfg文件本文(biblatex 说它的版本是 0.99d(TeX Live 2010)。

但这会产生错误,可能是因为我没有使用相同的参考书目样式:

LaTeX error: \abx@macro@cite:labelyear+extrayear undefined.

任何帮助完成这项工作的帮助都将不胜感激。

答案1

根据手册第 2.2.2 节biblatex,该origdate字段是“标准书目样式不使用”。在以下 MWE 中,我重新定义了datebibmacro(如样式系列所用),以便如果定义了此字段,verbose它还将打印字段的内容。请注意,更通用的解决方案(例如,也适用于样式系列的解决方案)将涉及其他修改。origdateauthoryear

\documentclass{article}

\usepackage[style=verbose]{biblatex}

\renewbibmacro*{date}{%
  \printdate
  \iffieldundef{origyear}{%
  }{%
    \setunit*{\addspace}%
    \printtext[parens]{\printorigdate}%
  }%
}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@book{schaeffer1977traite,
  author = "Schaeffer, Pierre",
  title = {Trait{\'e} des objets musicaux: essai interdisciplines},
  year = {1977},
  origyear = {1966},
  location = {Paris},
  publisher = {Editions du Seuil},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\nocite{*}

\begin{document}

\printbibliography

\end{document}

在此处输入图片描述

相关内容