Learn R Programming

markdown (version 1.3)

markdown_options: Markdown rendering options

Description

A list of all available options to control Markdown rendering. Options that are enabled by default are marked by a + prefix, and those disabled by default are marked by -.

Usage

markdown_options()

Arguments

Value

A character vector of all available options.

Details

Description of all options:

base64_images

Embed local images in the HTML output with base64 encoding.

highlight_code

Includes JavaScript libraries to syntax highlight code blocks.

latex_math

Identify LaTeX math expressions in pairs of single or double dollar signs, and transform them so that they could be correctly rendered by MathJax (HTML output) or LaTeX.

mathjax

Include MathJax library in HTML output.

mathjax_embed

Whether to download and embed the MathJax library in HTML output.

smartypants

Translate certain ASCII strings into smart typographic characters (see smartypants().

standalone

Generate a full (HTML/LaTeX) document or only a fragment of the body.

superscript

Translate strings between two carets into superscripts, e.g., text^foo^ to text<sup>foo</sup>.

subscript

Translate strings between two tildes into subscripts, e.g., text~foo~ to text<sub>foo</sub>.

toc

Generate a table of contents from section headers.

toc_depth

The number of section levels to include in the table of contents (3 by default).

top_level

The desired type of the top-level headings in LaTeX output. Possible values are 'chapter' and 'part'. For example, if top_level = 'chapter', # header will be rendered to \chapter{header} instead of the default \section{header}.

Options not described above can be found on the help pages of commonmark, e.g., the hardbreaks option is for the hardbreaks argument of markdown_*() functions, and the table option is for the table extension in commonmark's extensions (commonmark::list_extensions()).

Examples

Run this code
# List all available options
markdown::markdown_options()

# Turn on/off some options globally for HTML output
options(markdown.html.options = '+toc-smartypants-standalone')

library(markdown)

# toc example
mkd <- c("# Header 1", "p1", "## Header 2", "p2")

cat(mark(mkd))
cat(mark(mkd, options = "toc"))

# hard_wrap example
cat(mark("foo\nbar\n"))
cat(mark("foo\nbar\n", options = "hard_wrap"))

# latex math example
mkd <- c(
  "`$x$` is inline math $x$!", "", "Display style:", "", "$$x + y$$", "",
  "\\begin{eqnarray}
a^{2}+b^{2} & = & c^{2}\\\\
\\sin^{2}(x)+\\cos^{2}(x) & = & 1
\\end{eqnarray}"
)

cat(mark(mkd))
cat(mark(mkd, options = "-latex_math"))

# smartypants example
cat(mark("1/2 (c)"))
cat(mark("1/2 (c)", options = "-smartypants"))

mkd <- names(markdown:::pants)
mkd <- paste(c(mkd, paste0('`', mkd, '`')), collapse = ' ')
cat(mark(mkd))
cat(mark(mkd, options = "-smartypants"))

cat(smartypants("1/2 (c)\n"))

# tables example (need 4 spaces at beginning of line here)
cat(mark("
First Header  | Second Header
------------- | -------------
Content Cell  | Content Cell
Content Cell  | Content Cell
"))

# but not here
cat(mark("
First Header  | Second Header
------------- | -------------
Content Cell  | Content Cell
Content Cell  | Content Cell
", options = '-table'))

# autolink example
cat(mark("https://www.r-project.org/"))
cat(mark("https://www.r-project.org/", options = "-autolink"))

# strikethrough example
cat(mark("~~awesome~~"))
cat(mark("~~awesome~~", options = "-strikethrough"))

# superscript and subscript examples
cat(mark("2^10^"))
cat(mark("2^10^", options = "-superscript"))
cat(mark("H~2~O"))
cat(mark("H~2~O", options = "-subscript"))

# skip_html tags
mkd = '\n[Hello](#)'
cat(mark(mkd))
# TODO: wait for https://github.com/r-lib/commonmark/issues/15 to be fixed
# cat(mark(mkd, options = "tagfilter"))

Run the code above in your browser using DataLab