【问题标题】:pypandoc + pandoc-citeproc to convert bib to rstpypandoc + pandoc-citeproc 将 bib 转换为 rst
【发布时间】:2015-07-08 09:50:29
【问题描述】:

我有一个带有引用的 .bib 文件,我想将该文件呈现为重​​组文本(换句话说,我的输入是文件 references.bib,而我想要的是文件 references.rst)。该转换应使用 Python 脚本完成,因此我尝试将pypandoc(0.9.7 版,pandoc 1.13.1 版)与 pandoc-citeproc 过滤器结合使用。 pypandoc 和 pandoc 安装正确,例如以下作品

import pypandoc
print(pypandoc.get_pandoc_version())

我的第一个想法是在 tex 或 md 文件中使用某种 nocite* 命令并将其转换。从命令行使用(改编的)example from the pandoc-citeproc issue tracker 时有效:

pandoc references.tex  -o references.rst --bibliography references.bib

但是我没有成功从 python 和 pypandoc 做同样的事情,我特别不清楚如何传递额外的参数,例如更改同上行为或指定CSL style(更改 biblatex 样式似乎没有效果)。

另外,我不太喜欢 .tex 文件的解决方法。 我可以以某种方式跳过那部分吗?

【问题讨论】:

    标签: python pandoc restructuredtext bibtex


    【解决方案1】:

    您可以为此使用citeproc-py。您需要:

    1. 创建一个citeproc.CitationsStyleBibliography,将引用样式、bibtex 引用源和 reStructuredText 格式化程序传递给它;
    2. 从您的书目来源注册每个元素;
    3. 打印参考书目。

    您可以在citeproc-pyexamples/ 目录或bibgen source code 中找到这些步骤的示例。请注意,bibgen allows you 直接在 reStructuredText 文档(包括 Sphinx 源)中包含参考书目,请参阅 this example

    【讨论】:

      猜你喜欢
      • 2015-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-01
      • 1970-01-01
      • 2017-09-23
      • 2011-07-28
      相关资源
      最近更新 更多