peg-markdown depends on GLib and other 3rd part tools. I've tested it, it works quite well.
Advantages:
Dual-licensed under GPL and MIT.
Uses internally formal grammar, so easy to maintain and extend.
Disadvantages:
Depends on GLib
Provides C API.
Cpp-Markdown, Most C++ code but it is quite slow and little bit bloated. On the other hand it is quite easy to understand and modify, Depends on boost-1.35.
Advantages
Depends only on boost
Written in C++, looks like less dangerous
Licensed under MIT.
Disadvantages
Slow (it is still about 10 times faster then Perl implementation, but about 10 times slower than Discount)
Almost impossible to maintain (even I could remove/add some fatures).
Has only FILE API, so I should tweak the code to make it work with general buffer.
Licensed under 4 clause BSD license that is incompatible with GPL. It is problematic if you want to use it not as part of your GPL-ed software.
Why do I know them so much?
I'm developing CppCMS, so I need a good markdown to HTML convertor. When I picked one (Discount), it was the only solution. Since then I've needed to replace it due to licensing issues. That said, I still quite like it because it is the fastest Markdown solution.
发布评论
评论(1)
peg-markdown 取决于 GLib 和其他第三部分工具。 我已经测试过,效果很好。
优点:
缺点:
Cpp-Markdown, 大多数 C++ 代码,但速度相当慢和有点浮肿。 另一方面它很容易理解和修改,依赖于boost-1.35。
优点
缺点
折扣,这是我在博客中使用的代码http://art-blog.no-ip.info/cppcms/blog 和 wiki http://art-blog.no-ip.info/wikipp/en/page/main。 它是由核心 C 程序员编写的,很难维护(即使开发人员积极维护它)。
优点
缺点
只有 FILE API,所以我应该调整代码以使其与通用缓冲区一起使用。根据 4 条款 BSD 许可证获得许可,但与 GPL 不兼容。 如果您不想将其用作 GPL 软件的一部分,则会出现问题。为什么我对它们这么了解?
我正在开发 CppCMS,所以我需要一个好的 Markdown 到 HTML 转换器。 当我选择一个(折扣)时,这是唯一的解决方案。 从那时起,由于许可问题,我需要更换它。 也就是说,我仍然很喜欢它,因为它是最快的 Markdown 解决方案。
PS:如果您想要 Discount 的 C++ 包装器,请查看 http: //cppcms.svn.sourceforge.net/viewvc/cppcms/cms/trunk/cxxmarkdown/,它不是最新版本,但已经进行了调整。
编辑:我刚刚访问了 Discount 网站,发现它也添加了一个非文件 API。 所以现在它是真正的图书馆。
编辑2:如果您发现更好的实现或在FOSS许可证下编写自己的实现,请告诉我;)
编辑3:正如密切评论的那样,discount已将许可证更改为3条款BSD。
peg-markdown depends on GLib and other 3rd part tools. I've tested it, it works quite well.
Advantages:
Disadvantages:
Cpp-Markdown, Most C++ code but it is quite slow and little bit bloated. On the other hand it is quite easy to understand and modify, Depends on boost-1.35.
Advantages
Disadvantages
Discount, This is the code I use for my blog http://art-blog.no-ip.info/cppcms/blog and wiki http://art-blog.no-ip.info/wikipp/en/page/main. It is written by hardcore C programmer and quite hardly mantainable (even the developer activly maintains it).
Advantages
Disadvantages
Has only FILE API, so I should tweak the code to make it work with general buffer.Licensed under 4 clause BSD license that is incompatible with GPL. It is problematic if you want to use it not as part of your GPL-ed software.Why do I know them so much?
I'm developing CppCMS, so I need a good markdown to HTML convertor. When I picked one (Discount), it was the only solution. Since then I've needed to replace it due to licensing issues. That said, I still quite like it because it is the fastest Markdown solution.
P.S.: If you want C++ wrapper for Discount, take a look on http://cppcms.svn.sourceforge.net/viewvc/cppcms/cms/trunk/cxxmarkdown/, It is not the latest version, but it is already tweaked.
EDIT: I have just visited Discount site and I had found that it had added a non-FILE API as well. So now it is real library.
EDIT 2: If you find better implementation or write your own under FOSS license, let me know ;)
EDIT 3: as cloose commented, discount had changed the license to 3 clause BSD.