commonmark (version 1.0)

commonmark: Parse and render markdown text

Description

Converts markdown text to several formats using John MacFarlane's cmark reference implementation. Output in HTML, groff man, CommonMark, and a custom XML format is supported.

Usage

markdown_html(text, hardbreaks = FALSE, smart = FALSE, normalize = FALSE, sourcepos = FALSE, extensions = FALSE)
markdown_xml(text, hardbreaks = FALSE, smart = FALSE, normalize = FALSE, sourcepos = FALSE, extensions = FALSE)
markdown_man(text, hardbreaks = FALSE, smart = FALSE, normalize = FALSE, width = 0, extensions = FALSE)
markdown_commonmark(text, hardbreaks = FALSE, smart = FALSE, normalize = FALSE, width = 0, extensions = FALSE)
markdown_latex(text, hardbreaks = FALSE, smart = FALSE, normalize = FALSE, width = 0, extensions = FALSE)

Arguments

text
Markdown text
hardbreaks
Treat newlines as hard line breaks. If this option is specified, hard wrapping is disabled regardless of the value given with width.
smart
Use smart punctuation. See details.
normalize
Consolidate adjacent text nodes.
sourcepos
Include source position attribute in output.
extensions
Enables Github extensions. Can be TRUE (all) FALSE (none) or a character vector with a subset of available extensions.
width
Specify wrap width (default 0 = nowrap).

Details

Support for extensions is provided via the Github fork of cmark. See also the manual page on extensions.

When smart punctuation is enabled, straight double and single quotes will be rendered as curly quotes, depending on their position. Moreover -- will be rendered as an en-dash, ---`` will be rendered as an em-dash, and...` will be rendered as ellipses.

Examples

Run this code
md <- readLines(curl::curl("https://raw.githubusercontent.com/yihui/knitr/master/NEWS.md"))
html <- markdown_html(md)
xml <- markdown_xml(md)
man <- markdown_man(md)
tex <- markdown_latex(md)
cm <- markdown_commonmark(md)

Run the code above in your browser using DataLab