![使用 biblatex 从零开始编写参考书目](https://linux22.com/image/381294/%E4%BD%BF%E7%94%A8%20biblatex%20%E4%BB%8E%E9%9B%B6%E5%BC%80%E5%A7%8B%E7%BC%96%E5%86%99%E5%8F%82%E8%80%83%E4%B9%A6%E7%9B%AE.png)
由于我有点怪异,我想以 [0](而不是 [1])开头列举我的参考书目中的条目。以下是我的文件中的相关摘录:
\documentclass[10pt,conference]{IEEEtran}
\usepackage[backend=biber,bibstyle=ieee,citestyle=numeric-comp,sortcites=true,maxnames=99]{biblatex}
\renewcommand*{\bibfont}{\footnotesize}
\renewcommand*{\biblabelsep}{\labelsep}
\addbibresource{whatever.bib}
....
\begin{document}
...
\printbibliography
...
\end{document}
一个办法更改书目起始编号是为 article.cls 明确构造的,但 ieeetran 没有。有什么帮助吗?
答案1
简单的解决方案只是重新定义字段格式以labelnumber
减去一。这样标签就从 0 开始。
\DeclareFieldFormat{labelnumber}{\the\numexpr#1-1\relax}
或者,您可以使用适当的接口来执行此操作。
biblatex
使用选项加载defernumbers
- 然后
\printbibliography
跟注resetnumbers=0
\documentclass[10pt,conference]{IEEEtran}
\usepackage[backend=biber, defernumbers,
bibstyle=ieee, citestyle=numeric-comp, maxnames=99]{biblatex}
\renewcommand*{\bibfont}{\footnotesize}
\renewcommand*{\biblabelsep}{\labelsep}
\addbibresource{biblatex-examples.bib}
\begin{document}
\cite{sigfridsson,worman,geer}
\printbibliography[resetnumbers=0]
\end{document}
文档警告resetnumbers
:
请谨慎使用此选项,因为
biblatex
如果手动重置标签,则无法保证全局唯一。
在这种情况下你应该没问题,特别是如果你最后只有一个参考书目。
如果您随意尝试,resetnumbers
您可能必须删除所有辅助文件并从头开始重新编译(如果您更改了值),因为旧设置仍保留在文件中.aux
。