使用 bibtex 管理参考文献
之所以使用 BibTeX 的理由很简单:
- 不用在参考文献的格式上殚精竭虑
- 你为某一篇论文所建立的参考文献,也可直接用于其它论文
- 非常高效,使用简单
BibTeX 的使用可分为以下步骤:
- 创建参考文献数据库:不要害怕,这里的数据库实际上就是一个扩展名为 .bib 的文本文件,在其中记录文献信息;
- 在 LaTeX 文稿中指定参考文献位置与样式;
- 使用 LaTeX 与 BibTeX 编译文稿。
下面是一份参考文献数据库 “蜀国文献.bib”,不过里面只有 3 篇文献:
-
@book{诸葛亮:Book,
-
author ="诸葛亮",
-
year ="2006",
-
title ="木牛流马制造工艺指南 [M]",
-
publisher ="蜀国科技出版社"
-
};
-
@article{诸葛亮:Article,
-
author ="诸葛亮",
-
title ="论六出祁山的必要性与可行性 [J]",
-
jounal ="蜀国军事期刊",
-
volume ="13",
-
number ="110"
-
year ="2007"
-
};
-
-
@article{刘备:摔小孩,
-
author ="刘备",
-
title ="论怎样教育小孩子 [J]",
-
jounal ="蜀国生活期刊",
-
volume ="18",
-
number ="120"
-
year ="2007"
-
};
参考文献数据库中,可以存储许多种文献类别,比如:article, book, booklet, conference, inbook, incollection, inproceedings, manual, misc, mastersthesis, phdthesis, proceedings, techreport, unpublished 等等。每种参考文献类别由多个域组成,有些是必须写得,没写会给出警告,而有些是可选。譬如 book 类别中,不可省略的域有 author, title, journal, year,可省略的域有 volume, number, pages, month, note。推荐做法是在参考文献数据库中尽可能提供文献的详细信息。
在 LaTeX 文稿中引用参考文献数据库中的文献条目很简单,对于上面的参考文献数据库示例,在 LaTeX 文稿 test.tex 中按下述方法引用:
\bibliographystyle 指令是用来指定参考文献排版样式的,LaTeX 已经预定了许多种参考文献排版样式,plain 是其中的一种。\bibliography 是用来引入参考文献数据库的,它会按照正文中所引用的参考文献,按次序排版于正文之后。这里要注意一个问题:即便你的参考文献数据库中有上千条文献,但正文中只引用了两篇,那么 \bibliographystyle 指令只会导入你所引用的文献,未引用的文献不会出现在论文中的。这种机制为我们提供了参考文献数据复用的功能。
正文中引用一篇参考文献,只需要指定参考文献数据库中相应参考文献条目的标识即可,譬如 \cite{诸葛亮:Book},通过标识 “诸葛亮:Book” 引用诸葛亮同学的专著《木牛流马制造工艺指南》。
对包含参考文献的 LaTeX 文稿采用如下方式编译:
-
$ xelatex test
-
$ bibtex test
-
$ xelatex test
-
$ xelatex test
至于为啥要重复使用 xelatex 对文稿进行编译,请看以下流程图:
本节示例最终排版效果,如下图所示。
2007年7月27日 00:22
让我想起了我写论文时候,改几十个参考文献的格式错误问题……
2007年8月17日 00:03
为什么,我做完以后,文献没有列出来,在引用文献的地方显示一个[?]
2007年8月17日 00:48
你用的是 xelatex 吗?
latex+CJK 或者 pdflatex+CJK,都不能处理中文的引用。
2007年8月28日 20:36 想不到xelatex是可以用中文引用的。我已经装了texlive2007了,看来是应该把文档转到xelatex中来了。
2007年8月28日 23:24
使用 xelatex 也是比较累的。我现在又改回 pdflatex + cjk 了。