cmark

    A CommonMark toolkit for MoonBit

    commonmark
    markdown
    Download zip
    Version
    0.4.14
    License
    Apache-2.0
    Last updated
    18 hours ago
    Downloads
    114K

    #cmark

    Cmark is a CommonMark toolkit for the MoonBit programming language, started as a MoonBit rewrite of the cmarkit library from the OCaml ecosystem.

    So far, it supports the following use cases:

    • Parsing CommonMark documents with best-effort source-aware layout preservation:
    • Rendering CommonMark documents via the Renderer API, along with a ready-to-use HTML renderer.

    Supported CommonMark features include:

    • Vanilla CommonMark syntax;
    • Common syntax extensions, including:
      • Strikethroughs
      • Task lists
      • Footnotes
      • Tables
      • Inline math
      • Math blocks

    #Building

    To begin, you will need to install a recent MoonBit toolchain. To do so, please refer to instructions at MoonBit's official website.

    Also, a Python installation is required to run the pre-build scripts. You can find relevant instructions from Python's official website.

    Once you have the toolchain installed, you can build this project by running the following command:

    moon build

    #CLI

    The native command-line renderer is provided by the separate moonbit-community/cmark-cli module. See the repository README for usage. The library does not depend on moonbitlang/async.

    #Testing

    With the MoonBit toolchain installed, you can run the tests by executing the following command:

    moon test -p moonbit-community/cmark/

    #Acknowledgements

    cmark is built on top several pre-existing projects. Thanks go to: