Bibtex使用方法
BibTeX 是一个使用数据库的的方式来管理参考文献程序, 用于协调LaTeX的参考文献处理.
BibTeX 文件的后缀名为 .bib . 先来看一个例子:
@article{Gettys90,
author = {Jim Gettys and Phil Karlton and Scott McGregor},
title = {The {X} Window System, Version 11},
journal = {Software Practice and Experience},
volume = {20},
number = {S2},
year = {1990},
abstract = {A technical overview of the X11 functionality. This is an update of the X10 TOG paper by Scheifler \& Gettys.}
}
说明:
第一行@article 告诉 BibTeX 这是一个文章类型的参考文献. 还有其它格式, 例如 article, book, booklet, conference, inbook, incollection, inproceedings, manual, misc, mastersthesis, phdthesis, proceedings, techreport, unpublished 等等.
接下来的"Gettys90", 就是你在正文中引用这个条目的名称.
其它就是参考文献里面的具体内容啦.
在LaTeX中使用BibTeX
为了在 LaTeX 中使用BibTeX 数据库, 你必须先做下面三件事情:
1) 设置参考文献的类型 (bibliography style). 标准的为 plain:
\bibliographystyle{plain}
其它的类型包括unsrt – 基本上跟 plain 类型一样, 除了参考文献的条目的编号是按照引用的顺序, 而不是按照作者的字母顺序.
alpha – 类似于 plain 类型, 当参考文献的条目的编号基于作者名字和出版年份的顺序.
abbrv – 缩写格式 .
2) 标记引用 (Make citations). 当你在文档中想使用引用时, 插入 LaTeX命令
\cite{引用文章名称}
"引用文章名称" 就是前边定义@article后面的名称.
3) 告诉 LaTeX 生成参考文献列表 . 在 LaTeX 的结束前输入
\bibliography{bibfile}
这里bibfile 就是你的 BibTeX 数据库文件 bibfile.bib .
运行 BibTeX分为下面四步
1.用LaTeX编译你的 .tex 文件 , 这是生成一个 .aux 的文件, 这告诉BibTeX 将使用那些引用.
2.用BibTeX 编译 .bib 文件.
3.再次用LaTeX 编译你的 .tex 文件, 这个时候在文档中已经包含了参考文献, 但此时引用的编号可能不正确.
4.最后用 LaTeX 编译你的 .tex 文件, 如果一切顺利的话, 这是所有东西都已正常了.
例子: 将上面的 BibTeX 的的例子保存为 bibfile.bib.
\documentclass{article}
\begin{document}
We cite \cite{name1} and \cite{name2}.
\bibliography{bibfile}
\bibliographystyle{plain}
\end{document}
将上面的内容保存为bibtex-example.tex .
latex编译一次, bibtex 编译一次, 再用 latex编译两次就大功告成了!
获取bib文件
使用如下网址可以将springer文献格式变成bibtex:
http://www.it.usyd.edu.au/~niu/cgi-bin/springer.cgi
关于文献类型: (摘自TeXGuru的Latex2e用户手册)
@article条目为期刊或杂志上的一篇文章。
不可少域author, title, journal, year.
可省略域volume, number, pages, month, note.
@article{name,
author = {a and b},
title = {title},
journal = {journal name},
volume = {42},
number = {1},
year = {2008},
issn = {0110-0101},
pages = {1--8},
doi = {http://doi.xxx.org},
publisher = {ACM},
address = {New York, NY, USA},
};
@book条目为有确定出版社的书籍。
不可少域author或editor, title, publisher, year.
可省略域volume或number, series, address, edition, month, note.
@booklet条目为印制的有封皮的作品,但没有出版社或赞助机构的名称。
不可少域title.
可省略域author, howpublished, address, month, year, note.
@conference与下面的@inproceedings相同。
@inbook条目为一本书的一部分(章,节或某些页)。
不可少域author或editor, title, chapter和/或pages, publisher,year.
可省略域volume或number, series, type, address, edition, month,note.
@incollection条目为一本书中有自己题目的一部分。
不可少域author, title, booktitle, publisher, year.
可省略域editor, volume或number,series, type, chapter, pages,address, edition, month, note.
@inproceedings条目为会议论文集中的一篇文章。
不可少域author, title, booktitle, year.
可省略域editor, volume或number, series, pages, address, month,
organization, publisher, note.
@InProceedings{b07name,
author = {a and b},
title = {title},
booktitle = {Proceedings of the conference},
address = {Sydney, Australia},
month = Nov,
year = 2008,
pages = {1-2},
affiliation = {Uni-name, Country},
URL = {http://url/}
};
@manual条目为科技文档。
不可少域title.
可省略域author, organization, address, edition, month, year, note.
@mastersthesis条目为硕士论文。
不可少域author, title, school, year.
可省略域type, address, month, note.
@misc条目为不属于其它任何类型的作品。
不可少域没有。
可省略域author, title, howpublished, month, year, note.
@misc{name,
author = "a",
title = "title",
howpublished = "Website",
year = {2008},
note = {\url{https://www.mysite.org}}
};
@phdthesis条目为博士论文。
不可少域author, title, school, year.
可省略域type, address, month, note.
@proceedings条目为会议论文集。
不可少域title, year.
可省略域editor,volume或number, series, address, month,
organization, publisher, note.
@techreport条目为学校或其它研究机构印制的报告。
不可少域author, title, institution, year.
可省略域type, number, address, month, note.
@techreport{name,
author = {a and b}
title = {title},
institution = {institution rpt no.}
year = {2008}
};
@unpublished条目为有作者和标题的还未出版的作品。
不可少域author, title, note.
可省略域month, year.
在每项条目中还可以有可省略域key和crossref.
from: http://blog.sina.com.cn/s/blog_4aee288a0100dehr.html
Bibtex使用方法的更多相关文章
- BIBTeX制作参考文献
一篇关于Latex的参考文献的好文章!基本问题都能解答~ 文章来源:http://www.cnblogs.com/longdouhzt/archive/2012/06/21/2557965.html ...
- Note | LaTeX
目录 一.TeX家族 1. TeX - LaTeX 2. pdfTeX - pdfLaTeX 3. XeTeX - XeLaTeX 4. CTeX - MiKTeX - TeX Live 二.入门 1 ...
- Latex技巧:插入参考文献
LaTeX插入参考文献,可以使用BibTex,也可以不使用BibTex. 方法一:不使用BibTeX 先在文章文章末尾写好需要插入的参考文献,逐一写出,例如: \begin{thebibliograp ...
- 如何解决bib的一些问题
胡老师留的大作业要求综述,因而有很多文献引用.但是当使用bibtex的方法,特别是中文文献的引用会遇到一些问题. 网上相关的解答有: http://blog.sciencenet.cn/blog-10 ...
- javaSE27天复习总结
JAVA学习总结 2 第一天 2 1:计算机概述(了解) 2 (1)计算机 2 (2)计算机硬件 2 (3)计算机软件 2 (4)软件开发(理解) 2 (5) ...
- The usage method of reference with bibtex in Latex【latex中参考文献的使用方法】
如何在latex中以Bibtex文件方式引用参考文献? 以IEEEtran模板为例: 1.制作bibtex参考文献库.方法如下: ①建立myreference.bib文件: ②在Google scho ...
- 使用LaTeX按IEEE模板写论文时的参考文献管理方法(BibTeX使用小结)
之前用LaTeX写论文时,参考文献都是手动添加管理的,真是让人很抓狂.所以这次趁着假期,简单看了一下怎么使用BibTeX对参考文献进行管理,这里以IEEE的最新模板为例. 首先说明,我之前用的是MiK ...
- LaTeX简单使用方法
Content LaTeX的用途 LaTeX文件布局 LaTeX的文档格式 公式环境 图的排版 表格的排版 有序列表和无序列表 引用 伪代码 参考文献 LaTeX的用途 LaTeX是一种基于TeX的排 ...
- 制作BibTex文件
上一篇日志中讲到了在LaTeX中使用BibTex管理参考文献,这篇日志具体总结下如何制作BibTex文件. 制作BibTex文件,主要有以下几种方法: 手工制作: 直接从期刊数据库中下载: 借助Goo ...
随机推荐
- 【JAVA】ConcurrentHashMap
HashTable 写操作时候,Lock全表 源码: public synchronized V put(K key, V value) { // Make sure the value i ...
- C#图片处理---基础
简单的图片剪裁 using System; using System.Drawing; using System.Drawing.Drawing2D; using System.IO; namespa ...
- ios修改产品名
在创建项目的时候,会设置一个项目名,以后生成的APP名字也就是这个了,但由于某种原因,我想修改APP名字,也就是屏幕程序图标下面显示的那个,这该怎么办呢? 下面有三种方法都可以: 修改Product ...
- 集合 ArrayList 类
集合的基本信息: System.Collections 系统类中的收藏类,定义各种对象(如列表,队列,位数组,哈希表和字典)的集合 常用的集合为ArrayList类:特殊集合一般会用到Queue队 ...
- hdu-acm steps 命运
/*表示刚刚接触dp.这是我接触到的第3道dp题,刚开始以为是要用dfs+dp,后来栈溢出...仔细想想, 其实这道题和数塔差不多,只要每步都得到最优子结构,最后结果一定是最优的.题目的初始化要做好, ...
- iOS Core Animation
1.什么是Core Animation? 它是一套包含图形绘制,投影,动画的OC类集合.它就是一个framework.通过CoreAnimation提供的接口,你可以方便完成自己所想要的动画. 2.我 ...
- mysql入门教程
mysql相信大家都非常熟悉,but读音你们都读对了么?MySQL [maɪ ˌɛskjuːˈɛl] [maɪ ˈsiːkwəl] 念 买S奎儿 或 买吸扣 都可以,还有好多容易读错的名词,详情请见I ...
- SQL Server如何添加登录名
1.电脑上如果安装有SQL Server,我们在开始里面打开SQL Server Management Studio,或者以桌面的快捷方式等打开SQL Server. 2.首先以Windows身份验证 ...
- 栈的C++实现(指针)——创建-push-pop-top-清空栈-处理栈
今天学习了栈的C++实现,跟单链表很像: push相当于单链表在第一个位置插入元素: pop相当于单链表在第一个位置删除元素: 1.空栈检查 int stack::isEmpty(Stack *S) ...
- File类的createNewFile()与createTempFile()的区别
最近,在看代码时看到了一个方法, File.createTempFile() ,由此联想到File.createNewFile() 方法,一时间不知道两者到底有什么区别,感觉都是创建新文件嘛,后来查看 ...