CommonMark parsing and rendering library and program in C

Edit Package cmark

cmark is the C reference implementation of CommonMark, a rationalized version of Markdown syntax with a spec. (For the JavaScript reference implementation, see commonmark.js.)

It provides a shared library (libcmark) with functions for parsing CommonMark documents to an abstract syntax tree (AST), manipulating the AST, and rendering the document to HTML, groff man, LaTeX, CommonMark, or an XML representation of the AST. It also provides a command-line program (cmark) for parsing and rendering CommonMark documents.

Refresh
Refresh
Source Files
Filename Size Changed
cmark-0.29.0.tar.gz 0000234545 229 KB
cmark.changes 0000017539 17.1 KB
cmark.spec 0000003029 2.96 KB
Revision 9 (latest revision is 15)
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 721249 from Ondřej Súkup's avatar Ondřej Súkup (mimi_vx) (revision 9)
- update to 0.29.0
  * Update spec to 0.29.
  * Make rendering safe by default (#239, #273).
    Adds `CMARK_OPT_UNSAFE` and make `CMARK_OPT_SAFE` a no-op (for API
    compatibility).  The new default behavior is to suppress raw HTML and
    potentially dangerous links.  The `CMARK_OPT_UNSAFE` option has to be set
    explicitly to prevent this.
    **NOTE:** This change will require modifications in bindings for cmark
    and in most libraries and programs that use cmark.
    Borrows heavily from @kivikakk's patch in github/cmark-gfm#123.
  * Add sourcepos info for inlines (Yuki Izumi).
  * Disallow more than 32 nested balanced parens in a link (Yuki Izumi).
  * Resolve link references before creating setext header.
    A setext header line after a link reference should not
    create a header, according to the spec.
  * commonmark renderer: improve escaping.
    URL-escape special characters when escape mode is URL, and not otherwise.
    Entity-escape control characters (< 0x20) in non-literal escape modes.
  * render:  only emit actual newline when escape mode is LITERAL.
    For markdown content, e.g., in other contexts we want some
    kind of escaping, not a literal newline.
  * Update code span normalization to conform with spec change.
  * Allow empty `<>` link destination in reference link.
  * Remove leftover includes of `memory.h` (#290).
  * A link destination can't start with `<` unless it is
    an angle-bracket link that also ends with `>` (#289).
    (If your URL really starts with `<`, URL-escape it.)
  * Allow internal delimiter runs to match if both have lengths that are
    multiples of 3.  See commonmark/commonmark#528.
  * Include `references.h` in `parser.h` (#287). (forwarded request 721248 from mimi_vx)
Comments 0
openSUSE Build Service is sponsored by