128

我是reStructuredText的忠实粉丝,但是支持它的工具分散在整个 Internet 上。官方工具列表不完整和/或过时,只能通过提交权限进行更新。一段时间以来,在Wikipedia reStructuredText 页面上有一个综合列表,但这显然“不符合 web 内容的知名度指南并被删除

因此,以问题形式提出:在使用 reStructuredText 时可以期望找到哪些工具支持,例如文本编辑器、Wiki 软件、与 reStructuredText 之间的转换器等?

4

1 回答 1

448

从旧版本的 Wikipedia 页面中抢救(和扩展)列表:

文档

实现

虽然 reStructuredText 的参考实现是用 Python 编写的,但也有其他语言的 reStructuredText 解析器。

Python - Docutils

reStructuredText 的主要发行版是Python Docutils包。它包含几个转换工具:

  • rst2html - 从 reStructuredText 到HTML
  • rst2xml - 从 reStructuredText 到XML
  • rst2latex - 从 reStructuredText 到LaTeX
  • rst2odt - 从 reStructuredText 到ODF 文本(文字处理器)文档。
  • rst2s5 - 从 reStructuredText 到S5,一个简单的基于标准的幻灯片放映系统
  • rst2man - 从 reStructuredText 到手册

Haskell - 潘多克

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)相比,

  • POT 会更短地截断输入。POT 用户必须以可以由 ROR 整体呈现的块的形式呈现输入。
  • POT 输出缺少 ROR 显示的有用错误消息(并由 生成docutils

Java - JRst

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 中使用。

Perl

PHP

C#/.NET

镍/碳

Nim编译器具有 将reStructuredText 文件转换为 HTML 和 TeX 文件rst2html的命令。rst2tex标准库提供以下模块(由编译器使用)以编程方式处理 reStructuredText 文件:

  • rst - 实现一个 reStructuredText 解析器
  • rstast - 为 reStructuredText 解析器实现 AST
  • rstgen - 从 reStructuredText 实现 HTML/Latex 的生成器

其他 3rd 方转换器

这些工具中的大多数(但不是全部)都基于 Docutils(见上文),并提供与主发行版可能不支持的格式之间的转换。

来自 reStructuredText

  • restview - 这个可安装的pippython 包需要docutils,它进行实际渲染。restview的主要易用性功能是,当您保存对文档的更改时,它会自动重新渲染并重新显示它们。restview
    1. 启动一个小型 Web 服务器
    2. docutils将您的文档呈现为 HTML 的调用
    3. 调用您设备的浏览器以显示输出 HTML。
  • rst2pdfrinohtype - 从 reStructuredText 到 PDF
  • rst2odp - 从 reStructuredText 到 ODF 演示
  • rst2beamer - 从 reStructuredText 到 LaTeX beamer 演示类
  • Wikir - 从 reStructuredText 到 Google(可能还有其他)Wiki 格式
  • rst2qhc - 将 reStructuredText 文件集合转换为 Qt(工具包)帮助文件和(可选)Qt 帮助项目文件

重构文本

  • xml2rst是一个 XSLT 脚本,用于将 Docutils 内部 XML 表示(返回)转换为 reStructuredText
  • Pandoc(见上文)也可以从 Markdown、HTML 和 LaTeX 转换为 reStructuredText
  • db2rst是一个简单且有限的 DocBook 到 reStructuredText 翻译器
  • pod2rst - 将 .pod 文件转换为 reStructuredText 文件

扩展

一些项目使用 reStructuredText 作为基线来构建,或提供额外的功能来扩展 reStructuredText 工具的实用程序。

狮身人面像

Sphinx文档生成器将一组 reStructuredText 源文件转换为各种输出格式,自动生成交叉引用、索引等。

rest2web

rest2web是一个简单的工具,可让您从单个模板(或任意数量的模板)构建您的网站,并将内容保存在 reStructuredText 中。

Pygments

Pygments是一个通用的语法高亮工具,用于各种软件,例如论坛系统、Wiki 或其他需要美化源代码的应用程序。请参阅在 reStructuredText 文档中使用 Pygments

免费编辑

虽然任何纯文本编辑器都适合编写 reStructuredText 文档,但有些编辑器比其他编辑器有更好的支持。

Emacs

通过 rst-mode 提供的Emacs 支持是 Docutils 包的一部分,位于/docutils/tools/editors/emacs/rst.el

维姆

大多数 GNU/Linux 发行版附带的vim-common软件包具有开箱即用的 reStructuredText 语法高亮和缩进支持:

杰德

Jed程序员编辑器有第一种模式

编辑

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 。

专用的 reStructuredText 编辑器

专有编辑

崇高的文本

Sublime Text是一个完全可定制和可扩展的源代码编辑器,可用于 Windows、OS X 和 Linux。长期使用需要注册,但未注册版本所有功能都可用,偶尔会提示购买许可证。版本23(目前处于测试阶段)默认支持 reStructuredText 语法突出显示,并且可以通过包管理器Package Control使用几个插件来提供片段和代码完成、额外的语法突出显示、与 RST 和其他格式的转换以及 HTML 预览在浏览器中。

BBEdit / TextWrangler

适用于 Mac 的BBEdit(及其免费变体TextWrangler)可以使用此无代码语言模块语法高亮 reStructuredText 。

文本伴侣

TextMate是 Mac OS X 的专有通用 GUI 文本编辑器,具有reStructuredText 的捆绑包

输入

Intype是 Windows 的专有文本编辑器,支持开箱即用的 reStructuredText。

E 文本编辑器

E是根据“开放公司许可证”获得许可的专有文本编辑器。它支持 TextMate 的捆绑包,因此它应该像 TextMate 一样支持 reStructuredText。

PyCharm

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

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 编写的静态博客生成器。

更多的

于 2010-04-30T19:17:01.667 回答