搜档网
当前位置:搜档网 › 3 Latex中利用“.bib”进行参考文献管理

3 Latex中利用“.bib”进行参考文献管理

Latex中利用.bib进行参考文献管理
时间:2014-03-21 15:44:17

使用bibtex与jabref简化论文写作中的文献管理和引用


bibtex是latex(中文Ctex可在https://www.sodocs.net/doc/bc5177756.html,找到)的一个组件,用于文献引用。.bib是文献引用信息文件。

1. IEEEtran包(Package)的下载

打开WinEdt。选择Accessories->MiKTex->MiKTex Package Manager,打开Manager。在name中输入IEEEtran,单击filter,找到IEEEtran文件类。在过滤结果中出现ieeetran(Title栏中写的是Document class for IEEE Transcations),这个就是平常些IEEE期刊或者会议论文用到的package。右键该项,选择install。安装成功后再右键该项,properties中能找到安装在什么地方。实际上这个包安装了11个文件,我们这里主要关注三个文件(注意这些文件的安装路径可能根据Ctex版本有所不同,我这里安装路径为texmfbibtexbitIEEEtran,texmftexlatexIEEEtran, texmfdoclatexIEEEtran, texmftpmpackages, texmpsource)。


IEEEtran.cls: 该文件是模版类文件,论文格式在这里定义。
IEEEexample.bib: 这就是文献引用信息的一个例子,里面是需要引用的文献的引用信息。之后我们可以通过jabref自动生成这种类型的文件,在正文中简单的包括这个文件就能实现文章的引用,而不需要每次写完论文手动添加引用文献信息。
IEEEabrv.bib: 这里面定义了一些期刊会议的缩写,不用管。


2. bib文件的格式

我们看一下IEEEexample.bib这个样例文件中的内容。用写字板(当然ultraedit也可以)打开IEEEexample.bib,可以找到如下类似的语段。

@article{IEEEexample:articlelargepages,
author = "A. Castaldini and A. Cavallini and B. Fraboni
and P. Fernandez and J. Piqueras",
title = "Midgap Traps Related to Compensation Processes in
{CdTe} Alloys",
journal = "Phys. Rev. B.",
volume = "56",
number = "23",
year = "1997",
pages = "14897-14900"

};

这就是其中一篇文献的引文信息,article表示这是一篇期刊论文,在引用时会以期刊论文的格式进行排版。文章作者,标题,发表期刊,卷号,序号,年份,页码信息都能在这里找到。IEEEexample:articlelargepages是这篇文献的标示,在引用时就按这个确定。


3. 正文中bib格式的使用

一般情况下,原始的IEEEtran包中的.tex文件(bare_conference.tex)使用的引文方式手动添加的模式。通常格式为

begin{thebibliography}{99}
bibitem{IEEEhowto:kopka}
H.~Kopka and P.~W. Daly, emph{A Guide to LaTeX}, 3rd~ed.hskip 1em plus
0.5em minus 0.4emrelax Harlow, England: Addison-Wesley, 1999.
end{thebibliography}


对每篇引用文献都需要手动添加,这里引用了一篇文献“A Guide to LaTeX”。但是这种方式十分繁琐。使用.bib文件的方式可以大大

增加效率,因为通常情况下下载论文的地方都会提供引用信息的下载,我们只需要简单的下载并引用就可以了。

将上述部分注释掉,加入以下两行(有时这两行已经在.tex中,只是被注释掉了,可以试着往上找两行)

bibliographystyle{IEEEtran}
bibliography{IEEEabrv,IEEEexample}

第一行使用的是IEEEtran的引文方式,第二行就是把我们的bib文件包括进去了(还记得前面的IEEEabrv.bib和IEEEexample.bib?)。

怎么在文中进行引用呢?很简单,在需要引用的地方插入cite{IEEEexample:articleetal},这样就引用了IEEEexample.bib文件中的IEEEexample:articleetal这篇文献。.bib中的引用信息是这样的

@article{IEEEexample:articleetal,
author = "F. Delorme and others",
title = "Butt-jointed {DBR} Laser With 15 {nm} Tunability Grown

in Three {MOVPE} Steps",
journal = "Electron. Lett.",
volume = "31",
number = "15",
year = "1995",
pages = "1244-1245"

};

在编译(单击灰色的小熊图标)过后,生成的.dvi文件中就能看到在Reference有一篇文献,并在你文中插入的相应位置有个[1](当然也可以是其他数字)。


4. 如何生成.bib文件

讲到这里好像并没有觉得有多么方便,因为如果要自己写.bib文件也并不简单。然而幸运的是,大多数论文下载的网站会提供该篇论文的引用文件bibtex的下载,包括IEEE Xplorer和ACM的下载网站。更幸运的是,通过jabref这个程序,我们甚至不需要通过网页登录这些网站手动下载这些文件,而只需要知道论文的题目,就可以在jabref中搜索到相应的引文信息。



5. jabref的安装和使用

jabref是一个基于java的程序,它也是管理bibtex文件的有效工具。在https://www.sodocs.net/doc/bc5177756.html,/可以下载到jabref。如果没有安装java环境,它也会要求你在java主页上下载java并进行安装。

现在我们来利用jabref来管理一个文献库。打开jabref,单击File->New Database,保存(如命名为mybib.bib)之后我们获得了一个空的.bib文件。单击Web Search,选择search IEEEXplorer,会在界面左边弹出新的区域,这时候输入你想找的文章标题,就能获得这篇文章的引文信息(还可以包括abstract信息)了。但是jabref并不能进行论文pdf文件的下载,不过我们可以讲下载到的pdf与引文信息进行关联,方便管理和查找,这是简单的了,这里不再赘述。

好了,简单介绍了下如何利用bibtex来进行文献的引用,以及如何使用jabref来管理bibtex文件。

相关主题