zoukankan      html  css  js  c++  java
  • 不显示Zetero导出的文献库中的部分内容

    不显示Zetero导出的文献库中的部分内容

    Zetero作为文献管理软件,收集到的参考文献的相关信息(域fields)比较齐全。文章或书籍的引用中仅仅只用到了其中的一部分,如作者、发表年、题名、期刊(或书籍)等,引用时需要将其他的信息,如doi,url,urldate等域屏蔽掉,或者根据文献的类型,有选择的使用其中的某些域。Zetero通过Javascript脚本控制参考文献的导出,理论上可以修改控制导出的脚本,但是可能比较麻烦,如果在LaTeX文档中使用BibLaTeX宏包,可以控制文献库中的部分内容的显示。

    如果希望在所有的manual条目中不显示url域,可以通过如下几种方式:

    1. 全局控制

      usepackage[
      style=numeric-comp,
      sorting=none,
      doi=false, %不显示doi域
      isbn=false, %不显示isbn域
      url=false, %不显示url域
      eprint=false, %不显示eprint域
      maxnames=99
      ]{biblatex}
      

      缺陷有2点:
      所有的类型都会屏蔽上述域;
      在online类型中,即使url=false,仍然会显示url域的内容。

    2. 引用时自动清除

      AtEveryBibitem{%
      ifentrytype{manual}{%
      }{%
      clearfield{url}%
      clearfield{urldate}%
      }%
      }
      

      如果类型是manual,清除url和urldate中的内容。加强版如下

      %removes url for every type except those listed here
      AtEveryBibitem{%
      ifboolexpr{ not (test {ifentrytype{misc}} or test%
      {ifentrytype{unpublished}} or test {ifentrytype{online}}%
      or test {ifentrytype{inreference}}%
      or test {ifentrytype{report}}) }%
      {clearfield{url} clearfield{urlday} clearfield{urlmonth} clearfield{urlyear}   }{}
      }
      }
      

      http://tex.stackexchange.com/questions/65216中也提供了另一个序列控制的方式实现删除。

    3. 通过DeclareFieldFormat命令定义格式

      DeclareFieldFormat*{url}{}
      DeclareFieldFormat[manual]{url}{mkbibacro{URL}addcolonspaceurl{#1}}
      DeclareFieldFormat*{urldate}{}
      DeclareFieldFormat[manual]{urldate}{mkbibparens{ibstring{urlseen}space#1}}
      

      如果类型是manual,重新定义url和urldate的引用格式。

    4. 在JabRef中删除相关条目
      可以批量操作。域名不区分大小写

      选中条目,右键->"set/clear/rename field",最上的Field name是要操作的域(如果选中的条目没 有该域名,则在设置域值时会新建一个域名并填充值),下方有三个选项:set field是设置域值,clear 是删除该域,rename是重命名该域。

      缺点:如果导出的文献包含的域较多,改起来也麻烦!

    5. 使用Better Bib(La)TeX
      安装该扩展后,在preference->Better Bib(La)TeX->import/export中:field to omit from export后输入不需要导出的域。​
      https://retorque.re/zotero-better-bibtex/installation/

    6. 修改导出文件BibTeX.js
      preference->advance->file and folder->Show Data Directory,编辑translator下的 BibTeX.js. 搜索for(var field in fieldMap),添加一行,使得结果为

      for(var field in fieldMap) {
      # only add the following line:
      if (field == "url") continue;
      if(item[fieldMap[field]]) {
      writeField(field, item[fieldMap[field]]);
      }
      }
      
    7. 导出文献
      选择"better biblatex",字符编码选择"UTF-8"。中文文献在"UTF-8(without BOM)"时,导出的中文乱码

    参考文献

    1. https://forums.zotero.org/discussion/39514/delete-fields-for-specific-reference-types-when-exporting-as-bibtex-biblatex/
    2. http://tex.stackexchange.com/questions/52601/url-field-only-for-certain-reference-types-with-biblatex/52603#52603
    3. http://vxlabs.com/2012/06/29/removing-urls-from-zotero-bibtex-exports

    有帮助,打赏支持!

    avatar

  • 相关阅读:
    CSS躬行记(9)——网格布局
    CSS躬行记(8)——裁剪和遮罩
    CSS躬行记(7)——合成
    CentOS 系统目录解析
    Linux 命令快捷键
    秒的精确度
    Oracle和mysql中装逼dual表的用途介绍
    mysql 的mgr集群
    ansible笔记
    cygwin
  • 原文地址:https://www.cnblogs.com/ourweiguan/p/11728471.html
Copyright © 2011-2022 走看看