我有两个 .bib 文件,每个文件都包含一些参考文献。
我想在同一文档中打印出这些参考文献,这些参考文献使用不同的章节标题,每个章节的参考文献编号从 1 开始。我的第一次尝试如下:这给出了正确的章节标题,但将 TEST1.bib 引用放在两者中,而没有 TEST2.bib 引用...我哪里做错了?我正在使用 TexMaker 进行编译。
\documentclass{article}
\usepackage{titlesec}
\usepackage{hyperref}
\usepackage{multibib}
\begin{document}
\nocite{*}
\begingroup
\section*{Section 1}
\renewcommand{\section}[2]{}
\bibliographystyle{plain}
\bibliography{TEST1}
\endgroup
\begingroup
\section*{Section 2}
\renewcommand{\section}[2]{}
\bibliographystyle{plain}
\bibliography{TEST2}
\endgroup
\end{document}
答案1
以下是具体操作方法:
\documentclass{article}
\usepackage[resetlabels]{multibib}
\newcites{journal,conference}{{Section--1},{Section--2}}
\begin{document}
\nocitejournal{*}
\bibliographystylejournal{plain}
\bibliographyjournal{xampl} %% use TEST1 here
%
\nociteconference{*}
\bibliographystyleconference{plain}
\bibliographyconference{doi} %% use TEST2 here
\end{document}
为了处理这个问题,应该执行以下命令:
pdflatex myfile %% assuming that the above code is saved as myfile.tex
bibtex journal
bibtex conference
pdflatex myfile
pdflatex myfile
有些编辑器有算法(如 winedt),可以自行完成所有这些操作。如果没有,则应从与文件相同的文件夹中执行上述命令myfile.tex
。
答案2
这实际上是一个非常简单的事情,biblatex
为开箱即用的\refsection
环境提供支持。
\usepackage[sorting=none, backend=biber]{biblatex}
\addbibresource{mybib.bib}
\section{Section One}
\begin{refsection} % open refsection environment
Some Text here \cite{Author1999}
% This here prints your bibliography
\printbibliography[heading=subbibliography]
\end{refsection}
\section{Next Section}
% repeat
如果您需要更多详细信息,请查看bibtex 文档,甚至还提供了示例。
答案3
您还可以使用bibunits
包来添加多个参考书目。
\usepackage{bibunits}
\begin{document}
\begin{bibunit}[plain]
Some Content here!
\putbib[mybib]
\end{bibunit}
\begin{bibunit}[plain]
Some Content here!
\putbib[mybib]
\end{bibunit}
但是,您需要使用bibtex
不同的参数来处理新的书目文件bu1.aux
、bu2.aux
等等。