将word中插入的zotero文献转为latex引用样式

在word中,可以使用zotero插件插入和管理参考文献。

例如:

若需要将这段内容移植到latex,就需要将对应的引用编号用\cite{}替换。手动替换非常麻烦且容易出错。要实现自动转换,可在zotero中定制一种新的引文格式,自动将引用编号替换为\cite{key},方法如下:

将下面的样式文件保存为better-bibtex-citekeys-latex.cls

cls 复制代码
<?xml version="1.0" encoding="utf-8"?>
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" default-locale="en-US">
  <!-- This style was edited with the Visual CSL Editor (http://editor.citationstyles.org/visualEditor/) -->
  <info>
    <title>Better BibTeX Citekeys</title>
    <id>http://www.zotero.org/styles/better-bibtex-citekeys</id>
    <link href="http://www.zotero.org/styles/better-bibtex-citekeys" rel="self"/>
    <link href="http://www.zotero.org/support/bbt_citekeys" rel="documentation"/>
    <author>
      <name>Emiliano Heyns</name>
    </author>
    <category citation-format="author-date"/>
    <category field="generic-base"/>
    <summary>Style to show BBT citekeys</summary>
    <updated>2019-02-27T10:14:13+00:00</updated>
    <rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
  </info>
  <macro name="author-short">
    <names variable="author">
      <name form="short" and="text" delimiter=", " initialize-with=". " sort-separator=", "/>
      <substitute>
        <names variable="editor"/>
        <names variable="translator"/>
        <text macro="title"/>
      </substitute>
    </names>
  </macro>
  <macro name="title">
    <text value="&quot;"/>
    <text variable="title"/>
    <text value="&quot;"/>
  </macro>
  <macro name="year-date">
    <choose>
      <if variable="issued">
        <date variable="issued">
          <date-part name="year"/>
        </date>
      </if>
      <else>
        <text term="no date" form="short"/>
      </else>
    </choose>
  </macro>
  <citation et-al-min="2" et-al-use-first="1" disambiguate-add-year-suffix="true" disambiguate-add-names="true" disambiguate-add-givenname="true">
    <sort>
      <key macro="author-short"/>
      <key macro="title"/>
      <key macro="year-date"/>
    </sort>
    <layout delimiter=", " prefix="\cite{" suffix="}">
      <group>
        <text value=""/>
        <text variable="citation-key"/>
        <text variable="locator" prefix=", p. "/>
      </group>
    </layout>
  </citation>
  <bibliography hanging-indent="true" et-al-min="2" et-al-use-first="1">
    <sort>
      <key macro="author-short"/>
      <key macro="year-date"/>
      <key variable="title"/>
    </sort>
    <layout prefix="{" suffix="}">
      <group delimiter=", ">
        <text macro="author-short"/>
        <text macro="title"/>
        <text macro="year-date"/>
      </group>
    </layout>
  </bibliography>
</style>

双击该cls文件,将这一样式安装到zotero(zotero上需要有Better bibtex插件):

在word中,应用该引用格式:

结果如下:

可见已将原文的引用编号转换为latex的\cite命令。

相关推荐
wqqqianqian18 小时前
国产linux系统(银河麒麟,统信uos)使用 PageOffice自定义Word模版中的数据区域
linux·word·自定义·pageoffice·数据区域
CodeCraft Studio2 天前
国产化Word处理控件Spire.Doc教程:通过C# 删除 Word 文档中的超链接
开发语言·c#·word
小小Ruby2 天前
利用vba替换word中多个表格,相邻单元格的文字
word
T0uken3 天前
【前端】:单 HTML 去除 Word 批注
前端·html·word
诸葛大钢铁3 天前
WORD压缩两个免费方法
word
KingCruel3 天前
NPOI 操作 Word 文档
word
小可的科研日常4 天前
保持Word中插入图片的清晰度
word
小码ssim4 天前
通过POI实现对word基于书签的内容替换、删除、插入
java·word
一把年纪学编程5 天前
【牛马技巧】word统计每一段的字数接近“字数统计”
前端·数据库·word
爱吃零食的白糖5 天前
word换行符和段落标记
word