【问题标题】:Better ruby markdown interpreter?更好的 ruby​​ markdown 解释器?
【发布时间】:2010-09-27 05:51:58
【问题描述】:

我正在尝试找到一个可以在 rakefile 中使用的 Markdown 解释器类/模块。

到目前为止,我已经找到了maruku,但我对 beta 版本有点警惕。

有人对maruku有任何问题吗?或者,您知道更好的选择吗?

【问题讨论】:

    标签: ruby markdown


    【解决方案1】:

    我每天使用 Maruku 处理 100,000 - 200,000 个文档。主要是论坛帖子,但我也将它用于大型文档,如 wiki 页面。 Maruku 比 BlueCloth 快得多,并且不会阻塞大型文档。这都是 Ruby,虽然代码不是特别容易扩展和增强,但它是可行的。我们对 Markdown 方言进行了一些调整和补充。

    如果你想要纯 Ruby,我绝对推荐 Maruku。

    对于最快的选项,您可能需要 RDiscount。胆量是在 C 中实现的。

    另请参阅:Ryan Tomayko 博客上的“Moving Past BlueCloth”。 Ryan 的帖子包含以下 100 次降价测试迭代的基准测试:

    BlueCloth: 13.029987s total time, 00.130300s average
       Maruku: 08.424132s total time, 00.084241s average
    RDiscount: 00.082019s total time, 00.000820s average
    


    2009 年 8 月更新

    BlueCloth2 已发布 (http://www.deveiate.org/projects/BlueCloth) 它的速度与 RDiscount 相当,因为它基于 RDiscount - 它不是纯 Ruby。

    (感谢Jim


    2009 年 11 月更新

    Kramdown 1.0 was just released。我还没有尝试过,但它是一个纯 Ruby Markdown 解析器,声称比 Maruku 快 5 倍。


    2011 年 4 月更新

    自 2010 年 6 月以来,Maruku 没有看到任何提交。您可能希望改为查看 Kramdown。

    一个新的非纯 Ruby 的快速选项:GitHub 发布了基于 libupskirt 的 Redcarpet:https://github.com/blog/832-rolling-out-the-redcarpet

    2013 年 8 月更新

    Kramdown 仍然是一个非常健康的项目(基于最近的提交、未解决的问题、拉取请求)并且是纯 Ruby Markdown 引擎的绝佳选择https://github.com/gettalong/kramdown

    对于不需要或想要纯 Ruby 的人来说,Redcarpet 可能仍然是最常用和积极维护的选项。

    【讨论】:

    • 给了你+1,因为你把更新部分!
    • 我不能说这里的更新部分有多么有用。只是在谷歌上搜索一个 Ruby 解决方案会导致一堆在当时可能很棒的实现,但这提供了很多上下文。
    • 这就是为什么我喜欢 StackOverflow 的社区(真的是整个 Exchange) - 一种完全不必要和不请自来的慷慨和认真。
    • Kramdown's tests page 目前包含所有库的 2012 年 2 月基准测试。
    • 我必须指出,Kramdown 偏离了 Markdown 标准。例如,(我发现)你不能在标题内有链接。如果你碰巧有很多预先存在的 Markdown 文档,你应该警惕这一点。
    【解决方案2】:

    http://ruby-toolbox.com/categories/markup_processors.html 的列表将是开始寻找的好地方。

    【讨论】:

    • +1 所有这些其他答案都会很快过时,但只要 ruby​​-toolbox 存在,该列表就应该保持最新。
    【解决方案3】:

    RDiscount 快速且易于使用。

    【讨论】:

      【解决方案4】:

      试试RDiscount。 BlueCloth 很慢而且有问题。

      【讨论】:

      【解决方案5】:

      casey 给出的答案中的基准使用 BlueCloth 1。BlueCloth 2 目前是最快的:http://www.deveiate.org/projects/BlueCloth

      【讨论】:

        【解决方案6】:

        我相信BlueCloth 是最突出的一个。

        【讨论】:

          【解决方案7】:

          看起来很多这些答案已经过时了。

          到目前为止(2013 年夏季)我在那里发现的最好的东西是 Redcarpet gem:https://github.com/vmg/redcarpet

          【讨论】:

            【解决方案8】:

            为确保您获得 BlueCloth 2,请按如下方式安装:

            gem install bluecloth
            

            请注意,“bluecloth”应全部小写,而不是驼峰式。

            来源:http://rubygems.org/gems/bluecloth

            【讨论】:

              【解决方案9】:

              如果你需要一个公平的例子来说明如何在 rakefile 中使用类似 Kramdown 的东西,github 上有一个 repo,其中包含 markdown.md 中的代码和文章,可以通过 Ruby 代码语法突出显示但也可以转换为 html 行号.(我宁愿关闭行号)

              如果有人知道如何关闭默认的行号,请告诉我们。

              反正链接是https://github.com/elm-city-craftworks/practicing-ruby-manuscripts

              【讨论】:

                猜你喜欢
                • 2013-03-19
                • 1970-01-01
                • 1970-01-01
                • 2011-05-08
                • 1970-01-01
                • 2011-03-22
                • 2011-12-08
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多