書接上回,使用 Obsidian, Zotero, JabRef, Pandoc, Markup-Markdown | 撰寫論文 paper
管理論文引用,生成參考文獻
- TL; DR
- 導出 bibliography 文件
- JabRef
- Zotero
- 參考文獻引用語法
- reference-doc
- Links
TL; DR
安裝 pandoc v3.6.2. 使用一下命令,將 markdown 轉化為論文的 word 文件。
pandoc --from markdown+footnotes+citations \--wrap=none \--reference-doc=../styles/project_paper.docx \--csl=refs/diabetologia.csl \--citeproc \--bibliography=manual_20250203.yaml \--bibliography=refs.yaml \-i index.md -o index.docx
命令解釋:
- markdown+footnotes+citations: 設置pandoc 的插件
- reference-doc:論文的格式
- csl:引用參考文獻的語法;diabetologia.csl 在 https://www.zotero.org/styles?q=diabetologia 下載
- citeproc:明確使用哪個插件處理交叉引用
- bibliography:參考文獻的索引文件,bibliography 文獻管理可以通過 zotero 自動導出或 JabRef 手動維護;支持添加多個 bibliography。
如果在 Markdown 中,使用了
[@Hinton2006] [@Krizhevsky2017]
...# References
那么,對應的生成的 docx 就會包含(轉化后的文本):
以及參考文獻內容:
注意:Markdown 文件的最后一行必須是 # References
,否則將不生成參考文獻列表,見官方文檔。
導出 bibliography 文件
導出 bibliography 文件的格式使用:CSL YAML. 比如 JabRef 中,通過 File -> Export 進行導出。
注意:不要直接改 CSL YAML 文件,而是使用 JabRef 或 Zotero 進行維護,因為 JabRef 或 Zotero 不能直接打開 CSL YAML 文件。
JabRef
Zotero
Zotero 導出如下,選擇一個 Collection 右鍵 -> Export Collection, 選擇 Better CSL YAML(需要安裝插件 Better BibTeX for Zotero).
參考文獻引用語法
在 Markdown 中使用 CitationKey,生成參考文獻引用,對應格式如下:
除了使用 []
的形式添加引用,也可以用文本的形式:
reference-doc
reference-doc 就是樣式文件,比如生成 docx 的大標題、二級標題、行間距、正文字體等。
最快的獲得一個 reference-doc 模版的方法,就是先用 pandoc 將一個 markdown 轉化為 docx 文件,然后以這個文件為藍本,更新頁眉、頁腳、headings。
更多關于 reference-doc 的介紹,參考官方文檔。
Links
Scholarly Writing Citations
zotero csl styles
Bibliographies 以及 Citations
Citations of Pandoc