最近在写一篇综述,要处理大量引用文献,选用Zotero作为文献管理工具。在插入参考文献目录时需要遵循格式,奈何网上找不到《软件学报》对应的csl模板文件,所以决定自己动手修改。在此记录下自己的学习所得。

Zotero入门

关于Zotero的用法建议阅读这篇博客:文献管理软件Zotero基础及进阶示范

CSL基本概念理解

CSL是一种xml文件,专门用来描述论文中的参考文献格式,具体包括引用格式(如是用数字[1]形式引用还是用作者+年的形式)和参考文献目录格式(如作者姓名、期刊名称等显示格式)。

关于CSL文献的详细描述参见官方文档

CSL文件的工作原理如上图所示,CSL文件负责描述格式,CSL Processor负责将CSL文件渲染成最终的引用和文献目录样式。

CSL文件修改

我选用了Elsevier (numeric, with titles)作为模板来修改,其样式如下图,和软件学报的要求很接近,只要将引用样式改为上标,文献目录中作者姓名的显示顺序改变一下即可.

引用样式修改如下:

文献目录修改如下:

出乎意料的简单。需要注意的是因为我的文献中英文居多,所以locale设置为了en_US,locale在左侧的Global Formatting Options中修改。

  • 如果想要分享自己修改好的CSL文件,建议按照官方教程上传到Github上

最后附上修改好的CSL文件:journal-of-software.csl

<?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">
<info>
<title>Journal of Software(Chinese)</title>
<title-short>JOS</title-short>
<id>http://www.zotero.org/styles/journal-of-software</id>
<link href="http://www.zotero.org/styles/journal-of-software" rel="self"/>
<link href="http://www.zotero.org/styles/elsevier-with-titles" rel="template"/>
<author>
<name>Chang YC</name>
<email>chang.1123@outlook.com</email>
</author>
<category citation-format="numeric"/>
<issn>1000-9825</issn>
<summary>A style for Journal of Software</summary>
<updated>2017-07-01T03:38:51+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 delimiter-precedes-last="always" initialize-with="" name-as-sort-order="all" sort-separator=" "/>
<label form="short" prefix=", "/>
<substitute>
<names variable="editor"/>
<names variable="translator"/>
</substitute>
</names>
</macro>
<macro name="editor">
<names variable="editor">
<name initialize-with="." delimiter=", " delimiter-precedes-last="always"/>
<label form="short" prefix=" (" text-case="capitalize-first" suffix=")"/>
</names>
</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>
<macro name="publisher">
<text variable="publisher" suffix=", "/>
<text variable="publisher-place" suffix=", "/>
<text macro="year-date"/>
</macro>
<macro name="edition">
<choose>
<if is-numeric="edition">
<group delimiter=" ">
<number variable="edition" form="ordinal"/>
<text term="edition" form="short"/>
</group>
</if>
<else>
<text variable="edition"/>
</else>
</choose>
</macro>
<macro name="access">
<choose>
<if variable="URL">
<text variable="URL"/>
<group prefix=" (" suffix=")" delimiter=" ">
<text term="accessed"/>
<date variable="accessed" form="text"/>
</group>
</if>
</choose>
</macro>
<citation collapse="citation-number">
<sort>
<key variable="citation-number" sort="ascending"/>
</sort>
<layout vertical-align="sup" prefix="[" suffix="]" delimiter=",">
<text variable="citation-number"/>
</layout>
</citation>
<bibliography entry-spacing="0" second-field-align="flush">
<layout suffix=".">
<text variable="citation-number" prefix="[" suffix="]"/>
<text macro="author" suffix=", "/>
<choose>
<if type="bill book graphic legal_case legislation motion_picture report song" match="any">
<group delimiter=", ">
<text variable="title"/>
<text macro="edition"/>
<text macro="publisher"/>
</group>
</if>
<else-if type="chapter paper-conference" match="any">
<text variable="title" suffix=", "/>
<text term="in" suffix=": "/>
<text macro="editor" suffix=", "/>
<text variable="container-title" form="short" text-case="title" suffix=", "/>
<text macro="edition" suffix=", "/>
<text macro="publisher"/>
<group delimiter=" ">
<label variable="page" form="short" prefix=": "/>
<text variable="page"/>
</group>
</else-if>
<else-if type="patent">
<group delimiter=", ">
<text variable="title"/>
<text variable="number"/>
<text macro="year-date"/>
</group>
</else-if>
<else-if type="thesis">
<group delimiter=", ">
<text variable="title"/>
<text variable="genre"/>
<text variable="publisher"/>
<text macro="year-date"/>
</group>
</else-if>
<else>
<group delimiter=" ">
<text variable="title" suffix=","/>
<text variable="container-title" form="short" text-case="title" suffix="."/>
<text variable="volume"/>
<text macro="year-date" prefix="(" suffix=")"/>
<text variable="page" form="short"/>
</group>
</else>
</choose>
<choose>
<if variable="DOI">
<text variable="DOI" prefix=". doi:"/>
</if>
<else>
<text macro="access" prefix=". "/>
</else>
</choose>
</layout>
</bibliography>
</style>
 
1
<?xml version="1.0" encoding="utf-8"?>
2
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" default-locale="en-US">
3
  <info>
4
    <title>Journal of Software(Chinese)</title>
5
    <title-short>JOS</title-short>
6
    <id>http://www.zotero.org/styles/journal-of-software</id>
7
    <link href="http://www.zotero.org/styles/journal-of-software" rel="self"/>
8
    <link href="http://www.zotero.org/styles/elsevier-with-titles" rel="template"/>
9
    <author>
10
      <name>Chang YC</name>
11
      <email>chang.1123@outlook.com</email>
12
    </author>
13
    <category citation-format="numeric"/>
14
    <issn>1000-9825</issn>
15
    <summary>A style for Journal of Software</summary>
16
    <updated>2017-07-01T03:38:51+00:00</updated>
17
    <rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
18
  </info>
19
  <macro name="author">
20
    <names variable="author">
21
      <name delimiter-precedes-last="always" initialize-with="" name-as-sort-order="all" sort-separator=" "/>
22
      <label form="short" prefix=", "/>
23
      <substitute>
24
        <names variable="editor"/>
25
        <names variable="translator"/>
26
      </substitute>
27
    </names>
28
  </macro>
29
  <macro name="editor">
30
    <names variable="editor">
31
      <name initialize-with="." delimiter=", " delimiter-precedes-last="always"/>
32
      <label form="short" prefix=" (" text-case="capitalize-first" suffix=")"/>
33
    </names>
34
  </macro>
35
  <macro name="year-date">
36
    <choose>
37
      <if variable="issued">
38
        <date variable="issued">
39
          <date-part name="year"/>
40
        </date>
41
      </if>
42
      <else>
43
        <text term="no date" form="short"/>
44
      </else>
45
    </choose>
46
  </macro>
47
  <macro name="publisher">
48
    <text variable="publisher" suffix=", "/>
49
    <text variable="publisher-place" suffix=", "/>
50
    <text macro="year-date"/>
51
  </macro>
52
  <macro name="edition">
53
    <choose>
54
      <if is-numeric="edition">
55
        <group delimiter=" ">
56
          <number variable="edition" form="ordinal"/>
57
          <text term="edition" form="short"/>
58
        </group>
59
      </if>
60
      <else>
61
        <text variable="edition"/>
62
      </else>
63
    </choose>
64
  </macro>
65
  <macro name="access">
66
    <choose>
67
      <if variable="URL">
68
        <text variable="URL"/>
69
        <group prefix=" (" suffix=")" delimiter=" ">
70
          <text term="accessed"/>
71
          <date variable="accessed" form="text"/>
72
        </group>
73
      </if>
74
    </choose>
75
  </macro>
76
  <citation collapse="citation-number">
77
    <sort>
78
      <key variable="citation-number" sort="ascending"/>
79
    </sort>
80
    <layout vertical-align="sup" prefix="[" suffix="]" delimiter=",">
81
      <text variable="citation-number"/>
82
    </layout>
83
  </citation>
84
  <bibliography entry-spacing="0" second-field-align="flush">
85
    <layout suffix=".">
86
      <text variable="citation-number" prefix="[" suffix="]"/>
87
      <text macro="author" suffix=", "/>
88
      <choose>
89
        <if type="bill book graphic legal_case legislation motion_picture report song" match="any">
90
          <group delimiter=", ">
91
            <text variable="title"/>
92
            <text macro="edition"/>
93
            <text macro="publisher"/>
94
          </group>
95
        </if>
96
        <else-if type="chapter paper-conference" match="any">
97
          <text variable="title" suffix=", "/>
98
          <text term="in" suffix=": "/>
99
          <text macro="editor" suffix=", "/>
100
          <text variable="container-title" form="short" text-case="title" suffix=", "/>
101
          <text macro="edition" suffix=", "/>
102
          <text macro="publisher"/>
103
          <group delimiter=" ">
104
            <label variable="page" form="short" prefix=": "/>
105
            <text variable="page"/>
106
          </group>
107
        </else-if>
108
        <else-if type="patent">
109
          <group delimiter=", ">
110
            <text variable="title"/>
111
            <text variable="number"/>
112
            <text macro="year-date"/>
113
          </group>
114
        </else-if>
115
        <else-if type="thesis">
116
          <group delimiter=", ">
117
            <text variable="title"/>
118
            <text variable="genre"/>
119
            <text variable="publisher"/>
120
            <text macro="year-date"/>
121
          </group>
122
        </else-if>
123
        <else>
124
          <group delimiter=" ">
125
            <text variable="title" suffix=","/>
126
            <text variable="container-title" form="short" text-case="title" suffix="."/>
127
            <text variable="volume"/>
128
            <text macro="year-date" prefix="(" suffix=")"/>
129
            <text variable="page" form="short"/>
130
          </group>
131
        </else>
132
      </choose>
133
      <choose>
134
        <if variable="DOI">
135
          <text variable="DOI" prefix=". doi:"/>
136
        </if>
137
        <else>
138
          <text macro="access" prefix=". "/>
139
        </else>
140
      </choose>
141
    </layout>
142
  </bibliography>
143
</style>

Zotero引用文献格式(软件学报)的更多相关文章

  1. 文献管理软件zotero的一点使用感受作者: 杨林畅

    作者是我的本科同学叶家鑫 http://www.renren.com/profile.do?id=240875124 文章写于去年12月,我做了一些排版上的修改,括号内的蓝字为我所加 ---- zot ...

  2. 文献管理软件 Zotero 安装、配置与使用

    简介 Zotero优缺点 使用Zotero作为主力文献管理工具的原因: 软件本身完全免费并且开源,不存在盗版问题 注册后本身只包括 300M 空间同步,但支持 WebDAV 同步,例如 Dropbox ...

  3. linux下各种格式软件的安装(引用http://blog.csdn.net/zyz511919766/article/details/7574040)

    首先介绍两个简单的方式 第一:sudo apt-get install packagename 命令 如果我们知道我们要安装的软件的确切的名称,那么我们可以简单的通过此条命令来获取和安装软件.apt- ...

  4. [工具] Citavi – 文献管理软件(笔记记录)

    https://www.citavi.com/en/ 如果你有论文写作的需求,特别是对于科研人员.研究生来说,文献管理软件是不可或缺的.目前流行的文献管理软件有老牌的 EndNote,本土化的 Not ...

  5. Mendeley文献管理软件使用介绍

    <!DOCTYPE html> New Document /* GitHub stylesheet for MarkdownPad (http://markdownpad.com) / / ...

  6. JabRef 文献管理软件

    JabRef 文献管理软件简明教程 大多只有使用LaTeX撰写科技论文的研究人员才能完全领略到JabRef的妙不可言,但随着对Word写作平台上BibTeX4Word插件的开发和便利应用,使用Word ...

  7. latex_引用参考文献格式,引用多篇参考文献

    以下内容在TeXstudio中实现: LaTeX 标准选项及其样式命令为: \bibliographystyle{type} 共有以下8种: plain,按字母的顺序排列,比较次序为作者.年度和标题. ...

  8. linux deb及rpm格式软件安装

    deb格式软件安装 deb包是debian,ubuntu等LINUX发行版的软件安装包,是类似于rpm的软件包,而非debian,ubuntu系统不推荐使用deb软件包,因为要解决软件包依赖问题,安装 ...

  9. 用 zotero 管理文献和个人知识库

    这周开始用了一下 zotero. 这是一款非常好用的文献管理工具,但它更像是一个多功能的收藏夹,或者说是一个知识.笔记.文献的综合管理工具. 入门的时候搜到了阳志平老师的几个图文并茂的教程,这里也推荐 ...

随机推荐

  1. 行内元素(例如)设置float之后才能用width调整宽度

    因为只有块元素才会有物理属性,在css世界里边,有三种形态的东西, 1. 块元素. 特性:有物理属性,width,height写值起作用,而且要占据一行.2. 内联元素. 特性:没有物理属性.但是ma ...

  2. 下载zip

  3. [ZJOI2007]最大半连通子图(Tarjan,拓扑序DP)

    [ZJOI2007]最大半连通子图 题目描述 一个有向图G=(V,E)称为半连通的(Semi-Connected),如果满足:?u,v∈V,满足u→v或v→u,即对于图中任意两点u,v,存在一条u到v ...

  4. [易学易懂系列|golang语言|零基础|快速入门|(二)]

    现在我们来写代码,首先我们要新建一个项目. 新建项目: 点击:File>>New>>Project...如下图: 在New Project窗口,Location:输入:“goP ...

  5. C#的Class的几个修饰符

    none or internal     类只能在当前的工程中访问 Public                    类可以在任何地方访问 abstract or internal abstract ...

  6. NTC电阻Rt与温度T关系

    NTC电阻Rt与温度T公式如下: Rt=10000*exp(3950*(1/(273.15+T)-1/(273.15+25))). 例:0摄氏度时,电阻为33620.6037214357 欧姆 Rt= ...

  7. LOJ 6192 城市网络(树上倍增)

    LOJ #6192. 「美团 CodeM 复赛」城市网络(链接) 一棵以 $ 1 $ 号节点为根的树,每个点有一个权值,有 $ q $ 个询问,每次从 $ x $ 点开始往某个祖先 $ y $ 走,初 ...

  8. Linux服务器调优

    Linux内核参数 http://space.itpub.net/17283404/viewspace-694350 net.ipv4.tcp_syncookies = 表示开启SYN Cookies ...

  9. Apache启动错误:could not bind to address[::]:443

    Q:Windows环境下启动apache报错如下: 可是在httpd.conf文件中apache listen的明明是http 80端口,为什么会报443的错误? A:因为你的计算机安装了VM,所有有 ...

  10. formdata方式上传文件,支持大文件分割上传

    1.upload.html <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/html"> <h ...