当删除或注释掉引文时,参考书目不会删除参考书目中现已删除/不可用的引文参考。
我做错了什么吗?这是错误吗?还是其他原因?
\documentclass{article}
\usepackage{biblatex}
\addbibresource{sources.bib}
\begin{document}
Here comes a citation \cite{merriam2022}. % comment this line out after successful compilation
Here comes a citation \cite{wikipedia2022}.
Here comes no citation.
\printbibliography
\end{document}
sources.bib
包含以下内容的参考书目文件
@online{merriam2022,
title={Merriam-Webster},
publisher={Merriam-Webster},
year={2022},
urldate={2022-07-06},
url={https://www.merriam-webster.com/dictionary/fun},
}
@online{wikipedia2022,
title={Wikipedia},
year={2022},
urldate={2022-07-06},
url={https://en.wikipedia.org/wiki/Free_software},
}
答案1
如果您仅重新运行 (Lua)LaTeX,则会出现这种情况。
您还需要重新运行 Biber,以便最终至少运行
- (Lua)LaTeX
- 比贝尔
- (Lua)LaTeX
在您的文档上。添加和删除(甚至重新排序)引文时始终需要这样做。当您更改某些参考书目选项/设置时(尤其是当它们影响排序时),您可能还必须重新运行此循环。
在这种情况下,文件中应该有一个关于此问题的警告,.log
如下所示
LaTeX Warning: There were undefined references.
Package biblatex Warning: Please (re)run Biber on the file:
(biblatex) <filename>
(biblatex) and rerun LaTeX afterwards.
因为biblatex
可以检测您是否添加/删除了引文。但不能保证您在所有情况下都会收到这样的警告,尤其是当由于更改了参考书目设置而需要重新运行时。这就是为什么定期在您的文档上重新运行 Biber 总是一个好主意。以及为什么您应该在准备文档的最终版本时始终重新运行 Biber。
您需要重新运行 Biber,因为最终出现在参考书目列表中的条目主要由 Biber 控制,而 LaTeX 方面只是次要控制biblatex
。您可以在使用问号或粗体引用关键字代替引用编号(BibTeX 和 Biber 的作用非常类似,尽管它们可以做略有不同的事情)。