2009-05-20 15 views

risposta

58
  1. peg-markdown dipende da GLib e altri strumenti di terze parti. L'ho provato, funziona abbastanza bene.

    Vantaggi:

    • doppia licenza sotto licenza GPL e MIT.
    • Utilizza grammatica interna formale, così facile da mantenere ed estendere.

    Svantaggi:

    • Dipende dal GLib
    • Fornisce API C.
  2. Cpp-Markdown, codice C++ La maggior parte, ma è piuttosto lento e un po 'gonfio. D'altra parte è abbastanza facile da capire e modificare, dipende da boost-1.35.

    Vantaggi

    • dipende solo dalla spinta
    • Scritto in C++, si presenta come meno pericoloso
    • sotto licenza MIT.

    Svantaggi

    • lenta (è ancora di circa 10 volte più veloce implementazione Perl, ma circa 10 volte più lento di sconto)
  3. Discount, Questa è la codice che uso per il mio blog http://art-blog.no-ip.info/cppcms/blog e wiki http://art-blog.no-ip.info/wikipp/en/page/main. È scritto dal programmatore C hardcore e abbastanza poco maneggevole (anche lo sviluppatore lo mantiene attivamente).

    Vantaggi

    • estremamente veloce
    • Scritto in puro C (senza 3rd dipendenze parte).
    • attivamente mantenuto
    • Ha permissiva licenza BSD 3 clausola

    Svantaggi

    • Quasi impossibile da mantenere (anche ho potuto rimuovere/aggiungere alcune fatures).
    • Ha solo API FILE, quindi dovrei modificare il codice per farlo funzionare con il buffer generale .
    • Concesso in licenza con 4 clausole BSD non compatibile con GPL. È problematico se si desidera utilizzarlo non come parte del software GPL-ed.

Perché faccio a sapere così tanto?

Sto sviluppando CppCMS, quindi ho bisogno di un buon markdown per il convertitore HTML. Quando ho scelto uno (sconto), era l'unica soluzione. Da allora ho dovuto sostituirlo a causa di problemi di licenza. Detto questo, mi piace ancora perché è la soluzione Markdown più veloce.

P.S .: Se si desidera un wrapper C++ per Discount, dare un'occhiata a http://cppcms.svn.sourceforge.net/viewvc/cppcms/cms/trunk/cxxmarkdown/, non è l'ultima versione, ma è già ottimizzato.

MODIFICA: Ho appena visitato il sito di sconto e ho scoperto che aveva aggiunto anche un'API non FILE. Quindi ora è una vera biblioteca.

EDIT 2: Se trovate una migliore attuazione o lascia la tua licenza FOSS, fatemelo sapere;)

EDIT 3: come cloose commentato, sconto aveva cambiato la licenza per 3 clausola di BSD.

+0

Sono un grande fan di Discount, ma grazie per la buona panoramica delle scelte. – Telemachus

+0

buona panoramica, grazie! – peterchen

+0

La versione 2.1.6 di [Sconto] (http://www.pell.portland.or.us/~orc/Code/discount/) è stata concessa in licenza in 3-clausole BSD per renderla compatibile con GPL. – cloose