如何删除 biblatex 中杂项类型的年份标签?

如何删除 biblatex 中杂项类型的年份标签?

如果年份标签未定义,我想删除它。我得到的结果是:

EC 编号 197/38 2012(第)

但它应该是:

欧盟编号 197/38 2012

在参考书目中我得到了这个,但对我来说这是正确的:

EC No 197/38 2012:废弃电气及电子设备(WEEE),2012 年 7 月 4 日,委员会法规。

\documentclass{book}
\usepackage[style=authoryear-icomp]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{biblio.bib}
@Misc{EC4July2012,
  Title                    = {Waste electrical and electronic equipment ({WEEE}), 4 July 2012},
  Author                   = {{EC No 197/38 2012}},
  Type                     = {Commission Regulation},
}
\end{filecontents}

\addbibresource{biblio.bib}

\nocite{*}

\begin{document}
Something \autocite{EC4July2012}.
\printbibliography

\end{document}

答案1

处理需要以非常特殊的方式引用的法律、法规等并不是一件容易的事。如果您有多个这样的文档,您可能需要考虑创建专用的条目类型以便于自定义(请参阅如何使用 BibLaTeX/Biber 创建全新的数据类型?如何做到这一点,以及如何实现管辖权 biblatex 条目类型?&如何引用宪法的某一部分寻求更周全的临时解决方案;以及引用法律文件的正确方法是什么?进行一般性讨论)。

对于您来说,有一个明显的临时解决方案,即抑制@miscs 的年份:

\renewbibmacro*{cite:labelyear+extrayear}{%
  \ifentrytype{misc}
    {}
    {\iffieldundef{labelyear}
      {}
      {\printtext[bibhyperref]{%
         \printfield{labelyear}
         \printfield{extrayear}}}}}

相关内容