引文标注中的 *(nd)” - biblatex

引文标注中的 *(nd)” - biblatex

我的项目参考书目有问题。

我有以下序言:

\usepackage[backend=biber, style=authoryear,
  bibencoding=utf8]{biblatex}
\setlength\bibitemsep{0.5\baselineskip}
\addbibresource{Bibtex/mybib.bib}
\DeclareNameAlias{sortname}{last-first}
\DeclareNameAlias{default}{last-first}

但是,如果在 bib 条目中没有输入“年份”,则在引文标注中会产生 (Author(s), nd)。如果年份不可用,我该如何删除它。

答案1

\renewbibmacro*{cite}{%
  \iffieldundef{shorthand}
    {\ifnameundef{labelname}
       {\usebibmacro{cite:label}%
        \setunit{\printdelim{nonameyeardelim}}}
       {\printnames{labelname}%
        \setunit{\printdelim{nameyeardelim}}}%
     \iffieldequalstr{labelyear}{nodate}
       {\printfield{extradate}}
       {\usebibmacro{cite:labeldate+extradate}}}
    {\usebibmacro{cite:shorthand}}}

如果没有给出年份,则不会显示“nd”,如果引用是作者的唯一作品,则不会显示任何内容;如果该作者有多部作品,则不会显示一封信。如果您希望标题消除同一作者的几部作品的歧义,请将其替换\printfield{extradate}\iffieldundef{extradate}{}{\printfield[citetitle]{labeltitle}}

相关内容