這是我第一次發文。我一直在努力在主.tex
文件中包含的每一章之後包含參考文獻清單。儘管該.bbl
文件包含所有參考文獻,但所有引文均顯示為[?]
並且不會產生參考文獻清單。我跑了pdflatex
,bibtex
,pdflatex
,pdflatex
。我嘗試過使用一個.bib
文件並為每一章創建單獨的文件。我知道該.bib
文件很好,因為我最初在主文件中寫入了所有內容,但沒有放入所有章節並且編譯得很好。當我添加第二章時,我意識到我需要使用\include{chap}
來獲取單獨的清單。
這是我的主文件的範例:
\documentclass[12pt]{report}
\usepackage[top=1in, bottom=1.25in, left=1.25in, right=1.25in]{geometry}
\usepackage{titlesec}
\titleformat{\chapter}{\singlespacing\normalfont\LARGE\bfseries}{\thechapter.}{16pt}{\LARGE}
\titleformat{\section}{\singlespacing\normalfont\Large\bfseries}{\thesection}{12pt}{\Large}
\titleformat{\subsection}{\singlespacing\bfseries}{\thesubsection}{12pt}{\Large}
\titleformat{\subsubsection}{\singlespacing\bfseries}{\thesubsubsection}{12pt}{}
\titlespacing*{\chapter}{0pt}{-19pt}{0pt}
\usepackage[round]{natbib}
\usepackage{chapterbib}
\usepackage{setspace}
\usepackage{url}
\usepackage{textcomp}
\usepackage{amsmath}
\begin{document}
\tableofcontents
\include{chap1}
\include{chap2}
\end{document}
下面是一個章節的範例(其他類似):
\chapter{Surface Energy Balance}
\label{else}
\doublespacing
Text \citet{Paterson10}.
\singlespacing
\bibliographystyle{plainnat}
\bibliography{bib1}
以及.bib
條目:
@book{Paterson10,
Author = {K. M. Cuffey and W. S. B. Paterson},
Date-Added = {2015-06-01 15:34:50 +0000},
Date-Modified = {2015-06-01 15:35:53 +0000},
Publisher = {Academic Press},
Title = {Physics of {G}laciers},
Year = {2010}}
答案1
由於您使用的是 natbib,因此需要指定其sectionbib 選項:\usepackage[sectionbib]{natbib}
。在主文件上運行 pdflatex,這將為每個章節產生 aux 檔案。如 @moewe 所示,打開每個 aux 檔案並對每個檔案執行 Bibtex。這將為每個章節產生 bbl 檔案。然後重新運行主文件的 pdflatex 。透過建議的更改,您的程式碼對我有用。