我使用以下内容在每个部分末尾添加参考。编译我的 latex 文件后,没有出现任何内容。如何解决这个问题?
\section{Target}
\begin{bibunit}
My Text with a lot of citations, \cite{a}
\cite{b}
\putbib[PhD_thesis] %PhD_thesis.bib is my bib file
\end{bibunit}
答案1
我发现了一个博客,其中描述了一种基于 BIBER 的解决方案。
https://texblog.org/2012/10/22/multiple-bibliographies-with-biblatex/
以下是来源的副本:
\documentclass{article}
\usepackage[sorting=none, backend=biber]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{references.bib}
@book{knuth1986texbook,
keywords = {book},
title={The texbook},
author={Knuth, D.E. and Bibby, D.},
volume={1993},
year={1986},
publisher={Addison-Wesley}
}
@article{knuth1977fast,
keywords = {article},
title={Fast pattern matching in strings},
author={Knuth, D.E. and Morris Jr, J.H. and Pratt, V.R.},
journal={SIAM journal on computing},
volume={6},
number={2},
pages={323--350},
year={1977},
publisher={SIAM}
}
\end{filecontents}
\addbibresource{references.bib}
\begin{document}
\section{First}
\begin{refsection}
Citation section \thesection: \cite{knuth1986texbook}
\printbibliography[heading=subbibliography]
\end{refsection}
\section{Second}
\begin{refsection}
Citation section \thesection: \cite{knuth1977fast}
\printbibliography[heading=subbibliography]
\end{refsection}
\end{document}
答案2
以下是建议:
首先,在你的 tex 文件上运行 LaTeX。如果 tex 文件名为 ,
main.tex
则需要运行pdflatex main
(或
xelatex main
或lualatex main
,视情况而定)。您可以从命令行或从 tex-aware 编辑器中执行此操作。假设
bibunits
已加载包,LaTeX 将创建名为bu1.aux
、等的文件——tex 文件中每个环境一个文件。请注意,无论您的 bibtex 是否bu2.aux
bibunit
输入位于单个 .bib 文件中或包含在多个 .bib 文件中。其次,打开命令窗口并在每个
bu<x>
文件上运行 BibTeX:bibtex bu1 bibtex bu2
等等。不是在主 tex 文件上运行 BibTeX,即不要运行
bibtex main
。BibTeX 将创建名为
bu1.bbl
、bu2.bbl
等的文件以及相关日志文件(扩展名为blg
)。请注意您在 BibTeX 阶段可能收到的任何错误和/或警告消息。它们可能会提醒您 bib 条目或\cite
中的命令中的语法错误main.tex
。解决这些问题并按照上面概述的方式重新运行 LaTeX 和 BibTeX。最后,
pdflatex main
再运行两次以将材料合并到 bbl 文件中,以 (a) 格式化(和分组)参考文献和 (b) 引用标注的形式。