我是reStructuredText的忠实粉丝,但是支持它的工具分散在整个 Internet 上。官方工具列表不完整和/或过时,只能通过提交权限进行更新。一段时间以来,在Wikipedia reStructuredText 页面上有一个综合列表,但这显然“不符合 web 内容的知名度指南”并被删除。
因此,以问题形式提出:在使用 reStructuredText 时可以期望找到哪些工具支持,例如文本编辑器、Wiki 软件、与 reStructuredText 之间的转换器等?
我是reStructuredText的忠实粉丝,但是支持它的工具分散在整个 Internet 上。官方工具列表不完整和/或过时,只能通过提交权限进行更新。一段时间以来,在Wikipedia reStructuredText 页面上有一个综合列表,但这显然“不符合 web 内容的知名度指南”并被删除。
因此,以问题形式提出:在使用 reStructuredText 时可以期望找到哪些工具支持,例如文本编辑器、Wiki 软件、与 reStructuredText 之间的转换器等?
从旧版本的 Wikipedia 页面中抢救(和扩展)列表:
虽然 reStructuredText 的参考实现是用 Python 编写的,但也有其他语言的 reStructuredText 解析器。
reStructuredText 的主要发行版是Python Docutils包。它包含几个转换工具:
Pandoc是一个用于从一种标记格式转换为另一种标记格式的 Haskell 库,以及使用该库的命令行工具。它可以读取 Markdown 和(子集)reStructuredText、HTML 和 LaTeX,它可以编写 Markdown、reStructuredText、HTML、LaTeX、ConTeXt、PDF、RTF、DocBook XML、OpenDocument XML、ODT、GNU Texinfo、MediaWiki 标记、groff man页面和 S5 HTML 幻灯片放映。
有一个Pandoc 在线工具(POT) 可以试用这个库。不幸的是,与reStructuredText 在线渲染器(ROR)相比,
docutils
)JRst 是一个 Java reStructuredText 解析器。它目前可以输出 HTML、XHTML、DocBook xdoc 和 PDF,但似乎有严重的问题:PDF 或 (X)HTML 生成都不能使用当前的完整下载,(X)HTML 中的结果页面是空的,并且在 IO 上生成 PDF 失败XSL 文件的问题(未捆绑??)。请注意,原始 JRst已从网站上删除;在 GitHub 上找到了一个 fork 。
Laika是一个用于将标记语言转换为其他输出格式的新库。目前它支持来自 Markdown 和 reStructuredText 的输入并产生 HTML 输出。该库是用 Scala 编写的,但也应该可以从 Java 中使用。
Nim编译器具有 将reStructuredText 文件转换为 HTML 和 TeX 文件rst2html
的命令。rst2tex
标准库提供以下模块(由编译器使用)以编程方式处理 reStructuredText 文件:
这些工具中的大多数(但不是全部)都基于 Docutils(见上文),并提供与主发行版可能不支持的格式之间的转换。
pip
python 包需要docutils
,它进行实际渲染。restview
的主要易用性功能是,当您保存对文档的更改时,它会自动重新渲染并重新显示它们。restview
docutils
将您的文档呈现为 HTML 的调用一些项目使用 reStructuredText 作为基线来构建,或提供额外的功能来扩展 reStructuredText 工具的实用程序。
Sphinx文档生成器将一组 reStructuredText 源文件转换为各种输出格式,自动生成交叉引用、索引等。
rest2web是一个简单的工具,可让您从单个模板(或任意数量的模板)构建您的网站,并将内容保存在 reStructuredText 中。
Pygments是一个通用的语法高亮工具,用于各种软件,例如论坛系统、Wiki 或其他需要美化源代码的应用程序。请参阅在 reStructuredText 文档中使用 Pygments。
虽然任何纯文本编辑器都适合编写 reStructuredText 文档,但有些编辑器比其他编辑器有更好的支持。
通过 rst-mode 提供的Emacs 支持是 Docutils 包的一部分,位于/docutils/tools/editors/emacs/rst.el
大多数 GNU/Linux 发行版附带的vim-common
软件包具有开箱即用的 reStructuredText 语法高亮和缩进支持:
gedit,GNOME 桌面环境的官方文本编辑器。有一个gedit reStructuredText 插件。
Geany是一个小型轻量级集成开发环境,从0.12 版(2007 年 10 月 10 日)开始支持 reStructuredText 。
Leo是一个程序员的大纲编辑器,通过rst-plugin或“@auto-rst”节点支持 reStructuredText(它没有很好的文档,但 @auto-rst 节点允许直接编辑 rst 文件,将结构解析为 Leo 大纲) .
它还提供了一种在“viewrendered”窗格中预览生成的 HTML 的方法。
FTE折叠文本编辑器 - 为开发人员提供的免费(根据 GNU GPL 许可)文本编辑器。FTE具有reStructuredText 支持的模式。它提供了基本 RSTX 元素的颜色突出显示和特殊菜单,提供了将最流行的 RSTX 元素插入文档的简便方法。
PyK是 PyEdit 和 reStInPeace 的继承者,在 Qt4 工具包的帮助下用 Python 编写。
带有ReST Editor 插件的 Eclipse IDE支持编辑 reStructuredText 文件。
NoTex是一个基于浏览器的(通用)文本编辑器,具有集成的项目管理和语法高亮功能。此外,它还可以使用 rST 编写书籍、报告、文章等,并将它们转换为 LaTex、PDF 或 HTML。PDF 文件具有很高的出版质量,是通过 Sphinx 使用 Texlive LaTex 套件生成的。
Notepad++是一个通用的 Windows 文本编辑器。它具有内置的许多语言的语法突出显示,并通过用户定义的语言 reStructuredText 支持 reStructuredText。
Visual Studio Code是适用于 Windows/macOS/Linux 的通用文本编辑器。它内置了许多语言的语法突出显示,并通过LeXtudio的扩展支持 reStructuredText 。
Sublime Text是一个完全可定制和可扩展的源代码编辑器,可用于 Windows、OS X 和 Linux。长期使用需要注册,但未注册版本所有功能都可用,偶尔会提示购买许可证。版本2和3(目前处于测试阶段)默认支持 reStructuredText 语法突出显示,并且可以通过包管理器Package Control使用几个插件来提供片段和代码完成、额外的语法突出显示、与 RST 和其他格式的转换以及 HTML 预览在浏览器中。
适用于 Mac 的BBEdit(及其免费变体TextWrangler)可以使用此无代码语言模块语法高亮 reStructuredText 。
TextMate是 Mac OS X 的专有通用 GUI 文本编辑器,具有reStructuredText 的捆绑包。
Intype是 Windows 的专有文本编辑器,支持开箱即用的 reStructuredText。
E是根据“开放公司许可证”获得许可的专有文本编辑器。它支持 TextMate 的捆绑包,因此它应该像 TextMate 一样支持 reStructuredText。
PyCharm(和其他 IntelliJ 平台 IDE?)支持 ReST/Sphinx(语法高亮、自动完成和预览)。)
以下是一些支持 reStructuredText 标记作为本机标记语法或附加组件的 Wiki 程序:
MediaWiki reStructuredText 扩展允许在MediaWiki<rst>
中使用和包围的reStructuredText 标记</rst>
。
MoinMoin 是一个先进的、易于使用和可扩展的维基引擎,拥有庞大的用户社区。简而言之,它是关于易于编辑的网页上的协作。
MoinMoin有一个reStructuredText 解析器。
Trac 是用于软件开发项目的增强型 wiki 和问题跟踪系统。Trac中有reStructuredText 支持。
这个 Wiki是由 Ian Bicking 编写的 Python Wiki 网络软件。本 wiki 使用 ReStructuredText 作为其标记。
rstiki是一个简约的单文件个人 wiki,使用受 pwyky 启发的 reStructuredText 语法(通过 docutils )。它不支持作者身份指示、版本控制、层次结构、镀铬/框架/模板或样式。它利用 docutils/reStructuredText 作为 wiki 语法。因此,它不到 200 行代码,并且在一个文件中。你把它放在一个目录中,它就会运行。
Ikiwiki是一个 wiki 编译器。它将 wiki 页面转换为适合在网站上发布的 HTML 页面。Ikiwiki 将页面和历史存储在修订控制系统中,例如 Subversion 或 Git。还有许多其他功能,包括对博客的支持以及大量插件。它是reStructuredText 插件,但是有一定的限制,目前不推荐作为它的主要标记语言。
Online reStructuredText 编辑器可用于处理标记并立即查看结果。
WordPress 的WordPreSt reStructuredText 插件。(PHP)
Zine的reStructuredText 解析器插件(当 Zine 计划获得原生 reStructuredText 支持时,将在 0.2 版中过时)。Zine 已停产。(Python)
Pelican是一个静态博客生成器,支持用 ReST 写文章。(Python)
Hyde是一个支持 ReST 的静态网站生成器。(Python)
Acrylamid是一个静态博客生成器,支持在 ReST 中撰写文章。(Python)
Nikola是一个支持 ReST 的静态站点和博客生成器。(Python)
Ipsum Genera是一个用 Nim 编写的静态博客生成器。
Yozuch是一个用 Python 编写的静态博客生成器。