Question

Quelle est la meilleure mise en œuvre de Markdown C ou C ++?

Je les ai trouvées via Google, et apprécierait des commentaires sur ceux qui fonctionnent bien et ceux qui ne le font pas (et ceux qui j'ai manqué):

Était-ce utile?

La solution

  1. peg-démarquage dépend GLib et d'autres outils 3ème partie. Je l'ai testé, cela fonctionne très bien.

    Avantages:

    • double sous licence GPL et le MIT.
    • utilise en interne la grammaire formelle, si facile à maintenir et à étendre.

    Inconvénients:

    • Dépend GLib
    • Fournit API C.
  2. Cpp-Markdown , La plupart du code C ++ mais est assez lent et peu pléthorique. D'autre part, il est assez facile à comprendre et à modifier, dépend de boost 1.35.

    Avantages

    • ne dépend que de boost
    • Ecrit en C ++, ressemble moins dangereux
    • sous licence MIT.

    Inconvénients

    • lent (il est encore d'environ 10 fois plus rapide mise en œuvre Perl, mais environ 10 fois plus lent que Discount)
  3. Discount , Voici le code que j'utilise pour mon blog http: //art-blog.no- ip.info/cppcms/blog et wiki http: // art-blog.no-ip.info/wikipp/en/page/main. Il est écrit par le hardcore programmeur C et tout à fait à peine mantainable (même le développeur maintient activly il).

    Avantages

    • extrêmement rapide
    • Écrit en pur C (pas de dépendances 3e partie).
    • activement entretenu
    • A permissive BSD 3 clause

    Inconvénients

    • Presque impossible de maintenir (même si je pouvais retirer / ajouter des fatures).
    • A seule API FILE, donc je devrais modifier le code pour le faire fonctionner avec un tampon général .
    • sous licence 4 clause licence BSD qui est incompatible avec la GPL. Il est problématique si vous voulez l'utiliser pas dans le cadre de votre logiciel licence GPL.

Pourquoi est-ce que je les connais tellement?

Je développe CppCMS , donc je besoin d'un bon démarquage au convertisseur HTML. Quand je pris un (rabais), il était la seule solution. Depuis, j'ai besoin de le remplacer en raison de problèmes de licence. Cela dit, je reste tout à fait comme ça parce qu'il est la solution la plus rapide Markdown.

PS: Si vous voulez C ++ wrapper pour Discount, jetez un coup d'oeil sur http://cppcms.svn.sourceforge.net/viewvc/cppcms/cms/trunk/cxxmarkdown/ , il n'est pas la dernière version, mais il est déjà configuré.

EDIT: Je viens de visiter le site Discount et je l'avais trouvé qu'il avait ajouté une API non-FILE ainsi. Il est donc maintenant vraie bibliothèque.

EDIT 2: Si vous trouvez une meilleure mise en œuvre ou écrivez votre propre sous licence des logiciels libres, laissez-moi savoir;)

EDIT 3:. comme cloose a commenté, remise avait changé la licence BSD à 3 clause

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top