package cmarkit

  1. Overview
  2. Docs
CommonMark parser and renderer for OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

cmarkit-0.2.0.tbz
sha512=e56b738b01b81fc968fc1d0888eaf7c2bbdcb2b8fb70dbeb4475f60bae916a36c39b95caa7d91fcca35e1d9fe388379876549f74d0df6bcd1bece46ff7f5ae08

Description

Cmarkit parses the CommonMark specification. It provides:

  • A CommonMark parser for UTF-8 encoded documents. Link label resolution can be customized and a non-strict parsing mode can be activated to add: strikethrough, LaTeX math, footnotes, task items and tables.

  • An extensible abstract syntax tree for CommonMark documents with source location tracking and best-effort source layout preservation.

  • Abstract syntax tree mapper and folder abstractions for quick and concise tree transformations.

  • Extensible renderers for HTML, LaTeX and CommonMark with source layout preservation.

Cmarkit is distributed under the ISC license. It has no dependencies.

Homepage: https://erratique.ch/software/cmarkit

README

cmarkit — CommonMark parser and renderer for OCaml

v0.2.0

Cmarkit parses the CommonMark specification. It provides:

  • A CommonMark parser for UTF-8 encoded documents. Link label resolution can be customized and a non-strict parsing mode can be activated to add: strikethrough, LaTeX math, footnotes, task items and tables.

  • An extensible abstract syntax tree for CommonMark documents with source location tracking and best-effort source layout preservation.

  • Abstract syntax tree mapper and folder abstractions for quick and concise tree transformations.

  • Extensible renderers for HTML, LaTeX and CommonMark with source layout preservation.

Cmarkit is distributed under the ISC license. It has no dependencies.

Homepage: https://erratique.ch/software/cmarkit

Installation

cmarkit can be installed with opam:

opam install cmarkit
opam install cmarkit cmdliner # For the cmarkit tool

If you don't use opam consult the opam file for build instructions.

Documentation

The documentation can be consulted online or via odig doc cmarkit.

Questions are welcome but better asked on the OCaml forum than on the issue tracker.

Sample programs

The cmarkit tool parses and renders CommonMark files in various ways.

See also bench.ml and the doc examples.

Acknowledgements

A grant from the OCaml Software Foundation helped to bring the first public release of cmarkit.

The cmarkit implementation benefited from the work of John MacFarlane (spec, cmark) and Martin Mitáš (md4c).

Dependencies (4)

  1. topkg build & >= "1.0.3"
  2. ocamlbuild build
  3. ocamlfind build
  4. ocaml >= "4.14.0"

Dev Dependencies (2)

  1. b0 dev & with-test
  2. uucp dev

Used by (3)

  1. hilite >= "0.4.0"
  2. slack
  3. yocaml_cmark

Conflicts (1)

  1. cmdliner < "1.1.0"