Latex 參考文獻引用


轉:http://blog.sina.com.cn/s/blog_4b164557010143tl.html

導入

\usepackage[option]{natbib}

具體的 option 有

  • round: (default) 使用圓括號
  • square: 使用方括號
  • curly: 使用花括號
  • angle: 使用尖括號
  • colon: (default) 用引號分隔多個引用
  • comma: 用逗號分隔多個引用
  • authoryear: (default) 使用作者--年引用形式
  • numbers: 使用編號引用形式
  • super: 使用 Nature 那樣的上標編號引用
  • sort: 多個引用按照首字母排序
  • sort&compress: 除排序外,多個引用可以合並 (如 3-6, 15)
  • longnamesfirst: 多個作者的文獻第一次被引用時列出所有作者,以后的引用可以縮寫為 et al.
  • sectionbib: 重定義了 \thebibliography 使用 \section* 而不是 \chapter*。這樣使用 chapterbib 宏包時,參考文獻名稱為 section 一級
  • nonamebreak: 在一行排版所有作者名字,這可能引起 overfull hbox 警告但是消除了跨行的 hyperref 問題
\citet{jon90} Jones et al. (1990)
\citet[chap. 2]{jon90} Jones et al. (1990, chap. 2)
\citep{jon90} (Jones et al., 1990)
\citep[chap. 2]{jon90} (Jones et al., 1990, chap. 2)
\citep[see][]{jon90} (see Jones et al., 1990)
\citep[see][chap. 2]{jon90} (see Jones et al., 1990, chap. 2)
\citet*{jon90} Jones, Baker, and Williams (1990)
\citep*{jon90} (Jones, Baker, and Williams, 1990)
\citealt{jon90} Jones et al. 1990
\citealt*{jon90} Jones, Baker, and Williams 1990
\citealp{jon90} Jones et al., 1990
\citealp*{jon90} Jones, Baker, and Williams, 1990
\citealp{jon90,jam91} Jones et al., 1990; James et al., 1991
\citealp[pg. 32]{jon90} Jones et al., 1990, pg. 32
\citeauthor{jon90} Jones et al.
\citeauthor*{jon90} Jones, Baker, and Williams
\citeyear{jon90} 1990
\citeyearpar{jon90} (1990)
\citetext{priv. comm.} (priv. comm.)

如果采用編號形式引用,上述作者--年會被替換為相應的文獻編號。

定制

標點

使用 \bibpunct 可以定制引用所使用的標點符號。這個命令有六個變量

  1. 開頭的括號,默認為 (
  2. 結束的括號,默認為 )
  3. 分隔多個引用的標點,默認為 ;
  4. n:編號;s:上標編號;其他字母為作者--年,默認也是作者--年
  5. 作者姓名和年之間的標點,默認無標點
  6. 同一作者多篇文獻合並引用時,年代之間或者編號之間的標點,默認為 ,

例子

\bibpunct{[}{]}{,}{a}{}{;}

產生

\citep{jon90,jon91,jam92} --> [Jones et al. 1990; 1991, James et al. 1992]

其他

  • \bibsection 控制參考文獻標題所使用的章節層次,一般是 \section* 或者 \chapter*
  • \bibpreamble 控制參考文獻標題和列表之間的文字
  • \bibfont 控制文獻列表的字體
  • \citenumfont 控制引用編號的字體,可以聲明為 \textit 之類
  • \bibnumfmt 控制文獻列表編號格式,它帶有一個變量,默認為 [#1]
  • \bibhang 控制文獻列表中每一條目第一行第一行之后的縮進,使用 \setlength 命令來改變
  • \bibsep 控制文獻列表中條目之間的空白,使用\setlength 命令來改變

Tips

chapterbib 宏包

與 natbib 兼容,用來產生分章節的文獻列表。這個宏包本質上使用 \include 命令來為每一章節添加文獻列表。每一章節的參考文獻都要單獨聲明 \bibliographystyle 以及 \bibliography 要導入的 bib 文件。

chapterbib 也有一個 sectionbib 的選項,但是會和 natbib 有沖突。要使其生效,只能對 natbib 使用 sectionbib 選項。

強制大寫

如果作者名字的前置詞為小寫,如 della Robbia,當位於句首時,需要其首字母大寫,這時候可以用上述命令的大寫形式,以\Citet 為例

\citet{dRob98} della Robbia (1998)
\Citet{dRob98} Della Robbia (1998)
\Citep{dRob98} (Della Robbia, 1998)
\Citealt{dRob98} Della Robbia 1998
\Citealp{dRob98} Della Robbia, 1998
\Citeauthor{dRob98} Della Robbia

\citet*,\citep,以及 \citep* 也有相應的大寫版本。

文獻別名

有時候定義別名來引用文獻比較方便。定義

\defcitealias{jon90}{Paper I}

然后就可以使用

\citetalias{jon90} --> Paper I
\citepalias{jon90} --> (Paper I)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM