用于C / C ++的Markdown实现

时间:2009-05-20 18:18:01

标签: c++ c markdown

对于C或C ++,Markdown的最佳实现是什么?

我通过Google找到了这些内容,并希望了解哪些内容有效,哪些内容无效(以及哪些内容可能遗漏):

1 个答案:

答案 0 :(得分:60)

  1. peg-markdown 取决于GLib和其他第三方工具。我测试过它,效果很好。

    <强>优点:

    • GPL和麻省理工学院的双重许可。
    • 使用内部正式语法,易于维护和扩展。

    缺点:

    • 取决于GLib
    • 提供C API。
  2. Cpp-Markdown大多数C ++代码,但速度很慢,有点臃肿。另一方面,它很容易理解和修改,取决于boost-1.35。

    <强>优点

    • 仅取决于提升
    • 用C ++编写,看起来不太危险
    • 在麻省理工学院获得许可。

    <强>缺点

    • 慢(它仍然比Perl实现快10倍,但比折扣慢10倍)
  3. Discount这是我用于博客http://art-blog.no-ip.info/cppcms/blog和wiki http://art-blog.no-ip.info/wikipp/en/page/main的代码。它是由硬核C程序员编写的,并且几乎不可维护(即使是开发人员也会积极维护它)。

    <强>优点

    • 非常快
    • 用纯C编写(没有第三部分依赖)。
    • 积极维护
    • 具有许可3条款BSD许可

    <强>缺点

    • 几乎无法维持(即使我可以移除/添加一些脂肪)。
    • 只有FILE API,所以我应该调整代码,使其适用于通用缓冲区
    • 根据4条款BSD许可证授予与GPL不兼容的许可。如果您不想将其用作GPL软件的一部分,则会出现问题。
  4. 为什么我这么了解他们?

    我正在开发CppCMS,因此我需要对HTML转换器进行良好的降价。当我选择一个(折扣)时,这是唯一的解决方案。从那时起,由于许可问题,我需要更换它。也就是说,我仍然非常喜欢它,因为它是最快的Markdown解决方案。

    P.S。:如果您想要折扣的C ++包装器,请查看http://cppcms.svn.sourceforge.net/viewvc/cppcms/cms/trunk/cxxmarkdown/,它不是最新版本,但已经调整过。

    编辑:我刚刚访问过折扣网站,我发现它也添加了非FILE API。所以现在它是真正的图书馆。

    编辑2:如果您发现更好的实施或在FOSS许可下自行编写,请告知我们;)

    编辑3:如cloose评论,折扣已将许可证更改为3条款BSD。