基于bibtex的文献管理(详细)

本文参考https://www.overleaf.com/learn/latex/Bibliography_management_with_bibtex

一、如何收集文献

正式论文

在dblp(CS专用的citation管理工具)上搜索文献(如果是比较古早的论文则在google直接搜索后转到jstor(Journal Storage,一个电子图书馆)的网址下载bibtex)后对应到其发表的的第一个正式conference(排除corr(computing research repository),这个是arxiv的数据库),然后下载bibtex后用bib管理。
建议用endnote/记事本预先整理一个搜索列表,然后最后写完了再把bibtex一个个插进去。倒也不麻烦,只是终端管理起来比较困难。主要是因为endnote自带的bibtex整理会出现数据丢失的情况,所以最好不要转格式。

有时候你只知道一个文献的文本引用格式(例如,[1] J. Smith, J. Doe and F. Bar (2001) A ground-breaking study. Journal of Amazing Research 5(11), pp. 29-34.),但是由于种种原因你找不到它的bib文件,请考虑手写一个bibtex引用或者使用一些小工具,如text2bibEdifix把它们转换成bibtex的格式

文献管理工具

类似endnote,常用的可视化管理.bib文件的工具有JabRefBibDe. 你可以考虑在本地使用它们管理bib条目后再把输出文件加入latex编译工具。特别的,如果你想创建一个“原项目”用于所有overleaf文章的写作(包括bibtex的管理),参考this help article ;如果你使用Mendeley和Zotero管理文献,还可以参考How to link your Overleaf account to Mendeley and Zotero.

非正式论文

在google scholar上随便弄一个看起来比较靠谱的cite,存储为endnote格式,用endnote直接做文献管理即可,其自带大部分常用的文献导出格式,如果没有的话用编辑器自行创建一个也很方便。

二、bibtex的常用功能

bibtex是一种无格式文献信息存储方式,目标是让大规模的文献引用管理变得方便快捷。这里我们和natbib搭配食用,让引用作者也能够一键完成。

头文件:

\usepackage{cite}\usepackage{natbib} \setcitestyle{square,numbers,sort, authoryear,citesep={;},aysep={,},yysep={;}}

显示:

在main文件中插入命令

\bibliographystyle{plain} 设置参考文献的显示格式,一共有八种,这里是plain
\bibliography{ref} 调用建立的引用文件'ref.bib',如果ref.bib文件在与main.tex文件不同的目录下,则必须使用完整地址引用ref.bib

的位置就是正文中显示参考文献的位置,一般插入在正文之后、附录之前。

引用:

主要是使用\cite, \citeauthor, \citeauthor*三个命令。citeauthor是引用作者的名字,在大于等于两个人的时候自动转为et. al.;citeauthor*则是引用全部作者的名字。

这些命令的进阶使用技巧参考Harvard发布的natbib详细指南

特性:
  1. bibtex文件的组织结构是:若干个entry(条目),每个entry由@{referencekey, info*}组成,其中info*是该文献的信息,以typename={xxx}的方式构成,中间用逗号隔开,例如:author={Dantzig}。typename是bibtex中内置的内容,有数十个关键字,如author, title, address等。
  2. 由于bibtex的目标是做文献的存储库,因此,即使ref.bib中有一百条文献,正文的引用列表里也只会显示被引用过的那些文献。利用这个特定,你可以搭建一个属于自己的文献库ref.bib,在所有latex文档中复用ref.bib,引用中只会出现那些正文引用到的文献。如果要关闭这个特性,在命令中插入\nocite{*}
  3. 实际显示的引用列表是按照\bibliorgraphystyle的设置排序的,例如,plain按照第一个作者的姓名的字典序进行排序
  4. bibtex文件的内部格式:最常用是两种:
    @article:期刊文章
    @inproceedings:会议文章
    @book:书籍
    @phdthesis, @masterthesis:毕业论文
    @inbook:作者固定的书籍中的某一章/节/部分
    @incollection:各章节由不同作者分别撰写的书籍中的某一章/节/部分
    @misc:其它
  5. bibtex没有注释功能,其注释并不是latex常用的%。在其中加入注释的思路是让代码无法被bibtex识别。例如,想要注释掉一个entry,就把最前面的"@"去掉;想要注释掉一个info,就把typename改成bibtex的关键字列表中没有的名称,如IGNOREauthor等等
常见问题:·
  1. 引用显示不出来:可能是ref.bib文件没有放到和main.tex同一目录下,导致\bibliography{ref}命令找不到目标文件
  2. 后面遇到新的问题继续更新
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值