从参考书目中删除 DOI、ISSN 链接

从参考书目中删除 DOI、ISSN 链接

鉴于如果我想使用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

相关内容