我对Pandoc还是比较陌生,我正在尝试使用出版物生成HTML文件以放在我的网站上。我想按年顺序对出版物清单进行编号和组织,最新的出版物排在第一位,最旧的出版物排在最后。
使用正确的csl
文件可以很好地编号,但是不能进行年份排序。问题是我并不是所有出版物的第一作者,所以最终发生的事情是,它们是按字母顺序首先按字母顺序组织的,然后按日期排列,这不是我想要的。
通过将biblatex
与选项sorting=ydnt
(年份(降序),名称,标题)一起使用, <sort>
<key variable="citation-number"/>
</sort>
可以得到想要的结果,但是由于Pandoc不使用biblatex来生成引用HTML的列表,我在这里不能使用这种策略。
我能看到如何解决此问题的唯一方法是在Zotero style repo中获得符合我想要的引用样式,但我一直找不到。因此,我正在尝试修改其中一项,但是没有成功。
This answer讲授了一种更改排序样式的方法,因此我尝试手动更改《皇家学会B风格》的排序样式。具体来说,我正在改变
<sort>
<key macro="issued" sort="descending"/>
<key macro="author"/>
</sort>
到
2.7.3
但是那是行不通的(可能是因为这仅更改了文本引用的排序,而不是引用列表)。我尝试了其他几件事,但是找不到有效的方法!
我猜这无关紧要,但是我使用的是Pandoc citeproc
,0.16.2
版本---
bibliography: selectedpubs.bib
nocite: '@*'
linestretch: 1.5
fontsize: 12pt
output:
html:
output: pubpage.html
filter: pandoc-citeproc
csl: prsb2.csl
...
,运行的文件是:
prsb2.csl
文件{{1}}只是Proceedings of the Royal Society B csl。
答案 0 :(得分:1)
您的想法正确,但误解了链接的线程。除了要更改引文的排序键之外,您还想向书目添加排序,即
<bibliography second-field-align="flush" et-al-min="11" et-al-use-first="10">
<sort>
<key macro="issued" sort="descending"/>
<key macro="author"/>
</sort>
<layout>
除了修改样式之外,您还可以使用存储库中已经存在的APA-CV样式