问题
I have a pandoc-style Markdown text where I cite two papers by the same author in the same place:
Lorem ipsum [@Author2000;@Author2001] dolor sit amet.
This is rendered as
Lorem ipsum (Author 2001, 2000) dolor sit amet.
Why are these citations sorted this way, contradicting the sequence in my text, contradicting author-year sorting, and contradicting the sequence in which they appear in the list of references? How can I change this? Is it possible to switch off any kind of sorting and keep the order in which I specify the citations?
More information: The text is converted by pandoc with the options --filter pandoc-citeproc --csl=elsevier-harvard.csl
into latex and then processed with xelatex. The csl file can be downloaded from Zotero. Pandoc is v1.13.2, pandoc-citeproc is v0.6.
回答1:
In-text citation formatting is defined by your CSL between <citation></citation>
tags. The sorting of your citations is defined between the <sort></sort>
tags. The CSL you are using sorts by author and then by descending date issued - (Author 2001, 2000):
<citation ...>
<sort>
<key macro="author"/>
<key macro="issued" sort="descending"/>
</sort>
...
</citation>
To sort by author and then by ascending date issued - (Author 2000, 2001):
<citation ...>
<sort>
<key macro="author"/>
<key macro="issued" sort="ascending"/>
</sort>
...
</citation>
To not sort the citations, just remove everything between the <sort></sort>
tags.
<citation ...>
<sort>
</sort>
...
</citation>
来源:https://stackoverflow.com/questions/28902783/how-does-pandoc-citeproc-sort-citations