自定义citationstyles(cls)文献引用模板

时间:2024-01-13 17:52:56

最近需要用国内某期刊的模板来写东西。所以需要自定义模板。国内的期刊主要遵循GB7714-2005的文献格式。对于经常使用Zotero、mendeley等免费的知识管理工具的同学,可以从这里获取cls模板:

GB7714-2005 中文

*其它模板:Zotero Style Repository *

但是,在有了上述模板之后,我们还需要在进行一定的修改。cls文件本身是xml格式,所以用文本编辑器打开修改即可。

具体的:

语言

如果是需要英文模板,则需要定制其中的locale。将其中的 locale该文"en"


<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" default-locale="zh-CN">

改为


<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" default-locale="en">

此外,模板中的中文对应的需要改成英文

et-al字体

et-al指的是当作者数超过一定时,只显示前几个,其它的用et al省略。但是如果需要将et al斜体。则在author域下,添加<et-al term="et-al" font-style="italic"/>

  <macro name="author">
<names variable="author">
<name initialize-with=" " name-as-sort-order="all" sort-separator=" " delimiter=", " delimiter-precedes-last="always">
<name-part name="family" text-case="uppercase"/>
<et-al term="et-al" font-style="italic"/>
</name>
</names>
</macro>

其中term对应的内容,也可以改为and others,也可以去掉term="et-al"

引用序号的上角标

部分文献中,需要在文献引用处将引用序号标为上角标,此时则需要在Citation域中的layout属性里设置vertical-align。不设置是不作为角标,设置为sup则为上角标出现。如下为上角标形式:

  <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>