用markdown写论文04引用参考文

用markdown写论文|04引用参考文献(下)写在前面

本篇接着上一期,针对输出的docx文件进行引文样式的调整。

总所周知,在论文里面最难调整的就是引文的参考格式了,所以我们才会借助各种文献管理软件,因为它们往往都拥有调整引文样式的功能。而它们之所以能任意切换不同的引文样式是因为一种文件格式.csl。

这个.csl是citation-style-language/styles的缩写,它定义了引文的样式。在pandoc中,如果你只传入了--citeproc参数的话,默认的引文样式为chicago-author-date,也就是芝加哥著者年代制的样式。而不同的期刊,往往有着不同的要求。

在pandoc中设置csl样式

在pandoc中使用csl样式很简单,使用参数--csl来指定你的.csl文件的路径,但先决条件是你必须先指定--citeproc参数来使得pandoc渲染引文。

为了方便,你可以把.csl格式的文件放在和.md等文件同一目录下,这样就可以直接用相对路径来指定,使得内容更加简洁。像我这里就专门创建了一个叫markdown教程的文件夹,把涉及到的内容都放在这里,这样比较直观。

.├──input.md├──metadata.yaml├──nature.csl└──test.bibinput.md:就是我们写内容的markdown本体;metadata.yaml:还记得metadata元信息吧,这个文件就是配置这些的;test.bib:存放我们所有参考文献信息的文件;nature.csl:这个就是一个配置引文样式的文件,它是nature的样式所以我们只需要运行下面的命令,就可以得到一个output.docx:

pandoc--citeproc--bibliography=test.bib--csl=nature.cslinput.md-ooutput.docx导出nature样式的文档

是不是很简单,导出带有自己想要的引文样式只需要指定好对应的.csl文件就可以了。

这里我忘记加上参数-Mreference-section-title="参考文献"了,所以在结尾的引文书目Bibliography处没有出现对应的标题。

如何获取csl文件?

其实Zotero中内置了一些常用的.csl文件,我们可以通过在Zotero中的偏好设置里,找到「引用」,就可以看到内置的一些引文样式,而这些文件所在的位置为:~/Zotero/styles。

Zotero中的csl文件

Tips:~表示用户的主目录,/表示根目录,一般root用户进入的目录就是根目录,.表示当前目录,..表示上级的父目录,这样对于在终端里切换路径比较有帮助哦。

在Zotero里,打开「偏好设置」→「引用」→「获取更多样式」,就会打开一个弹窗,在里面你可以选择数百种引文样式,也可以搜索和预览,遇到你需要的可以单击一下就下载到刚刚提到的路径下面了,之后你在pandoc中用绝对路径指定位于Zotero中的路径也好,还是像我一样拷贝出去用相对路径指定都可以。

Zotero里获取更多样式

如果这些样式都不符合你的要求的话,你可以在Zotero中的样式编辑器里对你已有的样式进行可视化微调,这里就不详细说了,又是一个够折腾的主题。

但是这里会有一个缺点,就是一旦涉及到中文和英文的双语,引文中的etal.和等,and和和只能出现一种,这是不管你用markdown还是直接在Word里使用文献管理工具都会遇到的问题,这个问题貌似没有比较好的解决办法,但我之前有一期提到过使用正则的思想来解决一日一技|Word篇|批量修改「etal.」与「等」。

结语

这样,使用markdown写论文的大体功能到这里就全部介绍了,下一期,我们就把整个内容都串在一起,用一篇实例来演示整个完整的流程。并主要理清在渲染结果中.yaml、.bib、.csl等文件是如何各司其责的。

预览时标签不可点收录于话题#个上一篇下一篇

转载请注明:http://www.shijichaoguyj.com/wxjq/11386.html

网站简介| 发布优势| 服务条款| 隐私保护| 广告合作| 网站地图| 版权申明

当前时间: