LaTeX 技巧 955:給每章或每節加入獨立的參考文獻

有些用戶在使用 LaTeX 過程中,需要讓參考文獻放在每一個章節的后面,或者是各個章節引用的文獻放在所在章節的后面去。這里推薦使用的宏包是 chapterbib,其他還有 natbib 和 bibunits 等。可以試用 texdoc 命令獲取相應的幫助文檔,介紹的非常全面。

比如,加入chapterbib包(\usepackage{chapterbib})具體如何使用,我們選了一個例子:

下面有一個比較完整的例子:

\documentclass[12pt, twoside]{book}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{graphicx}
\usepackage[pagestyles]{titlesec}
\titleformat{\chapter}[display]{\normalfont\bfseries}{}{0pt}{\Huge}
%\newpagestyle{mystyle}
%{\sethead[\thepage][][\chaptertitle]{}{}{\thepage}}
%\pagestyle{mystyle}\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Don't use this                                               %
%\usepackage[semicolon,round,sort&compress,sectionbib]{natbib} %
%\usepackage[sectionbib]{chapterbib}                           %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Replacement                                                  %
\usepackage[semicolon,round,sort&compress,sectionbib]{natbib}  %
\usepackage{chapterbib}                                        %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{hyperref}
\usepackage{epstopdf}
\usepackage{rotating}
\usepackage{amsmath}
\usepackage{multirow}
\usepackage{booktabs}
\usepackage{pdflscape}
\usepackage{calc}
\usepackage{float}
\usepackage{indentfirst}
\usepackage{chronology}
\usepackage[toc,page]{appendix}
\usepackage{graphics}
\usepackage{color,soul}
\usepackage{tablefootnote}
\usepackage{epsfig}         
\usepackage{subfigure}
\usepackage{grffile}        
\usepackage{soul}
\usepackage{longtable}
\usepackage{lscape}
\usepackage{url}
\usepackage{epsfig} 
\graphicspath{ {images/} }
\usepackage{caption}
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm]{geometry} % this was incomplete
\usepackage{filecontents}
% Create bib file for Introduction chapter
\begin{filecontents*}{bib0.bib}
@article{acemoglu2000,
    title={The colonial origins of comparative development: An empirical investigation},
    author={Acemoglu, Daron and Johnson, Simon and Robinson, James A},
    year={2000},
    institution={National bureau of economic research}
}
@book{acemoglu2012,
    title={Why nations fail: the origins of power, prosperity and poverty},
    author={Acemoglu, Daron and Robinson, James A and Woren, Dan},
    volume={4},
    year={2012},
    publisher={SciELO Chile}
}
\end{filecontents*}
%
% Create bib file for chapter 1. Note that it is not a requirement to have different bib files for each chapter.
\begin{filecontents*}{bib1.bib}
@article{acemoglu2000,
    title={The colonial origins of comparative development: An empirical investigation},
    author={Acemoglu, Daron and Johnson, Simon and Robinson, James A},
    year={2000},
    institution={National bureau of economic research}
}
@article{ackerberg2006,
    title={Structural identification of production functions},
    author={Ackerberg, Daniel and Caves, Kevin and Frazer, Garth},
    year={2006}
}
%
%Create Introduction
\end{filecontents*}
\begin{filecontents*}{chap0.tex}
    \chapter{Introduction}
    This is Chapter ``Introduction'' from included file chap0.tex. \\
    This is a citation for \cite{acemoglu2000} from bib0. \\
    \citep{acemoglu2012} is a citation for the second reference. \\
    The Reference list for introductory chapter appears next. \\
    \bibliographystyle{apalike}
    \bibliography{bib0}
\end{filecontents*}
%
% Create Chapter 1
\begin{filecontents*}{chap1.tex}
    \chapter{chap1}
    This is Chapter 1 from included file chap1.tex. \\
    This is a citation for \cite{acemoglu2000} from bib1. \\
    \citep{ackerberg2006} is a citation for the second reference. \\
    The Reference list for the chapter appears next. \\
    \bibliographystyle{apalike}
    \bibliography{bib1}
\end{filecontents*}
\begin{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Suppress content not required for this solution %  
%\include{chapters/titlepage}                    %
%                                                %
%\mainmatter                                     %
%\tableofcontents                                %
%\listoffigures                                  %
%\listoftables                                   %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\include{chap0}
\include{chap1}
\end{document}

例子選自:https://tex.stackexchange.com/questions/229846/different-bibliographies-for-each-chapter-with-shared-references/300144#300144 

這里需要注意的是:編譯時,先對主文件進行 latex 編譯,再分別對各個章節文件進行 bibtex 編譯,再對主文件兩次latex。即:latex main.tex, bibtex chap0, bibtex chap1.tex, latex main.tex,.. 。這樣就可以正常顯示了。

chapterbib.png

選自:https://www.jianshu.com/p/220377fc8d0a  https://www.douban.com/note/331370169/ 

分享到:
未經允許不得轉載:LaTeX 技巧 955:給每章或每節加入獨立的參考文獻
已有 條意見

    最新文章

    加載中...
      本站提供專業LaTeX排版、咨詢、定制服務,請點擊下圖咨詢詳情


      全國首個精品的LaTeX視頻教程,大牛帶著你入門,讓LaTeX學習不再糾結,請點擊下圖咨詢詳情

      熱門評論

        聯系我們

        交流QQ群:91940767
        本站QQ號:343083553
        郵箱聯系[email protected]
        淘寶店鋪https://shop240512713.taobao.com/ 提供排版,模板定制,培訓,圖片處理,視頻教程等LaTeX服務。

        關注我們微信公眾號

        如果您投稿或者希望加入我們團隊,請發送您的簡歷到[email protected]
        飞艇人工免费计划下载