2009-05-20 9 views
36

CまたはC++用のMarkdownの最適な実装は何ですか?C/C++用のMarkdownの実装

私はグーグル経由でこれらを発見し、ものがうまく機能しているものはない(とどれ私が見逃している場合があります)これについてコメントいただければ幸いです:

+0

も参照してください。http://fletcherpenney.net/multimarkdown/ – mb21

答えて

58
  1. peg-markdownは、GLibおよび他の3番目のツールに依存します。私はそれをテストしました、それはかなりうまく動作します。

    利点:デュアルライセンスGPLとMITの下で

    • 内部的に正式な文法を使用しているため、維持と拡張が容易です。

    短所:

    • はGLibの
    • に依存CのAPIを提供します。
  2. ​​

  3. ほとんどのC++のコードが、それは非常に遅く、少し肥大化しています。一方、理解と変更は非常に簡単です。boost-1.35に依存します。

    • だけブーストC++で書かれ
    • に依存

      利点、MITライセンスの下で危険の少ない

    • のように見えます。

    デメリット

    • 遅い(それは約10倍高速Perlの実装、その後はまだですが、ディスカウントよりも約10倍遅い)
  4. Discountこれは、私のブログのために使用するコードhttp://art-blog.no-ip.info/cppcms/blogとwiki http://art-blog.no-ip.info/wikipp/en/page/main。これは、ハードコアのCプログラマによって書かれており、かなり難しい(たとえ開発者でさえもそれを維持している)。

    利点

    • 超高速純粋なCで書かれてい
    • (なし第3部の依存関係)。
    • は積極的に
    • が許容3条項BSDライセンスのを持って維持

    デメリット

    • 維持することはほとんど不可能(でも、私はいくつかのfaturesを追加/削除することもできます)。
    • FILE APIしかありませんので、一般的なバッファ で動作するようにコードを調整する必要があります。
    • GPLと互換性のない4節BSDライセンスでライセンスされています。 GPLで編集されたソフトウェアの一部として使用しない場合は、問題があります。私はそんなにそれらを知っていますかなぜ

私はCppCMSを開発しています。そのため、HTMLコンバータには良いマークダウンが必要です。私が1つ(割引)を選んだとき、それは唯一の解決策でした。それ以来、私はライセンス問題のためにそれを交換する必要がありました。それは、Markdownの最速のソリューションであるため、私はまだそれが大好きです。

P.S .:割引のC++ラッパーをご希望の場合は、http://cppcms.svn.sourceforge.net/viewvc/cppcms/cms/trunk/cxxmarkdown/をご覧ください。最新バージョンではありませんが、既に調整済みです。

EDIT:私はちょうどディスカウントサイトを訪れましたが、非FILE APIも追加していました。だから今は本当の図書館です。

EDIT 2:あなたがより良い実装を見つけるか、FOSSライセンスの下であなた自身を記述する場合、私に知らせ;)

EDIT 3:clooseはコメントとして、割引は3条項BSDライセンスを変更しました。

+0

私はDiscountの大ファンですが、選択肢の概要を把握してくれてありがとう。 – Telemachus

+0

良い概要、ありがとう! – peterchen

+0

[Discount](http://www.pell.portland.or.us/~orc/Code/discount/)のバージョン2.1.6は、GPLと互換性を持たせるために3節BSDでライセンスされました。 – cloose

関連する問題