我有一个包含完整参考文献列表的 bib 文件,并使用 在三个不同的列表中显示它们bibentry
。
为了使其正常工作,我需要将参考书目文件添加到文档中,但这会自动在文档中插入“参考文献”部分。
有没有办法可以包含参考书目,但不明确显示?
MNWE:
\documentclass{article}
\usepackage{natbib}
\usepackage{bibentry}
\nobibliography*
\begin{filecontents}{bibliography.bib}
@article{bla,
title={blabla},
author={me}
}
@book{blabook,
title={blablabook},
author={me}
}
\end{filecontents}
\begin{document}
\section*{Some of my finest work}
\bibentry{bla}
\section*{A list of my books}
\bibentry{blabook}
\bibliographystyle{plainnat}
\bibliography{bibliography}
\end{document}
我不希望“参考文献”列表中的所有条目都重复,但我希望 bibentry 能够正常工作。我也不能在文档结构和单独的参考书目(如 chapterbib 或类似的东西)之间建立强耦合,我宁愿完全避免多个参考书目。
答案1
它几乎和变成一样\nobibliography*
简单\nobibliography{<file>}
:
\begin{filecontents*}{\jobname.bib}
@article{bla,
title={blabla},
author={me}
}
@book{blabook,
title={blablabook},
author={me}
}
\end{filecontents*}
\documentclass{article}
\usepackage{natbib}
\usepackage{bibentry}
\bibliographystyle{plainnat}
\begin{document}
\nobibliography{\jobname}
\section*{Some of my finest work}
\bibentry{bla}
\section*{A list of my books}
\bibentry{blabook}
\end{document}
我以前\jobname
不会破坏我的系统上的文件,参数应该\nobibliography
是你的文件之一.bib
。
请注意命令必须追赶\begin{document}
。
答案2
egreg 的解决方案给了我有关列表项的有趣错误,但以下方法对我有用:
\hphantom{\vphantom{
\begin{minipage}{\textwidth}
\bibliography{mybibfile.bib}
\end{minipage}
}}
请注意,嵌套hphantom
和vphantom
具有排版内容的效果,但会用 0x0 框替换它们。请参阅这个答案。
如果没有小页面,我仍然会收到有关列表项的错误。