BY.Tan

记录点滴

Zotero引用文献存在中文“等”及作者大写问题

波比 / 2018-12-20


Zotero是科研工作者的一款神器。但是对于中文环境的工作者几乎就是噩梦参考文献英文作者名字全是大写,et al 会自动写成“等”。现在将CSL的代码贴出来,自己改就好了。

适用Chinese Std GB/T 7714-1987 (numeric, Chinese)

<?xml version="1.0" encoding="utf-8"?>
<style class="in-text" version="1.0" demote-non-dropping-particle="sort-only" default-locale="en-US" xmlns="http://purl.org/net/xbiblio/csl">
  <!-- This style was edited with the Visual CSL Editor (http://editor.citationstyles.org/visualEditor/) -->
  <info>
    <title>Chinese Std GB/T 7714-1987 (numeric, Chinese)</title>
    <id>http://www.zotero.org/styles/chinese-std-gb-t-7714-1987</id>
    <link href="http://www.zotero.org/styles/chinese-std-gb-t-7714-1987" rel="self"/>
    <link href="http://www.lib.tsinghua.edu.cn/service/GB7714-87.doc" rel="documentation"/>
    <author>
      <name>heromyth</name>
      <email>zxpmyth@yahoo.com.cn</email>
    </author>
    <category citation-format="numeric"/>
    <category field="engineering"/>
    <category field="generic-base"/>
    <category field="science"/>
    <summary>This style just partly implemented what the Chinese GB/T 7714-1987 requires.</summary>
    <updated>2018-10-14T08:44:18+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">
    <names variable="author">
      <name initialize-with=" " name-as-sort-order="all" sort-separator=" " delimiter=", " delimiter-precedes-last="always"/>
    </names>
  </macro>
  <macro name="recipient">
    <names variable="recipient">
      <name name-as-sort-order="all" sort-separator=" " delimiter=", " delimiter-precedes-last="always"/>
      <label form="short" prefix=", " text-case="lowercase"/>
    </names>
  </macro>
  <macro name="interviewer">
    <names variable="interviewer">
      <name name-as-sort-order="all" sort-separator=" " delimiter=", " delimiter-precedes-last="always"/>
      <label form="short" prefix=", " text-case="lowercase"/>
    </names>
  </macro>
  <macro name="composer">
    <names variable="composer">
      <name name-as-sort-order="all" sort-separator=" " delimiter=", " delimiter-precedes-last="always"/>
      <label form="short" prefix=", " text-case="lowercase"/>
    </names>
  </macro>
  <macro name="original-author">
    <names variable="original-author">
      <name name-as-sort-order="all" sort-separator=" " delimiter=", " delimiter-precedes-last="always"/>
      <label form="short" prefix=", " text-case="lowercase"/>
    </names>
  </macro>
  <macro name="title">
    <text variable="title"/>
  </macro>
  <macro name="titleField">
    <choose>
      <if type="report">
        <text macro="title" suffix="[R]. "/>
      </if>
      <else-if type="thesis">
        <text macro="title" suffix="[D]. "/>
      </else-if>
      <else-if type="bill legislation" match="any">
        <text variable="number" suffix=", "/>
        <text macro="title" suffix="[S]"/>
      </else-if>
      <else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">
        <text macro="title" suffix="[M]. "/>
      </else-if>
      <else-if type="paper-conference">
        <text macro="title" suffix="[A]. "/>
      </else-if>
      <else-if type="chapter paper-conference" match="any">
        <text macro="title" suffix="[A]. 见: "/>
      </else-if>
      <else-if type="webpage">
        <text macro="title" suffix="[EB/OL]. "/>
      </else-if>
      <else-if type="patent">
        <text macro="title"/>
        <text variable="number" prefix=": 中国, " suffix="[P].  "/>
      </else-if>
      <else>
        <text macro="title" suffix="[J]. "/>
      </else>
    </choose>
  </macro>
  <macro name="secondaryAuthor">
    <names variable="editor">
      <name initialize-with="." delimiter=", "/>
    </names>
    <names variable="translator">
      <name name-as-sort-order="all" sort-separator=" " delimiter=", " delimiter-precedes-last="always" suffix=", 译"/>
    </names>
  </macro>
  <macro name="publisher">
    <choose>
      <if type="paper-conference">
        <text variable="container-title" suffix="[C]. "/>
      </if>
      <else-if type="report">
        <text variable="collection-title" suffix=", "/>
        <text variable="number" suffix=", "/>
      </else-if>
      <else-if type="chapter paper-conference" match="any">
        <text variable="container-title" suffix="[M]. "/>
      </else-if>
      <else-if type="webpage">
        <text variable="container-title" suffix=". "/>
      </else-if>
      <else-if type="bill legislation" match="any">
        <text variable="container-title" prefix=". "/>
      </else-if>
      <else>
        <text variable="container-title" suffix=", "/>
      </else>
    </choose>
    <text variable="publisher-place" suffix=": "/>
    <group delimiter=", ">
      <text variable="publisher"/>
      <choose>
        <if type="patent">
          <date variable="issued">
            <date-part name="year"/>
            <date-part name="month" form="numeric-leading-zeros" prefix="-"/>
            <date-part name="day" form="numeric-leading-zeros" prefix="-"/>
          </date>
        </if>
        <else-if type="bill legislation webpage" match="any"/>
        <else>
          <date variable="issued">
            <date-part name="year"/>
          </date>
        </else>
      </choose>
    </group>
    <text variable="volume" prefix=", "/>
    <text variable="issue" prefix="(" suffix=")"/>
  </macro>
  <macro name="pageField">
    <text variable="page"/>
  </macro>
  <macro name="referenceDate">
    <choose>
      <if type="webpage">
        <date variable="issued">
          <date-part name="year"/>
          <date-part name="month" form="numeric-leading-zeros" prefix="-"/>
          <date-part name="day" form="numeric-leading-zeros" prefix="-"/>
        </date>
        <date variable="accessed" prefix="/">
          <date-part name="year"/>
          <date-part name="month" form="numeric-leading-zeros" prefix="-"/>
          <date-part name="day" form="numeric-leading-zeros" prefix="-"/>
        </date>
      </if>
    </choose>
  </macro>
  <macro name="access">
    <choose>
      <if variable="DOI">
        <text variable="DOI" prefix="doi:"/>
      </if>
      <else-if variable="URL">
        <text variable="URL"/>
      </else-if>
    </choose>
  </macro>
  <citation collapse="citation-number">
    <sort>
      <key variable="citation-number" sort="descending"/>
    </sort>
    <layout vertical-align="sup" prefix="[" suffix="]" delimiter=",">
      <text variable="citation-number"/>
    </layout>
  </citation>
  <bibliography et-al-min="4" et-al-use-first="3" second-field-align="flush" entry-spacing="0">
    <layout suffix=".">
      <text variable="citation-number" prefix="[" suffix="]"/>
      <text macro="author" suffix=". "/>
      <text macro="titleField"/>
      <text macro="secondaryAuthor" suffix=". "/>
      <text variable="edition" prefix="第" suffix="版. "/>
      <text macro="publisher"/>
      <text macro="pageField" prefix=": "/>
      <text macro="referenceDate"/>
      <choose>
        <if type="webpage" match="any">
          <text macro="access" prefix=". "/>
        </if>
      </choose>
      <text macro="recipient"/>
      <text macro="interviewer"/>
      <text macro="composer"/>
      <text macro="original-author"/>
    </layout>
  </bibliography>
</style>

将代码中的内容复制到txt文本文件中,另存为chinese-gb7714-numeric.csl。然后在zotero软件中将本地的csl文件导入即可。