使用LaTeX按IEEE模板写论文时的参考文献管理方法(BibTeX使用小结)
之前用LaTeX写论文时,参考文献都是手动添加管理的,真是让人很抓狂。所以这次趁着假期,简单看了一下怎么使用BibTeX对参考文献进行管理,这里以IEEE的最新模板为例。
首先说明,我之前用的是MiKTeX和TeXnicCenter,用这两个组合,按照网上教程搞了半天,发现TeXnicCenter中如果选择BibTeX编译就会报错:“bibtex.exe: GUI framework cannot be initialized.” 实在不知道怎么回事,就将LaTeX安装包换成TeX Live(需要将之前安装的MikTex卸载)。说实话TeX Live也实在不智能,其ISO文件可以在CTEX的Mirror下载到:http://ftp.ctex.org/mirrors/CTAN/systems/texlive/Images/,但是郁闷的是把iso下载下来运行时,会报“perl.exe 已停止工作”,最后还是按照这里:http://www.tug.org/texlive/acquire-netinstall.html的在线安装包安装好的(其间也是断断续续弄了好几遍)。按照微博上大家的推荐,这次改用了Texmaker这个工具,发现安装很简单,可以自动识别大部分TeX Live的组件。
下面以IEEE的最新模板为例,说说怎么样生成符合其格式要求的参考文献:
在这个页面:http://www.ieee.org/conferences_events/conferences/publishing/templates.html下载Windows版本的两个压缩包。(其实这些模板最官方的版本还是在CTAN上,但是前面这个页面是压缩包,下载起来更方便些)
IEEEtranBST2.zip这个压缩包是和BibTeX相关的,具体我也不解释了,讲讲需要做的事情:将这个压缩包中的IEEEtran.bst和IEEEtranS.bst拷贝至下面的目录:
%TeX Live安装目录%\texmf-local\bibtex\bst (这里需要注意的是,TeX Live大部分文件都被推荐安装到如2012这样年份代表的目录下,但是texmf-local这个目录是一些和用户设置相关的内容,这样可以保证重装或完全升级TeX Live后保留所有的用户数据),第二个文件中的S表示参考文献按照作者名等排序(大部分情况不用,因为IEEE很多要求是无序参考文献,就是说按照参考文献在文中出现的顺序编号)
其次,将上面压缩包中的IEEEabrv.bib和IEEEfull.bib拷贝至下面的目录:
%TeX Live安装目录%\texmf-local\bibtex\bib。
我们以windows_latex_template.zip压缩包中的bare_conf.tex为例,在这个文件的\end{document} 之前添加这两条语句:
|
1
2
|
\bibliographystyle{IEEEtran}\bibliography{IEEEabrv,IEEEexample} |
这里其实就告诉编译器,我们将用到IEEEabrv.bib和IEEEexample.bib这两个文件。前者我们已经设置好了。后者就拷贝到和bare_conf.tex在同一文件夹中。那么我们在正文中加入:
|
1
|
\cite{IEEEexample:articleetal} |
其实就表示在上面两个文件中查找ID为IEEEexample:articleetal的BibTeX记录,我们看看这个记录在IEEEexample.bib中长什么样子:
|
1
2
3
4
5
6
7
8
9
10
|
@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"} |
其实具体含义一看便知,接下来我们需要对上面的tex文件编译。首先在Texmaker中选择XeLaTeX,编译生成aux文件(此时一般会报错,不用管),再用BibTeX编译一遍,生成bbl文件,再重新用XeLaTeX编译两遍,两次生成dvi文件(因为它第一遍需要解决参考文献的问题)。然后我们再用PDF查看,就可以看到在文中生成正确的参考文献引用了。
下面还有一个主要问题需要解决,如果同时引用好几篇,那么这是在文中是分开的,如[2], [3]这个样子,一种最简单的解决方式是在
|
1
|
\documentclass[conference]{IEEEtran} |
的后面加入:
|
1
|
\usepackage[numbers,sort&compress]{natbib} |
在引用时,需要把多篇引用写在同一个cite中,如:
|
1
|
\cite{ZongweiGligor-335,WheeldonCounsell-331} |
这样就可以实现诸如[2, 3]这样的形式了。
最后一个需要解决的问题,怎样整理正确的BibTeX应用,很多教程中提到了JabRef,但是我安装之后发现很郁闷,我点击其Search——web search时,这个软件没有一点反应。我又试了试NoteExpress,EndNote等软件,都存在一些问题:用NoteExpress(2.7.1版本)导出的bib文件有问题,EndNote(X4版本)不能在线搜索IEEE数据库。所以又对比了一下通过IEEE、ACM和Google Scholar以及CiteULike导出的BibTeX文件,严格意义上来说,生成的BibTeX文件都不符合要求。例如,在刚才IEEEexample.bib文件中给出的会议论文的booktitle字段应该长这个样子:
|
1
2
|
booktitle = "Proc. {IEEE} International Workshop on Microelectromechanical Systems ({MEMS}'97)" |
但是所有的自动生成BibTeX记录都不是缩写的Proc而是如Proceedings of the 20XX IEEE Symposium on,或者干脆没有Proc或Proceedings of。个人认为,其实并不一定要完全符合要求,对比了很多TOP的会议,很多论文的参考文献格式也是大致符合,只要保证在一篇文章中风格一致即可。整体来说,IEEE和Google Scholar生成的文件比较准确。如果实在要求严格,可以在最后出版时再手动调整。
使用LaTeX按IEEE模板写论文时的参考文献管理方法(BibTeX使用小结)的更多相关文章
- 用户Word写毕业论文时的文献引用方法
经过网上搜索和自己实践,找到了一种不用第三方工具的文献管理方法 通过将文献定义的成书签的形式,插入到文献中,当文献编号发生变化时,只需进行更新域操作,就可实现文献编号的理新,下面介绍具体方法: 1.首 ...
- 写论文时,使用word的一些技巧
目录 怎么设置文章里所有英文的字体.所有中文的字体样式 删除文章中的所有或者部分超链接 设置忽略英文的拼写检查 怎么设置文章里所有英文字体.所有中文字体样式 用鼠标选中需要更改的文章内容,如果是全文, ...
- 写论文与PPT汇报时matlab图片的背景透明处理
不少同学在使用Word写论文时,将matlab生成的图保存为jpg格式,然后粘贴到文档中.word背景为纯白色,jpg图的缺点没有显示,实际上会存在很大白边,以及放大后不清晰的问题,很影响PPT展示和 ...
- LaTeX IEEE模板
因为课程作业的要求需要完成一篇IEEE格式的论文,所以选择入门LaTeX.但是期间遇到了各种各样莫名其妙的坑.前前后后挣扎了两个多星期终于完成了IEEE模板的设置.下面详细记录一下让我深恶痛绝的心路历 ...
- 2019-2-13-Latex-论文elsevier,手把手如何用Latex写论文
title author date CreateTime categories Latex 论文elsevier,手把手如何用Latex写论文 lindexi 2019-02-13 10:38:20 ...
- Latex 论文elsevier,手把手如何用Latex写论文
这几天在开始写论文,准备发的是elsevier,这个网站的instruction有问题,下载的东西基本上好多的错误,所以我就写博客记录. 首先看下:https://www.elsevier.com/a ...
- Latex: 添加IEEE论文keywords
参考: How to use \IEEEkeywords Latex: 添加IEEE论文keywords 方法: \begin{IEEEkeywords} keyword1, keyword2. \e ...
- Latex: 添加IEEE会议论文作者信息
参考: Multiple Authors with common affiliations in IEEEtran conference template Latex: 添加IEEE会议论文作者信息 ...
- 使用latex撰写博士,硕士学位论文(浙大博士经验分享)
使用latex撰写博士,硕士学位论文(浙大博士经验分享) 浙大博士: 个人感觉,还是要用latex来写.因为之前发过几篇word排版的中文论文,在参考文献的引用.文字格式调整上,实在是难受.如果坚持 ...
随机推荐
- 魔术师发牌问题--java实现
package com.wyl.linklist; /** **问题名称:魔术师发牌问题 *问题描述:魔术师手里一共有13张牌,全是黑桃,1~13. *********魔术师需要实现一个魔术:这是十三 ...
- Tomcat的bin目录下startup.bat、Tomcat6.exe、Tomcat6w.exe区别
从官方下载了apache-tomcat-6.0.37-windows-x64.zip安装包,解压后bin目录下的startup.bat.Tomcat6.exe.Tomcat6w.exe 3个程序有何区 ...
- OSX 10.11.1 预览照片绿屏的问题
最新版本的El Capitan仍然会出现Finder预览多张照片时,会几率性出现绿屏或者部分绿色的照片: 这是新版“预览.app”的bug,解决方法有两个,一个是等待升级补丁,暂时一个一个文件预览,就 ...
- [Alfred]为Baidu Weather Workflow更新图标
Alfred workflow:百度天气,修改更新图标显示: 下载:https://github.com/BobSte/weather-workflow 原始代码是php脚本,为其增加了一个取图片的函 ...
- TCP/IP详解学习笔记(1)-基本概念【转】
转自:http://blog.csdn.net/goodboy1881/article/details/665041 为什么会有TCP/IP协议 在世界上各地,各种各样的电脑运行着各自不同的操作系统为 ...
- 圆形ImageView(可设置边缘厚度和颜色)--第三方开源--CircleImageView
下载地址:https://github.com/hdodenhof/CircleImageView 使用的时候直接在xml中: <de.hdodenhof.circleimageview.Cir ...
- Git_学习_09_Commit message 和 Change log 编写指南
一.前言 二.Commit message编写 1.规范 2.用空行分开主题和正文 提交时只执行 git commit,这时就会跳出文本编辑器,让你写多行. git commit 主题和正文分开 每次 ...
- Spring_总结_04_高级配置(二)_条件注解@Conditional
一.前言 本文承接上一节:Spring_总结_04_高级配置(一)之Profile 在上一节,我们了解到 Profile 为不同环境下使用不同的配置提供了支持,那么Profile到底是如何实现的呢?其 ...
- spring学习-4
bean的作用域 使用bean的scope属性来配置bean的作用域 scope="singleton":默认是单例模式即容器初始化创建bean实例,在整个容器的生命周期内只创建这 ...
- mysql中事务隔离级别可重复读说明
mysql中InnoDB引擎默认为可重复读的(REPEATABLE READ).修改隔离级别的方法,你可以在my.inf文件的[mysqld]中配置: transaction-isolation = ...