2010-05-04 48 views
26

我正在幫助一位同事提供他的博士論文,我們需要在每章末尾提供參考書目。LaTeX:每章參考書目

現在的問題是:沒有人有使用latex + bibtex這個案例的最小工作示例?我們使用

當前的文檔結構如下:

main.tex 
chap1.tex 
chap2.tex 
... 
chapn.tex 
biblio.bib 

main.tex包含包,文件聲明,宏和\include S代表每個章節。 biblio.bib只有 bibtex文件(我認爲更容易在一個地方所有的引用)。

我們搜索並嘗試了不同的乳膠包裝,閱讀並遵循其文檔。具體而言,bibitems和chapterbib。

bibitems成功生成bu*.aux文件,但對於它們中的每一個運行時中文提供,因爲存在在.aux文件中沒有\bibdata元件發生錯誤。

chapterbib也會生成.aux文件,但bibtex在.tex文件(每章一個)中使用多個\bibliography{file}引起的錯誤結束。

有些同事建議每個章節使用一個單獨的bibtex文件,將來在引用不同章節中的相同出版物時可能會引起維護問題。

如果可能,我們希望繼續擁有此文檔結構。所以,如果有人能夠解決這個問題,我們將會感激。

謝謝。


更新:MWE發現 感謝哈比的幫助,這裏是一個工作示例:

在文檔結構上面提到的:

% main.tex 
\documentclass{report} 
\usepackage{url} 
\usepackage{natbib} 
\usepackage{chapterbib} 

\begin{document} 

\include{chap1} 
\include{chap2} 
% other chapters ... 

\end{document} 

% chap1.tex 
\chapter{one chapter} 
text~\cite{paper1} 
text~\cite{paper2} 
% don't forget: 
\bibliographystyle{plainnat} 
\bibliography{biblio} 

% chap2.tex 
\chapter{another chapter} 
text~\cite{paper2, paper3} 
% don't forget, again: 
\bibliographystyle{plainnat} 
\bibliography{biblio} 

% biblio.bib 
@Article{paper1, 
    author =  {John Smith}, 
    title =  {A title}, 
    journal =  {A Journal}, 
    year =   {2010} 
} 
@Article{paper2, 
    author =  {John Doe}, 
    title =  {A paper}, 
    journal =  {Another journal}, 
    year =   {2009} 
} 
@Article{paper3, 
    author =  {Yuppie Networking}, 
    title =  {My paper}, 
    journal =  {The best journal}, 
    year =   {2000} 
} 

最後,生成文件:

#!/bin/bash 
latex main.tex 
for auxfile in chap*.aux 
do 
    bibtex `basename $auxfile .aux` 
done 
latex main.tex 
latex main.tex 
+0

如果你想創建一個工作的例子,我相信這個東西是內置於TeXnicCenter,一個窗戶的IDE TeX文件。 – 2010-05-04 12:46:39

+0

chapterbib的問題可以通過在main.tex中添加\參考書目來解決,難道不是嗎? – 2010-05-04 13:16:20

+2

我會發誓,我們已經做到了這一點......並在*多*搜索後,我發現http://stackoverflow.com/questions/2503555/using-latex-how-can-i-have-a-list-的引用-在最結束各截面。呼。對於沒有找到*重複的操作不感到羞恥。 – dmckee 2010-05-04 16:17:54

回答

11

前一段時間我已經快記下來chapterbib的一些注意事項。他們幫助你嗎?

http://wiki.davidhaberthuer.ch/latex#chapterbib

+0

是的,這幫助了我,儘管bibtex命令不應該使用'.aux'擴展名。我會更新這個問題以提供MWE。 – YuppieNetworking 2010-05-04 14:53:23

+0

感謝您的提醒。我已更新我的筆記:) – Habi 2010-05-05 09:21:21

+0

該鏈接不再有效 – Addman 2015-12-14 21:57:56