XRC0808087的个人博客分享 http://blog.sciencenet.cn/u/XRC0808087

博文

Word转LATEX时Endnote参考文献的格式转换

已有 18678 次阅读 2017-1-17 17:16 |系统分类:科研笔记| 论文写作, LaTex, Endnote模板

虽然LATEX有比Word更漂亮的排版功能,但Word具有所见即所得的优点,以及强大的拼写检查和语法检查的功能(这在写英语文章的时候十分重要),而且在Word里能更方便地使用Endnote进行边写边引,这些都是LATEX不能与Word匹敌的。所以为了更好发挥和使用Word的有点,一种常见的做法是先在Word里写好文章,最后再用LATEX排版。但是这样做又会遇到一个问题:如何将插入到Word里的Endnote参考文献转换为LATEX格式呢?如果简单地复制粘贴,还需要在LATEX中将参考文献的标号、字体加粗和倾斜等格式进行重新设定。如果参考文献很多,这将是一个十分浩大繁琐的过程。

我们知道,LATEX引用参考文献的方式是“cite{marker}”,这里的marker是文章的标签,而参考文献条目有两种方式列举,第一种是:

begin{thebibliography}

bibitem{marker}xxx

end{thebibliography}

第二种是:

bibliographystyle{apsrev4-1}
bibliography{xxx}

(PS:这两种方法各有优缺点,这里就不介绍了)

这里我们介绍如何将插入到Word里的Endnote参考文献转换为这两种LATEX的格式。解决Word转LATEX的“最后一公里”问题。

方法一:

如果我们已经在Word里把参考文献的格式都改好了,那么最直接的方法就是用方法一,因为只需要将Endnote的Style加上一些LATEX格式命令就可以了。

1.  正文参考文献的修改。前面已经提到,在LATEX的正文引用参考文献的方式是:cite{marker}。所以,我们在只需要把Endnote模板里的[Bibliography Number]改为cite{marker}即可。具体做法,选择菜单,Edit→ Output styles → Edit “xxx”。将Citations的Templates选项卡下的Citation从“[Bibliography Number]”(图1左)改为cite{`Label}(图1右),然后到Endnote每一个文献条目下手动添加补充Label信息。或改为cite{`RN`Record Number}(关键字“Record Number”可以使用“Insert Field”按钮自动添加),这样就无需手动补充信息。

注 明:无论采用哪种方法,cite{marker}中的marker字符不能出现逗号、句号、空格和中文,但可以用下划线。

 

1  将Citation从[Bibliography Number](1左)改为cite{Label}(1右)

  2.  在Bibliography-Templates选项卡的Journal Article中添加bibitem{Label}(或bibitem{`RN`Record Number})这一LATEX命令(图2右)。由于原来模板下的字体加粗、倾斜等格式(图2左)是无法在LATEX显示出来的,所以还要添加相应的加粗和倾斜等格式命令,如图2右图所示。其他形式的参考文献的修改和Journal Article类似,这里略。

 

2   修改前的Journal Article格式(左图),在Journal Article加上“bibitem{Label}”、倾斜和加粗等LATEX命令(右图)

  3.  当参考文献的作者很多时候,一般要用“et al.”(图3 左),所以在Author List下使用LATEX的textit{}(或者emph{})命令对“et al.”进行倾斜设置。

 

3 对作者列举的“et al.”(左)修改为LATEX的斜体(右)

 4.  将修改的模板另存为一个新模板(Style)。在Endnote的Style Manager中选择这个Style,然后也在Word里的Endnote选项卡中选择这个Style。

 5.  等Word更新好Style后,把正文和参考文献都复制到LATEX中,并在参考文献前后加上begin{thebibliography}和end{thebibliography}字段。

方法二:

如果是用上文的第二种方法插入参考文献,使用Endnote的BibTex Export模板就可以了。具体做法是:

1.  修改BibTexExport模板。由于Endnote默认的BibTex Export还有许多参数需要修改,比如期刊缩写、文章页码、作者列举个数等,修改方式和一般的模板修改类似,这里略。

2.  在Word里的Endnote的Style选项卡中选择BibTexExport(如图4),更新完后,会发现正文的引用变成了cite{RNxxx}的形式(这里BibTex Export的默认正文参考文献的marker是“`RN`Record Number”),而后文的参考文献则变成了BibTexExport格式。把正文复制到LATEX中。

4将Endnote的Style选择为BibTeX格式

 3.  参考文献的导出。可以把Word里的BibTex格式参考文献直接复制到一个txt中,然后将txt后缀名改为bib。如果参考文献太多不好复制,可以用Endnote导出。具体方法是:当更新Word的Endnote的Style后,会在Endnote里出现一个Word文档名的图标,这个图标包含了这个Word引用的参考文献条目。点击这个Word图标(如图5上),选择这个Word图标里的所有参考文献并选择File→Export,在界面中选择输出txt格式;在Output style中选择Bibtex Export,然后命名保存(图4下)。然后将这个txt后缀名为bib,然后将复制到指定的路径下,在LATEX中使用bibliography{condense}对其引用。



5 Endnote的Word文件夹(上),将这些参考文献条目导出(下)

说  明:

1. 参考文献作者名字里有法文或者俄文时候,复制到LATEX将无法正常显示,需要利用转义字符输入法文连字或带音符的字母。具体如下:


2. 可以使用hypertex宏包建立正文参考文献超链接:

usepackage[hypertex,dvipdfm,colorlinks=true,urlcolor=blue,linkcolor=blue,citecolor=blue]{hyperref}

这样,在正文点击参考文献就可以链接到参考文献部分。并且如果使用第二种方法,而且bib文件中的URL有参考文献的网址的话,点击这篇参考文献可以链接到期刊所在的网站。

3. 如默认是用上标方式引用文献,但是部分几篇不用上标,如

则需要在tex文件中加入下面字段:

newcommand*{citen}{}% generate error, if`citen` is already in use

DeclareRobustCommand*{citen}[1]{%

begingroup

  romannumeral-`x % remove space at the beginning of setcitestyle

  setcitestyle{numbers}%

  cite{#1}%

endgroup   }

并按照:“~citen{marker}”方式引用参考文献。详见:https://tex.stackexchange.com/questions/94178/temporarily-disable-superscript-in-citation



https://blog.sciencenet.cn/blog-1502061-1028206.html

上一篇:晶体科普日历-让知识走进千家万户
下一篇:用Bilbao Crystallographic Server网站判断晶体的红外和拉曼活性
收藏 IP: 61.190.88.*| 热度|

1 樊采薇

该博文允许注册用户评论 请点击登录 评论 (3 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-3-29 06:02

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部