鉴于这和这如果我想使用pdflatex
而不是biblatex
,我该如何从我的参考书目中删除 doi、ISSN 链接?
我可以编写如下脚本这里但这样,
一来每个条目就没戏了?
任何意见?
编辑:
我收到了来自 米科 但我无法采用他的建议(我会这样做并在此发布结果)。
与此同时,我设计了一个不太优雅的解决方案:
我删除了 .bib 文件中的所有 url、doi、issn 文本,如下所示:
cat mybibfile.ib | sed -e '/url /d' > mybibfile2.bib
然后我在 gedit 中打开了我的新的 .bib 文件,即 mybibfile2.bib,并用它替换所有
,\n}
内容}
,确保我的文件中没有悬挂的逗号 (,)。
答案1
让 BibTeX 忽略诸如doi
和之类的字段的一种方法issn
是将格式化这些字段的 BibTeX 函数设置为不执行任何操作的“虚拟”指令。这些函数(以及所有其他 BibTeX 函数)包含在正在使用的参考书目样式文件中。由于您表明您使用unsrtnat
参考书目样式,因此您可以按如下方式进行:
在你的 TeX 系统上找到该文件
unsrtnat.bst
并将其复制到,比如说,unsrtnatDNA.bst
。(切勿编辑原始样式文件。)用您喜欢的文本编辑器打开文件
unsrtnatDNA.bst
。搜索函数{format.issn}
和{format.doi}
。(这些函数的标题在我的文件版本中位于第 278 行和第 292 行unsrtnat.bst
。)用“虚拟”定义替换它们的定义(位于相应标题行下方,由一对花括号括起来的内容),即。{ }
例如,您应该将的定义format.issn
从FUNCTION {format.issn} { issn empty$ { "" } { new.block "ISSN " issn * } if$ }
到
FUNCTION {format.issn} { }
保存并关闭文件。
根据您的 TeX 发行版,您可能需要更新 TeX 用于查找所有相关文件的文件名数据库。例如,如果您使用 TeXLive,则更新文件名数据库的命令称为
texhash
。从现在开始,使用 tex 文件中的命令
\bibliographystyle{unsrtnatDNA}
指示 BibTeX 使用您修改过的参考书目样式文件。
答案2
不一定是一个优雅的解决方案 - 但不久前我编写了一个快速的 python 脚本来解决类似的问题 - 原则上可以用来摆脱任何字段 - 并且可以轻松扩展。
我将其发布在这里。
http://quickscriptfixes.blogspot.com/2013/01/mendeley-bibtex-stripper-in-python.html