38

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

私はグーグルでこれらを見つけました、そしてどれがうまくいくか、そしてどれがうまくいかないか(そして私が見逃したかもしれないもの)についてのコメントをいただければ幸いです:

4

1 に答える 1

62
  1. peg-markdownは、GLib およびその他のサードパーティ ツールに依存します。私はそれをテストしました、それはかなりうまくいきます。

    利点:

    • GPL と MIT の下でデュアル ライセンスが付与されています。
    • 内部的に形式的な文法を使用しているため、保守と拡張が容易です。

    短所:

    • GLibに依存
    • C API を提供します。
  2. Cpp-Markdownほとんどの C++ コードですが、非常に遅く、少し肥大化しています。一方、理解と変更は非常に簡単です。boost-1.35 に依存します。

    利点

    • ブーストのみに依存
    • C++ で書かれているため、危険度が低いように見えます
    • MIT の下でライセンスされています。

    短所

    • 遅い (Perl の実装よりも約 10 倍高速ですが、Discount よりも約 10 倍遅い)
  3. 割引これは私のブログhttp://art-blog.no-ip.info/cppcms/blogと wiki http://art-blog.no-ip.info/wikipp/en/page/で使用するコードですメイン。それは筋金入りの C プログラマーによって書かれており、保守が非常に困難です (開発者でさえ積極的に保守しています)。

    利点

    • 非常に高速
    • 純粋な C で書かれています (サードパーティの依存関係はありません)。
    • 積極的に維持
    • 寛容な 3 条項 BSD ライセンスを持っています

    短所

    • 維持することはほとんど不可能です(いくつかの機能を削除/追加することさえできました)。
    • FILE API しかないので、一般的な buffer で動作するようにコードを微調整する必要があります
    • GPL と互換性のない 4 条項 BSD ライセンスの下でライセンスされています。GPL で保護されたソフトウェアの一部として使用したくない場合は問題があります。

なぜ私は彼らをそんなに知っているのですか?

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

PS: 割引用に C++ ラッパーが必要な場合は、http://cppcms.svn.sourceforge.net/viewvc/cppcms/cms/trunk/cxxmarkdown/を参照してください。これは最新バージョンではありませんが、既に微調整されています。

編集:割引サイトにアクセスしたところ、ファイル以外の API も追加されていることがわかりました。だから今は本当の図書館です。

編集 2:より良い実装を見つけた場合、または FOSS ライセンスの下で独自の実装を作成した場合は、お知らせください ;)

EDIT 3:クローズコメントのとおり、割引によりライセンスが 3 条項 BSD に変更されました。

于 2009-05-20T19:52:00.380 に答える