如何禁用 biblatex 中的简写?

如何禁用 biblatex 中的简写?

我的书目数据库包含某些项目的预设简写。但是,有时我必须使用数字引用样式,而预设的简写最终会覆盖数字标签。有没有办法在不修改书目数据库的情况下避免这种情况?

答案1

如果不想使用sourcemap定义,可以shorthand使用以下方法将(或其他字段) 的值置为无效:\DeclareFieldInputHandler

这里字段的值是从.bbl文件中读取的(因此在它被生成之后biber

\DeclareFieldInputHandler{shorthand}{\def\NewValue{}}

答案2

如果你只是想摆脱shorthand以确保标签只是一个普通的数字标签,你可以使用

\DeclareSourcemap{
  \maps[datatype=bibtex]{
    \map{
      \step[fieldset=shorthand, null]
    }
  }
}

这确保shorthand在标签生成之前 Biber 会忽略。(\AtEveryCitekey此处方法无效。)

平均能量损失

\documentclass{article}

\usepackage{biblatex}
\addbibresource{biblatex-examples.bib}

\DeclareSourcemap{
  \maps[datatype=bibtex]{
    \map{
      \step[fieldset=shorthand, null]
    }
  }
}

\begin{document}
\cite{kant:kpv}
\printbibliography
\end{document}

相关内容