使用Mendeley在LaTex中引用文獻

LaTex是工程領域常用來撰寫論文的排版軟體,較易處理特殊工程與數學符號的生成與排版,較詳細的使用方法可參考網路上的各種教學資源(如:「大家來學LaTex」、「An introduction to LaTeX」),而本文將針對運用Mendeley在LaTex文件中引用文獻的功能作介紹。Mendeley可將書目轉為LaTex引所需要的BibTex檔案(附檔名.bib),讓使用者在LaTex中直接引用,較EndNote方便許多。若您正打算用LaTex撰寫論文,不妨考慮以Mendeley作為您的書目管理工具。

本文測試的環境為:MikTex 2.9 + Texmaker 3.3.4 (按此教學文安裝),作業系統為Windows 7。

2012-06-11_134413

【用Mendeley生成BibTex檔案】

首先,用Mendeley生成一個BibTex檔案,裡面包含您想在LaTex中引用的文獻。請至Mendeley上方工具列的「Tools」→「Options」:

2012-06-11_105918

到「BibTex」頁籤中修改設定,勾選「Enable BibTex Syncing」,下方三個選項是您以什麼為單位產出Bibtex檔案:

  • whole library:只生成一個Bibtex檔案,將所有Library的書目包含其中。
  • per collection:每個資料夾生成各自的Bibtex檔案,只包含該資料夾內的書目。
  • per document:每筆書目各自生成一個Bibtex檔案,只包含該筆書目。

建議您選擇「whole library」或「per collection」,生成的檔案數才不會太多。另外「Path」為生成的BibTex檔案之儲存路徑,在此以「C:\Users\user\Documents」為例。修改完畢,點選「Apply」套用。

2012-06-11_110133

假設我選擇「per collection」選項,即每個資料夾都會在前述的「Path」路徑下,產生各自的BibTex檔(資料夾名稱.bib),裡面包含該資料夾中的書目。以本例而言,當我在Mendeley中建立了名為「bibtex」的資料夾,就會在「C:\Users\user\Documents」路徑下產生「bibtex.bib」檔案,裡面包含「bibtex」資料夾中的書目:

2012-06-11_112121

【在LaTex中引用文獻】

接下來,請先用您的LaTex軟體(本文以Texmaker為例)建立一份.tex文件(可參考這篇文章),並將此.tex儲存於「Path」中設定的路徑下。以本例而言,即儲存在「C:\Users\user\Documents」路徑下:

2012-06-11_113055

當您要在.tex文件中引用文獻時,先到Mendeley,對要引用的文獻按右鍵→「Copy LaTex Citation」:

2012-06-11_113344

回到該.tex文件中,在欲插入引用處,以鍵盤ctrl + V貼上。可在多處插入書目,如下:

2012-06-11_113805

接下來,在文章的「\end{document}」之前,加上以下兩段指令:

  • \bibliographystyle{引用格式}:用於指定引用格式,即引註、參考文獻的呈現方式。詳細清單可參考這裡,在此以最基本的「\bibliographystyle{plain}」為例。
  • \bibliography{BibTex檔案名稱}:選擇所要對應的BibTex檔案,也就是我們在前段生成的.bib檔,在本例中為「\bibliography{bibtex}」(輸入BibTex的檔案名稱即可,不用輸入附檔名.bib)。

2012-06-11_115151

接下來進行快速編譯。在Texmaker中,點選鍵盤「F1」可進行編譯。編譯結果如下:

2012-06-11_115520

引註處出現[?],也沒有參考文獻,這是正常的。該.tex檔案在經過編譯後,會在該檔案的儲存路徑中(本例為「C:\Users\user\Documents」),生成.aux檔案,請用Texmaker開啟該檔案:

2012-06-11_120239

開啟後的.aux檔案需進行引用的編譯,在Texmaker中,點選鍵盤「F11」可進行引用的編譯:

2012-06-11_131625

這個動作會產生對應的.bll檔。接著回到原本的.tex檔,連續執行兩次「F1」進行編譯。第一次編譯的結果仍會呈現問號,關閉後,再次執行「F1」,即可生成正確檔案如下:

2012-06-11_131923

再總結一次最後一段的編譯過程:

  1. .tex檔→F1編譯
  2. .aux檔→F11編譯
  3. .tex檔→F1編譯
  4. .tex檔→F1編譯

【參考資料】

By 張育銘 (Special thanks to:Jimmy Liu)

【延伸閱讀】