我有一个包含页面总数信息的 .bib 文件。如何在编译文档时不打印该信息?
这是此处问题的反面,我使用下面的例子
\documentclass{article}
\usepackage{biblatex}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{A01,
author = {Author, A.},
year = {2001},
title = {Alpha},
pagetotal = {999},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\nocite{*}
\begin{document}
\printbibliography
\end{document}
答案1
有两种简单的方法可以做到这一点:
您可以使用源映射动态地
pagetotal
从 bib 文件中的每个条目中删除该字段。我更喜欢这种方式,因为该字段永远不会达到biblatex
。\DeclareSourcemap{ \maps{ \map{ \step[fieldset=pagetotal, null] } } }
您可以清除每个参考书目项中的字段。这仍会使该字段在引文中可用(尽管也可以在那里清除它)。
\AtEveryBibitem{\clearfield{pagetotal}}
平均能量损失
您只需要其中一个选项。
\documentclass{article}
\usepackage{biblatex}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{A01,
author = {Author, A.},
year = {2001},
title = {Alpha},
pagetotal = {999},
}
\end{filecontents}
\addbibresource{\jobname.bib}
% Option 1: Delete pagetotal field from every entry in bib file
\DeclareSourcemap{
\maps{
\map{
\step[fieldset=pagetotal, null]
}
}
}
% Option 2: Clear pagetotal field at every bibliography item
\AtEveryBibitem{\clearfield{pagetotal}}
\nocite{*}
\begin{document}
\printbibliography
\end{document}