从 EndNote 导出时如何格式化 bibtex 键

从 EndNote 导出时如何格式化 bibtex 键

我从 EndNote 导出了引文,但它们不起作用。这是为什么?

@article{Fox, TA-1991-97,
   author = {Fox, TA},
   title = {Wake characteristics of two circular cylinders arranged perpendicular to each other},
   journal = {Journal of fluids engineering},
   volume = {113},
   number = {1},
   pages = {45-50},
   ISSN = {0098-2202},
   year = {1991},
   type = {Journal Article}
}

答案1

从其他书目管理器导出引文时,您需要能够生成合法的引用密钥bibtex。如果您可以指定密钥格式,那么最好只包含字母和数字以及一些其他字符。

不允许使用以下字符:

     ““@',\#}{~%

并且您也不应该使用&^$(下划线_字符也会导致问题。)

答案2

如果你有很多参考资料,或者只是讨厌做重复性的手工劳动,贾布雷夫对于从 EndNote 到 BibTeX 的正确格式化非常有帮助。

如果你还没有,你需要 Endnote 到 BibTeX 样式(可用这里)。只需下载该文件并双击即可安装(它应该使用 EndNote 打开)。然后在要导出的库中,转到File > Export,然后选择Text OnlyBibTeX Export这将保存一个.txt文件。

获得该 .txt 文件后,打开 JabRef,转到File > Import into new database,然后选择从 EndNote 导出的文件。这会将您的图书馆加载到 JabRef 中。

然后,如果您转到 ,JabRef 可以自动为您的所有条目创建引文键Tools > Autogenerate BibTeX keys。默认格式为 Lastnameyear ( Smith2013),但可以在Options > Preferences > BibTex key generator ),但可以通过使用术语更改键模式这里。例如,您可以smith13通过将图案更改为 ,使按键显示为[auth:lower][shortyear]

一旦您获得了喜欢的数据,请将其保存为.bib可以在编译文档时根据需要引用的文件。

不幸的是,特殊字符往往不能很好地从 EndNote 导出为文本格式,如果您从事化学等标题中含有大量特殊字符的领域,这可能会成为一个问题。您很可能需要手动检查特殊字符的错误,并将其格式化为纯文本或 LaTeX 可识别的内容。此外,如果您需要特殊的大写例外(同样,在化学中氧化态和化学式很常见),则{}需要在文本周围添加以指示BibTeX保留该文本的大写。不建议在整个标题周围放置括号,因为这可能会导致大写不一致。

参见此维基教科书入口有关 LaTeX 书目及其实施的一般说明。

注意,还有其他有用的书目管理器,BibTeX但我发现 JabRef 可以很好地导入 EndNote 格式不佳的导出文件(不像比比桌无法导入我导出的库),自动密钥生成非常有用。其他一些可能的软件选择列在 wikibooks 条目中这里

答案3

这个简短的 awk 命令按数字顺序为已导出为没有唯一标签的 BibTex 的尾注文件分配唯一的 Bibtex 标签。

awk 'BEGIN{c=1}{if($1~/^@/){c++}; gsub("{", "{REF:"c",", $1)}' Endnote.bib > EndnoteCorrect.bib 

答案4

上面的 awk 脚本对我(MacOS)不起作用。我做了如下修改:

awk 'BEGIN{c=1}{if($1~/^@/){c++; gsub("{", "{REF:"c",", $1)};print}' Endnote.bib > EndnoteCorrect.bib 

相关内容