为此,您可以使用reftex-citation.
设置
启用 RefTeX
您必须为正在编辑的文件启用 RefTeX,这可以通过M-x reftex-mode或设置文件变量来完成,例如添加-*- mode: reftex; -*-到文件的第一行。
告诉 RefTeX 你的参考书目在哪里
你需要告诉 RefTeX你的参考书目文件在哪里。这可以通过将以下内容添加到您的 .emacs 来完成(并根据您的设置编辑路径):
;; So that RefTeX finds my bibliography
(setq reftex-default-bibliography '("path/to/bibfile.bib"))
请注意,这reftex-default-bibliography是一个列表,因此您可以向其添加多个路径。
如果您对不同的文件使用不同的参考书目,最好将每个文件的参考书目告诉 RefTeX。恐怕我只知道一种丑陋的方法来做到这一点。这个想法是,由于 RefTeX 可以从 LaTeX 宏中提取正确的参考书目,因此您可以在评论中嵌入 LaTeX 宏。因此,您可以将这样的注释与参考书目规范一起添加到 Pandoc:
bibliography::bibliography_name.bib
<!-- \bibliography{bibliography_name} So that RefTeX knows about the bibliography -->
告诉 RefTeX 如何格式化引文
要reftex-citation以 Pandoc 使用的格式插入,您必须进行自定义reftex-cite-format,例如将以下内容插入到您的 .emacs 中:
(eval-after-load 'reftex-vars
'(progn
(setq reftex-cite-format '((?\C-m . "[@%l]")))))
您也可能希望包含其他格式。有关如何执行此操作的说明,请参阅https://tex.stackexchange.com/a/31992/5701。请注意,此设置是全局设置,因此如果您还将 RefTeX 用于 LaTeX,它也会受到影响。
利用
要插入引文,请执行M-x reftex-citation或C-c [然后按Enter,您可以在参考书目中插入搜索词以进行搜索。然后 RefTeX 将插入您以 Pandoc 格式选择的参考书目项目的键。