summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authorAlbert Krewinkel <albert@zeitkraut.de>2016-07-20 14:12:57 +0200
committerAlbert Krewinkel <albert@zeitkraut.de>2016-07-20 21:16:45 +0200
commita396003a31afd2c3baa9657669cbbb77460e5cf2 (patch)
tree0c06ecd836fe4ea8fec2ca78094cc9bb5da0feb8 /README
parente2d59461bbaa5ff41d41b2f0e430e03c12d8d0fd (diff)
Rename README to MANUAL.txt
Diffstat (limited to 'README')
-rw-r--r--README4007
1 files changed, 0 insertions, 4007 deletions
diff --git a/README b/README
deleted file mode 100644
index 8d5be98f8..000000000
--- a/README
+++ /dev/null
@@ -1,4007 +0,0 @@
-% Pandoc User's Guide
-% John MacFarlane
-% July 17, 2016
-
-Synopsis
-========
-
-`pandoc` [*options*] [*input-file*]...
-
-Description
-===========
-
-Pandoc is a [Haskell] library for converting from one markup format to
-another, and a command-line tool that uses this library. It can read
-[Markdown], [CommonMark], [PHP Markdown Extra], [GitHub-Flavored Markdown],
-[MultiMarkdown], and (subsets of) [Textile], [reStructuredText], [HTML],
-[LaTeX], [MediaWiki markup], [TWiki markup], [Haddock markup], [OPML], [Emacs
-Org mode], [DocBook], [txt2tags], [EPUB], [ODT] and [Word docx]; and it can
-write plain text, [Markdown], [CommonMark], [PHP Markdown Extra],
-[GitHub-Flavored Markdown], [MultiMarkdown], [reStructuredText], [XHTML],
-[HTML5], [LaTeX] (including [`beamer`] slide shows), [ConTeXt], [RTF], [OPML],
-[DocBook], [OpenDocument], [ODT], [Word docx], [GNU Texinfo], [MediaWiki
-markup], [DokuWiki markup], [ZimWiki markup], [Haddock markup],
-[EPUB] (v2 or v3), [FictionBook2], [Textile], [groff man] pages,
-[Emacs Org mode], [AsciiDoc], [InDesign ICML], [TEI Simple], and [Slidy],
-[Slideous], [DZSlides], [reveal.js] or [S5] HTML slide shows. It can also
-produce [PDF] output on systems where LaTeX, ConTeXt, or `wkhtmltopdf` is
-installed.
-
-Pandoc's enhanced version of Markdown includes syntax for [footnotes],
-[tables], flexible [ordered lists], [definition lists], [fenced code blocks],
-[superscripts and subscripts], [strikeout], [metadata blocks], automatic tables of
-contents, embedded LaTeX [math], [citations], and [Markdown inside HTML block
-elements][Extension: `markdown_in_html_blocks`]. (These enhancements, described below under
-[Pandoc's Markdown], can be disabled using the
-`markdown_strict` input or output format.)
-
-In contrast to most existing tools for converting Markdown to HTML, which
-use regex substitutions, pandoc has a modular design: it consists of a
-set of readers, which parse text in a given format and produce a native
-representation of the document, and a set of writers, which convert
-this native representation into a target format. Thus, adding an input
-or output format requires only adding a reader or writer.
-
-Because pandoc's intermediate representation of a document is less
-expressive than many of the formats it converts between, one should
-not expect perfect conversions between every format and every other.
-Pandoc attempts to preserve the structural elements of a document, but
-not formatting details such as margin size. And some document elements,
-such as complex tables, may not fit into pandoc's simple document
-model. While conversions from pandoc's Markdown to all formats aspire
-to be perfect, conversions from formats more expressive than pandoc's
-Markdown can be expected to be lossy.
-
-[Markdown]: http://daringfireball.net/projects/markdown/
-[CommonMark]: http://commonmark.org
-[PHP Markdown Extra]: https://michelf.ca/projects/php-markdown/extra/
-[GitHub-Flavored Markdown]: https://help.github.com/articles/github-flavored-markdown/
-[MultiMarkdown]: http://fletcherpenney.net/multimarkdown/
-[reStructuredText]: http://docutils.sourceforge.net/docs/ref/rst/introduction.html
-[S5]: http://meyerweb.com/eric/tools/s5/
-[Slidy]: http://www.w3.org/Talks/Tools/Slidy/
-[Slideous]: http://goessner.net/articles/slideous/
-[HTML]: http://www.w3.org/html/
-[HTML5]: http://www.w3.org/TR/html5/
-[XHTML]: http://www.w3.org/TR/xhtml1/
-[LaTeX]: http://latex-project.org
-[`beamer`]: https://ctan.org/pkg/beamer
-[Beamer User's Guide]: http://ctan.math.utah.edu/ctan/tex-archive/macros/latex/contrib/beamer/doc/beameruserguide.pdf
-[ConTeXt]: http://contextgarden.net/
-[RTF]: http://en.wikipedia.org/wiki/Rich_Text_Format
-[DocBook]: http://docbook.org
-[txt2tags]: http://txt2tags.org
-[EPUB]: http://idpf.org/epub
-[OPML]: http://dev.opml.org/spec2.html
-[OpenDocument]: http://opendocument.xml.org
-[ODT]: http://en.wikipedia.org/wiki/OpenDocument
-[Textile]: http://redcloth.org/textile
-[MediaWiki markup]: https://www.mediawiki.org/wiki/Help:Formatting
-[DokuWiki markup]: https://www.dokuwiki.org/dokuwiki
-[ZimWiki markup]: http://zim-wiki.org/manual/Help/Wiki_Syntax.html
-[TWiki markup]: http://twiki.org/cgi-bin/view/TWiki/TextFormattingRules
-[Haddock markup]: https://www.haskell.org/haddock/doc/html/ch03s08.html
-[groff man]: http://developer.apple.com/DOCUMENTATION/Darwin/Reference/ManPages/man7/groff_man.7.html
-[Haskell]: https://www.haskell.org
-[GNU Texinfo]: http://www.gnu.org/software/texinfo/
-[Emacs Org mode]: http://orgmode.org
-[AsciiDoc]: http://www.methods.co.nz/asciidoc/
-[DZSlides]: http://paulrouget.com/dzslides/
-[Word docx]: http://www.microsoft.com/interop/openup/openxml/default.aspx
-[PDF]: https://www.adobe.com/pdf/
-[reveal.js]: http://lab.hakim.se/reveal-js/
-[FictionBook2]: http://www.fictionbook.org/index.php/Eng:XML_Schema_Fictionbook_2.1
-[InDesign ICML]: https://www.adobe.com/content/dam/Adobe/en/devnet/indesign/cs55-docs/IDML/idml-specification.pdf
-[TEI Simple]: https://github.com/TEIC/TEI-Simple
-
-Using `pandoc`
---------------
-
-If no *input-file* is specified, input is read from *stdin*.
-Otherwise, the *input-files* are concatenated (with a blank
-line between each) and used as input. Output goes to *stdout* by
-default (though output to *stdout* is disabled for the `odt`, `docx`,
-`epub`, and `epub3` output formats). For output to a file, use the
-`-o` option:
-
- pandoc -o output.html input.txt
-
-By default, pandoc produces a document fragment, not a standalone
-document with a proper header and footer. To produce a standalone
-document, use the `-s` or `--standalone` flag:
-
- pandoc -s -o output.html input.txt
-
-For more information on how standalone documents are produced, see
-[Templates], below.
-
-Instead of a file, an absolute URI may be given. In this case
-pandoc will fetch the content using HTTP:
-
- pandoc -f html -t markdown http://www.fsf.org
-
-If multiple input files are given, `pandoc` will concatenate them all (with
-blank lines between them) before parsing. This feature is disabled for
- binary input formats such as `EPUB`, `odt`, and `docx`.
-
-The format of the input and output can be specified explicitly using
-command-line options. The input format can be specified using the
-`-r/--read` or `-f/--from` options, the output format using the
-`-w/--write` or `-t/--to` options. Thus, to convert `hello.txt` from
-Markdown to LaTeX, you could type:
-
- pandoc -f markdown -t latex hello.txt
-
-To convert `hello.html` from HTML to Markdown:
-
- pandoc -f html -t markdown hello.html
-
-Supported output formats are listed below under the `-t/--to` option.
-Supported input formats are listed below under the `-f/--from` option. Note
-that the `rst`, `textile`, `latex`, and `html` readers are not complete;
-there are some constructs that they do not parse.
-
-If the input or output format is not specified explicitly, `pandoc`
-will attempt to guess it from the extensions of
-the input and output filenames. Thus, for example,
-
- pandoc -o hello.tex hello.txt
-
-will convert `hello.txt` from Markdown to LaTeX. If no output file
-is specified (so that output goes to *stdout*), or if the output file's
-extension is unknown, the output format will default to HTML.
-If no input file is specified (so that input comes from *stdin*), or
-if the input files' extensions are unknown, the input format will
-be assumed to be Markdown unless explicitly specified.
-
-Pandoc uses the UTF-8 character encoding for both input and output.
-If your local character encoding is not UTF-8, you
-should pipe input and output through [`iconv`]:
-
- iconv -t utf-8 input.txt | pandoc | iconv -f utf-8
-
-Note that in some output formats (such as HTML, LaTeX, ConTeXt,
-RTF, OPML, DocBook, and Texinfo), information about
-the character encoding is included in the document header, which
-will only be included if you use the `-s/--standalone` option.
-
-[`iconv`]: http://www.gnu.org/software/libiconv/
-
-Creating a PDF
---------------
-
-To produce a PDF, specify an output file with a `.pdf` extension.
-By default, pandoc will use LaTeX to convert it to PDF:
-
- pandoc test.txt -o test.pdf
-
-Production of a PDF requires that a LaTeX engine be installed (see
-`--latex-engine`, below), and assumes that the following LaTeX packages
-are available: [`amsfonts`], [`amsmath`], [`lm`],
-[`ifxetex`], [`ifluatex`], [`eurosym`], [`listings`] (if the
-`--listings` option is used), [`fancyvrb`], [`longtable`],
-[`booktabs`], [`graphicx`] and [`grffile`] (if the
-document contains images), [`hyperref`], [`ulem`],
-[`geometry`] (with the `geometry` variable set), [`setspace`] (with
-`linestretch`), and [`babel`] (with `lang`). The use of `xelatex` or
-`lualatex` as the LaTeX engine requires [`fontspec`]; `xelatex` uses
-[`mathspec`], [`polyglossia`] (with `lang`), [`xecjk`], and
-[`bidi`] (with the `dir` variable set). The [`upquote`] and
-[`microtype`] packages are used if available, and [`csquotes`] will
-be used for [smart punctuation] if added to the template or included in
-any header file. The [`natbib`], [`biblatex`], [`bibtex`], and [`biber`]
-packages can optionally be used for [citation rendering]. These are
-included with all recent versions of [TeX Live].
-
-Alternatively, pandoc can use ConTeXt or `wkhtmltopdf` to create a PDF.
-To do this, specify an output file with a `.pdf` extension,
-as before, but add `-t context` or `-t html5` to the command line.
-
-PDF output can be controlled using [variables for LaTeX] (if
-LaTeX is used) and [variables for ConTeXt] (if ConTeXt is used).
-If `wkhtmltopdf` is used, then the variables `margin-left`,
-`margin-right`, `margin-top`, `margin-bottom`, and `papersize`
-will affect the output, as will `--css`.
-
-[`amsfonts`]: https://ctan.org/pkg/amsfonts
-[`amsmath`]: https://ctan.org/pkg/amsmath
-[`lm`]: https://ctan.org/pkg/lm
-[`ifxetex`]: https://ctan.org/pkg/ifxetex
-[`ifluatex`]: https://ctan.org/pkg/ifluatex
-[`eurosym`]: https://ctan.org/pkg/eurosym
-[`listings`]: https://ctan.org/pkg/listings
-[`fancyvrb`]: https://ctan.org/pkg/fancyvrb
-[`longtable`]: https://ctan.org/pkg/longtable
-[`booktabs`]: https://ctan.org/pkg/booktabs
-[`graphicx`]: https://ctan.org/pkg/graphicx
-[`grffile`]: https://ctan.org/pkg/grffile
-[`geometry`]: https://ctan.org/pkg/geometry
-[`setspace`]: https://ctan.org/pkg/setspace
-[`xecjk`]: https://ctan.org/pkg/xecjk
-[`hyperref`]: https://ctan.org/pkg/hyperref
-[`ulem`]: https://ctan.org/pkg/ulem
-[`babel`]: https://ctan.org/pkg/babel
-[`bidi`]: https://ctan.org/pkg/bidi
-[`mathspec`]: https://ctan.org/pkg/mathspec
-[`polyglossia`]: https://ctan.org/pkg/polyglossia
-[`fontspec`]: https://ctan.org/pkg/fontspec
-[`upquote`]: https://ctan.org/pkg/upquote
-[`microtype`]: https://ctan.org/pkg/microtype
-[`csquotes`]: https://ctan.org/pkg/csquotes
-[`natbib`]: https://ctan.org/pkg/natbib
-[`biblatex`]: https://ctan.org/pkg/biblatex
-[`bibtex`]: https://ctan.org/pkg/bibtex
-[`biber`]: https://ctan.org/pkg/biber
-[TeX Live]: http://www.tug.org/texlive/
-
-Options
-=======
-
-General options
----------------
-
-`-f` *FORMAT*, `-r` *FORMAT*, `--from=`*FORMAT*, `--read=`*FORMAT*
-
-: Specify input format. *FORMAT* can be `native` (native Haskell),
- `json` (JSON version of native AST), `markdown` (pandoc's
- extended Markdown), `markdown_strict` (original unextended
- Markdown), `markdown_phpextra` (PHP Markdown Extra), `markdown_github`
- (GitHub-Flavored Markdown), `markdown_mmd` (MultiMarkdown),
- `commonmark` (CommonMark Markdown), `textile` (Textile), `rst`
- (reStructuredText), `html` (HTML), `docbook` (DocBook), `t2t`
- (txt2tags), `docx` (docx), `odt` (ODT), `epub` (EPUB), `opml` (OPML),
- `org` (Emacs Org mode), `mediawiki` (MediaWiki markup), `twiki` (TWiki
- markup), `haddock` (Haddock markup), or `latex` (LaTeX). If
- `+lhs` is appended to `markdown`, `rst`, `latex`, or `html`, the
- input will be treated as literate Haskell source: see [Literate
- Haskell support], below. Markdown
- syntax extensions can be individually enabled or disabled by
- appending `+EXTENSION` or `-EXTENSION` to the format name. So, for
- example, `markdown_strict+footnotes+definition_lists` is strict
- Markdown with footnotes and definition lists enabled, and
- `markdown-pipe_tables+hard_line_breaks` is pandoc's Markdown
- without pipe tables and with hard line breaks. See [Pandoc's
- Markdown], below, for a list of extensions and
- their names.
-
-`-t` *FORMAT*, `-w` *FORMAT*, `--to=`*FORMAT*, `--write=`*FORMAT*
-
-: Specify output format. *FORMAT* can be `native` (native Haskell),
- `json` (JSON version of native AST), `plain` (plain text),
- `markdown` (pandoc's extended Markdown), `markdown_strict`
- (original unextended Markdown), `markdown_phpextra` (PHP Markdown
- Extra), `markdown_github` (GitHub-Flavored Markdown), `markdown_mmd`
- (MultiMarkdown), `commonmark` (CommonMark Markdown), `rst`
- (reStructuredText), `html` (XHTML), `html5` (HTML5), `latex`
- (LaTeX), `beamer` (LaTeX beamer slide show), `context` (ConTeXt),
- `man` (groff man), `mediawiki` (MediaWiki markup),
- `dokuwiki` (DokuWiki markup), `zimwiki` (ZimWiki markup),
- `textile` (Textile), `org` (Emacs Org mode),
- `texinfo` (GNU Texinfo), `opml` (OPML), `docbook` (DocBook 4),
- `docbook5` (DocBook 5), `opendocument` (OpenDocument), `odt`
- (OpenOffice text document), `docx` (Word docx), `haddock`
- (Haddock markup), `rtf` (rich text format), `epub` (EPUB v2
- book), `epub3` (EPUB v3), `fb2` (FictionBook2 e-book),
- `asciidoc` (AsciiDoc), `icml` (InDesign ICML), `tei` (TEI
- Simple), `slidy` (Slidy HTML and javascript slide show),
- `slideous` (Slideous HTML and javascript slide show),
- `dzslides` (DZSlides HTML5 + javascript slide show),
- `revealjs` (reveal.js HTML5 + javascript slide show), `s5`
- (S5 HTML and javascript slide show), or the path of a custom
- lua writer (see [Custom writers], below). Note that `odt`,
- `epub`, and `epub3` output will not be directed to *stdout*;
- an output filename must be specified using the `-o/--output`
- option. If `+lhs` is appended to `markdown`, `rst`, `latex`,
- `beamer`, `html`, or `html5`, the output will be rendered as
- literate Haskell source: see [Literate Haskell support],
- below. Markdown syntax extensions can be individually
- enabled or disabled by appending `+EXTENSION` or
- `-EXTENSION` to the format name, as described above under `-f`.
-
-`-o` *FILE*, `--output=`*FILE*
-
-: Write output to *FILE* instead of *stdout*. If *FILE* is
- `-`, output will go to *stdout*. (Exception: if the output
- format is `odt`, `docx`, `epub`, or `epub3`, output to stdout is disabled.)
-
-`--data-dir=`*DIRECTORY*
-
-: Specify the user data directory to search for pandoc data files.
- If this option is not specified, the default user data directory
- will be used. This is, in Unix:
-
- $HOME/.pandoc
-
- in Windows XP:
-
- C:\Documents And Settings\USERNAME\Application Data\pandoc
-
- and in Windows Vista or later:
-
- C:\Users\USERNAME\AppData\Roaming\pandoc
-
- You can find the default user data directory on your system by
- looking at the output of `pandoc --version`.
- A `reference.odt`, `reference.docx`, `epub.css`, `templates`,
- `slidy`, `slideous`, or `s5` directory
- placed in this directory will override pandoc's normal defaults.
-
-`--bash-completion`
-
-: Generate a bash completion script. To enable bash completion
- with pandoc, add this to your `.bashrc`:
-
- eval "$(pandoc --bash-completion)"
-
-`--verbose`
-
-: Give verbose debugging output. Currently this only has an effect
- with PDF output.
-
-`-v`, `--version`
-
-: Print version.
-
-`-h`, `--help`
-
-: Show usage message.
-
-Reader options
---------------
-
-`-R`, `--parse-raw`
-
-: Parse untranslatable HTML codes and LaTeX environments as raw HTML
- or LaTeX, instead of ignoring them. Affects only HTML and LaTeX
- input. Raw HTML can be printed in Markdown, reStructuredText, Emacs Org
- mode, HTML, Slidy, Slideous, DZSlides, reveal.js, and S5 output; raw LaTeX
- can be printed in Markdown, reStructuredText, Emacs Org mode, LaTeX, and
- ConTeXt output. The default is for the readers to omit untranslatable
- HTML codes and LaTeX environments. (The LaTeX reader does pass through
- untranslatable LaTeX *commands*, even if `-R` is not specified.)
-
-`-S`, `--smart`
-
-: Produce typographically correct output, converting straight quotes
- to curly quotes, `---` to em-dashes, `--` to en-dashes, and
- `...` to ellipses. Nonbreaking spaces are inserted after certain
- abbreviations, such as "Mr." (Note: This option is selected automatically
- when the output format is `latex` or `context`, unless `--no-tex-ligatures`
- is used. It has no effect for `latex` input.)
-
-`--old-dashes`
-
-: Selects the pandoc <= 1.8.2.1 behavior for parsing smart dashes: `-` before
- a numeral is an en-dash, and `--` is an em-dash. This option is selected
- automatically for `textile` input.
-
-`--base-header-level=`*NUMBER*
-
-: Specify the base level for headers (defaults to 1).
-
-`--indented-code-classes=`*CLASSES*
-
-: Specify classes to use for indented code blocks--for example,
- `perl,numberLines` or `haskell`. Multiple classes may be separated
- by spaces or commas.
-
-`--default-image-extension=`*EXTENSION*
-
-: Specify a default extension to use when image paths/URLs have no
- extension. This allows you to use the same source for formats that
- require different kinds of images. Currently this option only affects
- the Markdown and LaTeX readers.
-
-`--file-scope`
-
-: Parse each file individually before combining for multifile
- documents. This will allow footnotes in different files with the
- same identifiers to work as expected. If this option is set,
- footnotes and links will not work across files. Reading binary
- files (docx, odt, epub) implies `--file-scope`.
-
-`--filter=`*EXECUTABLE*
-
-: Specify an executable to be used as a filter transforming the
- pandoc AST after the input is parsed and before the output is
- written. The executable should read JSON from stdin and write
- JSON to stdout. The JSON must be formatted like pandoc's own
- JSON input and output. The name of the output format will be
- passed to the filter as the first argument. Hence,
-
- pandoc --filter ./caps.py -t latex
-
- is equivalent to
-
- pandoc -t json | ./caps.py latex | pandoc -f json -t latex
-
- The latter form may be useful for debugging filters.
-
- Filters may be written in any language. `Text.Pandoc.JSON`
- exports `toJSONFilter` to facilitate writing filters in Haskell.
- Those who would prefer to write filters in python can use the
- module [`pandocfilters`], installable from PyPI. There are also
- pandoc filter libraries in [PHP], [perl], and [javascript/node.js].
-
- Note that the *EXECUTABLE* will be sought in the user's
- `PATH`, and not in the working directory, if no directory is
- provided. If you want to run a script in the working directory,
- preface the filename with `./`.
-
-`-M` *KEY*[`=`*VAL*], `--metadata=`*KEY*[`:`*VAL*]
-
-: Set the metadata field *KEY* to the value *VAL*. A value specified
- on the command line overrides a value specified in the document.
- Values will be parsed as YAML boolean or string values. If no value is
- specified, the value will be treated as Boolean true. Like
- `--variable`, `--metadata` causes template variables to be set.
- But unlike `--variable`, `--metadata` affects the metadata of the
- underlying document (which is accessible from filters and may be
- printed in some output formats).
-
-`--normalize`
-
-: Normalize the document after reading: merge adjacent
- `Str` or `Emph` elements, for example, and remove repeated `Space`s.
-
-`-p`, `--preserve-tabs`
-
-: Preserve tabs instead of converting them to spaces (the default).
- Note that this will only affect tabs in literal code spans and code
- blocks; tabs in regular text will be treated as spaces.
-
-`--tab-stop=`*NUMBER*
-
-: Specify the number of spaces per tab (default is 4).
-
-`--track-changes=accept`|`reject`|`all`
-
-: Specifies what to do with insertions, deletions, and comments
- produced by the MS Word "Track Changes" feature. `accept` (the
- default), inserts all insertions, and ignores all
- deletions. `reject` inserts all deletions and ignores
- insertions. Both `accept` and `reject` ignore comments. `all` puts
- in insertions, deletions, and comments, wrapped in spans with
- `insertion`, `deletion`, `comment-start`, and `comment-end`
- classes, respectively. The author and time of change is
- included. `all` is useful for scripting: only accepting changes
- from a certain reviewer, say, or before a certain date. This
- option only affects the docx reader.
-
-`--extract-media=`*DIR*
-
-: Extract images and other media contained in a docx or epub container
- to the path *DIR*, creating it if necessary, and adjust the images
- references in the document so they point to the extracted files.
- This option only affects the docx and epub readers.
-
-[`pandocfilters`]: https://github.com/jgm/pandocfilters
-[PHP]: https://github.com/vinai/pandocfilters-php
-[perl]: https://metacpan.org/pod/Pandoc::Filter
-[javascript/node.js]: https://github.com/mvhenderson/pandoc-filter-node
-
-General writer options
-----------------------
-
-`-s`, `--standalone`
-
-: Produce output with an appropriate header and footer (e.g. a
- standalone HTML, LaTeX, TEI, or RTF file, not a fragment). This option
- is set automatically for `pdf`, `epub`, `epub3`, `fb2`, `docx`, and `odt`
- output.
-
-`--template=`*FILE*
-
-: Use *FILE* as a custom template for the generated document. Implies
- `--standalone`. See [Templates], below, for a description
- of template syntax. If no extension is specified, an extension
- corresponding to the writer will be added, so that `--template=special`
- looks for `special.html` for HTML output. If the template is not
- found, pandoc will search for it in the `templates` subdirectory of
- the user data directory (see `--data-dir`). If this option is not used,
- a default template appropriate for the output format will be used (see
- `-D/--print-default-template`).
-
-`-V` *KEY*[`=`*VAL*], `--variable=`*KEY*[`:`*VAL*]
-
-: Set the template variable *KEY* to the value *VAL* when rendering the
- document in standalone mode. This is generally only useful when the
- `--template` option is used to specify a custom template, since
- pandoc automatically sets the variables used in the default
- templates. If no *VAL* is specified, the key will be given the
- value `true`.
-
-`-D` *FORMAT*, `--print-default-template=`*FORMAT*
-
-: Print the system default template for an output *FORMAT*. (See `-t`
- for a list of possible *FORMAT*s.) Templates in the user data
- directory are ignored.
-
-`--print-default-data-file=`*FILE*
-
-: Print a system default data file. Files in the user data directory
- are ignored.
-
-`--dpi`=*NUMBER*
-: Specify the dpi (dots per inch) value for conversion from pixels
- to inch/centimeters and vice versa. The default is 96dpi.
- Technically, the correct term would be ppi (pixels per inch).
-
-`--wrap=[auto|none|preserve]`
-
-: Determine how text is wrapped in the output (the source
- code, not the rendered version). With `auto` (the default),
- pandoc will attempt to wrap lines to the column width specified by
- `--columns` (default 80). With `none`, pandoc will not wrap
- lines at all. With `preserve`, pandoc will attempt to
- preserve the wrapping from the source document (that is,
- where there are nonsemantic newlines in the source, there
- will be nonsemantic newlines in the output as well).
-
-`--no-wrap`
-
-: Deprecated synonym for `--wrap=none`.
-
-`--columns=`*NUMBER*
-
-: Specify length of lines in characters. This affects text wrapping
- in the generated source code (see `--wrap`). It also affects
- calculation of column widths for plain text tables (see [Tables] below).
-
-`--toc`, `--table-of-contents`
-
-: Include an automatically generated table of contents (or, in
- the case of `latex`, `context`, `docx`, and `rst`, an instruction to create
- one) in the output document. This option has no effect on `man`,
- `docbook`, `docbook5`, `slidy`, `slideous`, `s5`, or `odt` output.
-
-`--toc-depth=`*NUMBER*
-
-: Specify the number of section levels to include in the table
- of contents. The default is 3 (which means that level 1, 2, and 3
- headers will be listed in the contents).
-
-`--no-highlight`
-
-: Disables syntax highlighting for code blocks and inlines, even when
- a language attribute is given.
-
-`--highlight-style=`*STYLE*
-
-: Specifies the coloring style to be used in highlighted source code.
- Options are `pygments` (the default), `kate`, `monochrome`,
- `espresso`, `zenburn`, `haddock`, and `tango`. For more information
- on syntax highlighting in pandoc, see [Syntax highlighting], below.
-
-`-H` *FILE*, `--include-in-header=`*FILE*
-
-: Include contents of *FILE*, verbatim, at the end of the header.
- This can be used, for example, to include special
- CSS or javascript in HTML documents. This option can be used
- repeatedly to include multiple files in the header. They will be
- included in the order specified. Implies `--standalone`.
-
-`-B` *FILE*, `--include-before-body=`*FILE*
-
-: Include contents of *FILE*, verbatim, at the beginning of the
- document body (e.g. after the `<body>` tag in HTML, or the
- `\begin{document}` command in LaTeX). This can be used to include
- navigation bars or banners in HTML documents. This option can be
- used repeatedly to include multiple files. They will be included in
- the order specified. Implies `--standalone`.
-
-`-A` *FILE*, `--include-after-body=`*FILE*
-
-: Include contents of *FILE*, verbatim, at the end of the document
- body (before the `</body>` tag in HTML, or the
- `\end{document}` command in LaTeX). This option can be used
- repeatedly to include multiple files. They will be included in the
- order specified. Implies `--standalone`.
-
-Options affecting specific writers
-----------------------------------
-
-`--self-contained`
-
-: Produce a standalone HTML file with no external dependencies, using
- `data:` URIs to incorporate the contents of linked scripts, stylesheets,
- images, and videos. The resulting file should be "self-contained,"
- in the sense that it needs no external files and no net access to be
- displayed properly by a browser. This option works only with HTML output
- formats, including `html`, `html5`, `html+lhs`, `html5+lhs`, `s5`,
- `slidy`, `slideous`, `dzslides`, and `revealjs`. Scripts, images, and
- stylesheets at absolute URLs will be downloaded; those at relative URLs
- will be sought relative to the working directory (if the first source
- file is local) or relative to the base URL (if the first source
- file is remote). Limitation: resources that are loaded dynamically
- through JavaScript cannot be incorporated; as a result, `--self-contained`
- does not work with `--mathjax`, and some advanced features (e.g.
- zoom or speaker notes) may not work in an offline "self-contained"
- `reveal.js` slide show.
-
-`--html-q-tags`
-
-: Use `<q>` tags for quotes in HTML.
-
-`--ascii`
-
-: Use only ascii characters in output. Currently supported only
- for HTML output (which uses numerical entities instead of
- UTF-8 when this option is selected).
-
-`--reference-links`
-
-: Use reference-style links, rather than inline links, in writing Markdown
- or reStructuredText. By default inline links are used.
-
-`--atx-headers`
-
-: Use ATX-style headers in Markdown and asciidoc output. The default is
- to use setext-style headers for levels 1-2, and then ATX headers.
-
-`--chapters`
-
-: Treat top-level headers as chapters in LaTeX, ConTeXt, and DocBook
- output. When the LaTeX document class is set to `report`, `book`,
- or `memoir` (unless the `article` option is specified), this
- option is implied. If `beamer` is the output format, top-level
- headers will become `\part{..}`.
-
-`-N`, `--number-sections`
-
-: Number section headings in LaTeX, ConTeXt, HTML, or EPUB output.
- By default, sections are not numbered. Sections with class
- `unnumbered` will never be numbered, even if `--number-sections`
- is specified.
-
-`--number-offset=`*NUMBER*[`,`*NUMBER*`,`*...*]
-
-: Offset for section headings in HTML output (ignored in other
- output formats). The first number is added to the section number for
- top-level headers, the second for second-level headers, and so on.
- So, for example, if you want the first top-level header in your
- document to be numbered "6", specify `--number-offset=5`.
- If your document starts with a level-2 header which you want to
- be numbered "1.5", specify `--number-offset=1,4`.
- Offsets are 0 by default. Implies `--number-sections`.
-
-`--no-tex-ligatures`
-
-: Do not use the TeX ligatures for quotation marks, apostrophes,
- and dashes (`` `...' ``, ` ``..'' `, `--`, `---`) when
- writing or reading LaTeX or ConTeXt. In reading LaTeX,
- parse the characters `` ` ``, `'`, and `-` literally, rather
- than parsing ligatures for quotation marks and dashes. In
- writing LaTeX or ConTeXt, print unicode quotation mark and
- dash characters literally, rather than converting them to
- the standard ASCII TeX ligatures. Note: normally `--smart`
- is selected automatically for LaTeX and ConTeXt output, but
- it must be specified explicitly if `--no-tex-ligatures` is
- selected. If you use literal curly quotes, dashes, and
- ellipses in your source, then you may want to use
- `--no-tex-ligatures` without `--smart`.
-
-`--listings`
-
-: Use the [`listings`] package for LaTeX code blocks
-
-`-i`, `--incremental`
-
-: Make list items in slide shows display incrementally (one by one).
- The default is for lists to be displayed all at once.
-
-`--slide-level=`*NUMBER*
-
-: Specifies that headers with the specified level create
- slides (for `beamer`, `s5`, `slidy`, `slideous`, `dzslides`). Headers
- above this level in the hierarchy are used to divide the
- slide show into sections; headers below this level create
- subheads within a slide. The default is to set the slide level
- based on the contents of the document; see
- [Structuring the slide show].
-
-`--section-divs`
-
-: Wrap sections in `<div>` tags (or `<section>` tags in HTML5),
- and attach identifiers to the enclosing `<div>` (or `<section>`)
- rather than the header itself. See
- [Header identifiers], below.
-
-`--email-obfuscation=none`|`javascript`|`references`
-
-: Specify a method for obfuscating `mailto:` links in HTML documents.
- `none` leaves `mailto:` links as they are. `javascript` obfuscates
- them using javascript. `references` obfuscates them by printing their
- letters as decimal or hexadecimal character references. The default
- is `none`.
-
-`--id-prefix=`*STRING*
-
-: Specify a prefix to be added to all automatically generated identifiers
- in HTML and DocBook output, and to footnote numbers in Markdown output.
- This is useful for preventing duplicate identifiers when generating
- fragments to be included in other pages.
-
-`-T` *STRING*, `--title-prefix=`*STRING*
-
-: Specify *STRING* as a prefix at the beginning of the title
- that appears in the HTML header (but not in the title as it
- appears at the beginning of the HTML body). Implies
- `--standalone`.
-
-`-c` *URL*, `--css=`*URL*
-
-: Link to a CSS style sheet. This option can be used repeatedly to
- include multiple files. They will be included in the order specified.
-
-`--reference-odt=`*FILE*
-
-: Use the specified file as a style reference in producing an ODT.
- For best results, the reference ODT should be a modified version
- of an ODT produced using pandoc. The contents of the reference ODT
- are ignored, but its stylesheets are used in the new ODT. If no
- reference ODT is specified on the command line, pandoc will look
- for a file `reference.odt` in the user data directory (see
- `--data-dir`). If this is not found either, sensible defaults will be
- used.
-
-`--reference-docx=`*FILE*
-
-: Use the specified file as a style reference in producing a docx file.
- For best results, the reference docx should be a modified version
- of a docx file produced using pandoc. The contents of the reference docx
- are ignored, but its stylesheets and document properties (including
- margins, page size, header, and footer) are used in the new docx. If no
- reference docx is specified on the command line, pandoc will look
- for a file `reference.docx` in the user data directory (see
- `--data-dir`). If this is not found either, sensible defaults will be
- used. The following styles are used by pandoc: [paragraph]
- Normal, Body Text, First Paragraph, Compact, Title, Subtitle, Author, Date,
- Abstract, Bibliography, Heading 1, Heading 2, Heading 3, Heading 4,
- Heading 5, Heading 6, Block Text, Footnote Text, Definition Term,
- Definition, Caption, Table Caption, Image Caption, Figure,
- Figure With Caption, TOC Heading;
- [character] Default Paragraph Font, Body Text Char, Verbatim Char,
- Footnote Reference, Hyperlink; [table] Normal Table.
-
-`--epub-stylesheet=`*FILE*
-
-: Use the specified CSS file to style the EPUB. If no stylesheet
- is specified, pandoc will look for a file `epub.css` in the
- user data directory (see `--data-dir`). If it is not
- found there, sensible defaults will be used.
-
-`--epub-cover-image=`*FILE*
-
-: Use the specified image as the EPUB cover. It is recommended
- that the image be less than 1000px in width and height. Note that
- in a Markdown source document you can also specify `cover-image`
- in a YAML metadata block (see [EPUB Metadata], below).
-
-`--epub-metadata=`*FILE*
-
-: Look in the specified XML file for metadata for the EPUB.
- The file should contain a series of [Dublin Core elements].
- For example:
-
- <dc:rights>Creative Commons</dc:rights>
- <dc:language>es-AR</dc:language>
-
- By default, pandoc will include the following metadata elements:
- `<dc:title>` (from the document title), `<dc:creator>` (from the
- document authors), `<dc:date>` (from the document date, which should
- be in [ISO 8601 format]), `<dc:language>` (from the `lang`
- variable, or, if is not set, the locale), and `<dc:identifier
- id="BookId">` (a randomly generated UUID). Any of these may be
- overridden by elements in the metadata file.
-
- Note: if the source document is Markdown, a YAML metadata block
- in the document can be used instead. See below under
- [EPUB Metadata].
-
-`--epub-embed-font=`*FILE*
-
-: Embed the specified font in the EPUB. This option can be repeated
- to embed multiple fonts. Wildcards can also be used: for example,
- `DejaVuSans-*.ttf`. However, if you use wildcards on the command
- line, be sure to escape them or put the whole filename in single quotes,
- to prevent them from being interpreted by the shell. To use the
- embedded fonts, you will need to add declarations like the following
- to your CSS (see `--epub-stylesheet`):
-
- @font-face {
- font-family: DejaVuSans;
- font-style: normal;
- font-weight: normal;
- src:url("DejaVuSans-Regular.ttf");
- }
- @font-face {
- font-family: DejaVuSans;
- font-style: normal;
- font-weight: bold;
- src:url("DejaVuSans-Bold.ttf");
- }
- @font-face {
- font-family: DejaVuSans;
- font-style: italic;
- font-weight: normal;
- src:url("DejaVuSans-Oblique.ttf");
- }
- @font-face {
- font-family: DejaVuSans;
- font-style: italic;
- font-weight: bold;
- src:url("DejaVuSans-BoldOblique.ttf");
- }
- body { font-family: "DejaVuSans"; }
-
-`--epub-chapter-level=`*NUMBER*
-
-: Specify the header level at which to split the EPUB into separate
- "chapter" files. The default is to split into chapters at level 1
- headers. This option only affects the internal composition of the
- EPUB, not the way chapters and sections are displayed to users. Some
- readers may be slow if the chapter files are too large, so for large
- documents with few level 1 headers, one might want to use a chapter
- level of 2 or 3.
-
-`--latex-engine=pdflatex`|`lualatex`|`xelatex`
-
-: Use the specified LaTeX engine when producing PDF output.
- The default is `pdflatex`. If the engine is not in your PATH,
- the full path of the engine may be specified here.
-
-`--latex-engine-opt=`*STRING*
-
-: Use the given string as a command-line argument to the `latex-engine`.
- If used multiple times, the arguments are provided with spaces between
- them. Note that no check for duplicate options is done.
-
-[Dublin Core elements]: http://dublincore.org/documents/dces/
-[ISO 8601 format]: http://www.w3.org/TR/NOTE-datetime
-
-Citation rendering
-------------------
-
-`--bibliography=`*FILE*
-
-: Set the `bibliography` field in the document's metadata to *FILE*,
- overriding any value set in the metadata, and process citations
- using `pandoc-citeproc`. (This is equivalent to
- `--metadata bibliography=FILE --filter pandoc-citeproc`.)
- If `--natbib` or `--biblatex` is also supplied, `pandoc-citeproc` is not
- used, making this equivalent to `--metadata bibliography=FILE`.
- If you supply this argument multiple times, each *FILE* will be added
- to bibliography.
-
-`--csl=`*FILE*
-
-: Set the `csl` field in the document's metadata to *FILE*,
- overriding any value set in the metadata. (This is equivalent to
- `--metadata csl=FILE`.)
- This option is only relevant with `pandoc-citeproc`.
-
-`--citation-abbreviations=`*FILE*
-
-: Set the `citation-abbreviations` field in the document's metadata to
- *FILE*, overriding any value set in the metadata. (This is equivalent to
- `--metadata citation-abbreviations=FILE`.)
- This option is only relevant with `pandoc-citeproc`.
-
-`--natbib`
-
-: Use [`natbib`] for citations in LaTeX output. This option is not for use
- with the `pandoc-citeproc` filter or with PDF output. It is intended for
- use in producing a LaTeX file that can be processed with [`bibtex`].
-
-`--biblatex`
-
-: Use [`biblatex`] for citations in LaTeX output. This option is not for use
- with the `pandoc-citeproc` filter or with PDF output. It is intended for
- use in producing a LaTeX file that can be processed with [`bibtex`] or [`biber`].
-
-Math rendering in HTML
-----------------------
-
-`-m` [*URL*], `--latexmathml`[`=`*URL*]
-
-: Use the [LaTeXMathML] script to display embedded TeX math in HTML output.
- To insert a link to a local copy of the `LaTeXMathML.js` script,
- provide a *URL*. If no *URL* is provided, the contents of the
- script will be inserted directly into the HTML header, preserving
- portability at the price of efficiency. If you plan to use math on
- several pages, it is much better to link to a copy of the script,
- so it can be cached.
-
-`--mathml`[`=`*URL*]
-
-: Convert TeX math to [MathML] (in `docbook`, `docbook5`, `html` and `html5`).
- In standalone `html` output, a small javascript (or a link to such a
- script if a *URL* is supplied) will be inserted that allows the MathML to
- be viewed on some browsers.
-
-`--jsmath`[`=`*URL*]
-
-: Use [jsMath] to display embedded TeX math in HTML output.
- The *URL* should point to the jsMath load script (e.g.
- `jsMath/easy/load.js`); if provided, it will be linked to in
- the header of standalone HTML documents. If a *URL* is not provided,
- no link to the jsMath load script will be inserted; it is then
- up to the author to provide such a link in the HTML template.
-
-`--mathjax`[`=`*URL*]
-
-: Use [MathJax] to display embedded TeX math in HTML output.
- The *URL* should point to the `MathJax.js` load script.
- If a *URL* is not provided, a link to the MathJax CDN will
- be inserted.
-
-`--gladtex`
-
-: Enclose TeX math in `<eq>` tags in HTML output. These can then
- be processed by [gladTeX] to produce links to images of the typeset
- formulas.
-
-`--mimetex`[`=`*URL*]
-
-: Render TeX math using the [mimeTeX] CGI script. If *URL* is not
- specified, it is assumed that the script is at `/cgi-bin/mimetex.cgi`.
-
-`--webtex`[`=`*URL*]
-
-: Render TeX formulas using an external script that converts TeX
- formulas to images. The formula will be concatenated with the URL
- provided. If *URL* is not specified, the Google Chart API will be used.
- Note: the `--webtex` option will affect Markdown output
- as well as HTML.
-
-`--katex`[`=`*URL*]
-
-: Use [KaTeX] to display embedded TeX math in HTML output.
- The *URL* should point to the `katex.js` load script. If a *URL* is
- not provided, a link to the KaTeX CDN will be inserted.
-
-`--katex-stylesheet=`*URL*
-
-: The *URL* should point to the `katex.css` stylesheet. If this option is
- not specified, a link to the KaTeX CDN will be inserted. Note that this
- option does not imply `--katex`.
-
-[MathML]: http://www.w3.org/Math/
-[LaTeXMathML]: http://math.etsu.edu/LaTeXMathML/
-[jsMath]: http://www.math.union.edu/~dpvc/jsmath/
-[MathJax]: https://www.mathjax.org
-[gladTeX]: http://ans.hsh.no/home/mgg/gladtex/
-[mimeTeX]: http://www.forkosh.com/mimetex.html
-[KaTeX]: https://github.com/Khan/KaTeX
-
-Options for wrapper scripts
----------------------------
-
-`--dump-args`
-
-: Print information about command-line arguments to *stdout*, then exit.
- This option is intended primarily for use in wrapper scripts.
- The first line of output contains the name of the output file specified
- with the `-o` option, or `-` (for *stdout*) if no output file was
- specified. The remaining lines contain the command-line arguments,
- one per line, in the order they appear. These do not include regular
- pandoc options and their arguments, but do include any options appearing
- after a `--` separator at the end of the line.
-
-`--ignore-args`
-
-: Ignore command-line arguments (for use in wrapper scripts).
- Regular pandoc options are not ignored. Thus, for example,
-
- pandoc --ignore-args -o foo.html -s foo.txt -- -e latin1
-
- is equivalent to
-
- pandoc -o foo.html -s
-
-Templates
-=========
-
-When the `-s/--standalone` option is used, pandoc uses a template to
-add header and footer material that is needed for a self-standing
-document. To see the default template that is used, just type
-
- pandoc -D *FORMAT*
-
-where *FORMAT* is the name of the output format. A custom template
-can be specified using the `--template` option. You can also override
-the system default templates for a given output format *FORMAT*
-by putting a file `templates/default.*FORMAT*` in the user data
-directory (see `--data-dir`, above). *Exceptions:*
-
-- For `odt` output, customize the `default.opendocument`
- template.
-- For `pdf` output, customize the `default.latex` template
- (or the `default.beamer` template, if you use `-t beamer`,
- or the `default.context` template, if you use `-t context`).
-- `docx` has no template (however, you can use
- `--reference-docx` to customize the output).
-
-Templates contain *variables*, which allow for the inclusion of
-arbitrary information at any point in the file. Variables may be set
-within the document using [YAML metadata blocks][Extension:
-`yaml_metadata_block`]. They may also be set at the
-command line using the `-V/--variable` option: variables set in this
-way override metadata fields with the same name.
-
-Variables set by pandoc
------------------------
-
-Some variables are set automatically by pandoc. These vary somewhat
-depending on the output format, but include metadata fields as well
-as the following:
-
-`title`, `author`, `date`
-: allow identification of basic aspects of the document. Included
- in PDF metadata through LaTeX and ConTeXt. These can be set
- through a [pandoc title block][Extension: `pandoc_title_block`],
- which allows for multiple authors, or through a YAML metadata block:
-
- ---
- author:
- - Aristotle
- - Peter Abelard
- ...
-
-`subtitle`
-: document subtitle, included in HTML, EPUB, LaTeX, ConTeXt, and Word docx;
- renders in LaTeX only when using a document class that supports
- `\subtitle`, such as `beamer` or the [KOMA-Script] series (`scrartcl`,
- `scrreprt`, `scrbook`).[^subtitle]
-
-`institute`
-: author affiliations (in LaTeX and Beamer only). Can be a
- list, when there are multiple authors.
-
-`abstract`
-: document summary, included in LaTeX, ConTeXt, AsciiDoc, and Word docx
-
-`keywords`
-: list of keywords to be included in HTML, PDF, and AsciiDoc metadata;
- may be repeated as for `author`, above
-
-`header-includes`
-: contents specified by `-H/--include-in-header` (may have multiple
- values)
-
-`toc`
-: non-null value if `--toc/--table-of-contents` was specified
-
-`toc-title`
-: title of table of contents (works only with EPUB and docx)
-
-`include-before`
-: contents specified by `-B/--include-before-body` (may have
- multiple values)
-
-`include-after`
-: contents specified by `-A/--include-after-body` (may have
- multiple values)
-
-`body`
-: body of document
-
-`meta-json`
-: JSON representation of all of the document's metadata
-
-[^subtitle]: To make `subtitle` work with other LaTeX
- document classes, you can add the following to `header-includes`:
-
- \providecommand{\subtitle}[1]{%
- \usepackage{titling}
- \posttitle{%
- \par\large#1\end{center}}
- }
-
-Language variables
-------------------
-
-`lang`
-: identifies the main language of the document,
- using a code according to [BCP 47] (e.g. `en` or `en-GB`).
- For some output formats, pandoc will convert it to an appropriate
- format stored in the additional variables `babel-lang`,
- `polyglossia-lang` (LaTeX) and `context-lang` (ConTeXt).
-
- Native pandoc `span`s and `div`s with the lang attribute
- (value in BCP 47) can be used to switch the language in
- that range.
-
-`otherlangs`
-: a list of other languages used in the document
- in the YAML metadata, according to [BCP 47]. For example:
- `otherlangs: [en-GB, fr]`.
- This is automatically generated from the `lang` attributes
- in all `span`s and `div`s but can be overridden.
- Currently only used by LaTeX through the generated
- `babel-otherlangs` and `polyglossia-otherlangs` variables.
- The LaTeX writer outputs polyglossia commands in the text but
- the `babel-newcommands` variable contains mappings for them
- to the corresponding babel.
-
-`dir`
-: the base direction of the document, either `rtl` (right-to-left)
- or `ltr` (left-to-right).
-
- For bidirectional documents, native pandoc `span`s and `div`s
- with the `dir` attribute (value `rtl` or `ltr`) can be used to
- override the base direction in some output formats.
- This may not always be necessary if the final renderer
- (e.g. the browser, when generating HTML) supports the
- [Unicode Bidirectional Algorithm].
-
- When using LaTeX for bidirectional documents, only the `xelatex` engine
- is fully supported (use `--latex-engine=xelatex`).
-
-[BCP 47]: https://tools.ietf.org/html/bcp47
-[Unicode Bidirectional Algorithm]: http://www.w3.org/International/articles/inline-bidi-markup/uba-basics
-
-Variables for slides
---------------------
-
-Variables are available for [producing slide shows with pandoc],
-including all [reveal.js configuration options].
-
-`slidy-url`
-: base URL for Slidy documents (defaults to
- `http://www.w3.org/Talks/Tools/Slidy2`)
-
-`slideous-url`
-: base URL for Slideous documents (defaults to `slideous`)
-
-`s5-url`
-: base URL for S5 documents (defaults to `s5/default`)
-
-`revealjs-url`
-: base URL for reveal.js documents (defaults to `reveal.js`)
-
-`theme`, `colortheme`, `fonttheme`, `innertheme`, `outertheme`
-: themes for LaTeX [`beamer`] documents
-
-`navigation`
-: controls navigation symbols in `beamer` documents
- (default is `empty` for no navigation symbols; other valid values
- are `frame`, `vertical`, and `horizontal`).
-
-`section-titles`
-: enables on "title pages" for new sections in `beamer`
- documents (default = true).
-
-[reveal.js configuration options]: https://github.com/hakimel/reveal.js#configuration
-
-Variables for LaTeX
--------------------
-
-LaTeX variables are used when [creating a PDF].
-
-`papersize`
-: paper size, e.g. `letter`, `A4`
-
-`fontsize`
-: font size for body text (e.g. `10pt`, `12pt`)
-
-`documentclass`
-: document class, e.g. [`article`], [`report`], [`book`], [`memoir`]
-
-`classoption`
-: option for document class, e.g. `oneside`; may be repeated
- for multiple options
-
-`geometry`
-: option for [`geometry`] package, e.g. `margin=1in`;
- may be repeated for multiple options
-
-`margin-left`, `margin-right`, `margin-top`, `margin-bottom`
-: sets margins, if `geometry` is not used (otherwise `geometry`
- overrides these)
-
-`linestretch`
-: adjusts line spacing using the [`setspace`]
- package, e.g. `1.25`, `1.5`
-
-`fontfamily`
-: font package for use with `pdflatex`:
- [TeX Live] includes many options, documented in the [LaTeX Font Catalogue].
- The default is [Latin Modern][`lm`].
-
-`fontfamilyoptions`
-: options for package used as `fontfamily`: e.g. `osf,sc` with
- `fontfamily` set to [`mathpazo`] provides Palatino with old-style
- figures and true small caps; may be repeated for multiple options
-
-`mainfont`, `sansfont`, `monofont`, `mathfont`, `CJKmainfont`
-: font families for use with `xelatex` or
- `lualatex`: take the name of any system font, using the
- [`fontspec`] package. Note that if `CJKmainfont` is used,
- the [`xecjk`] package must be available.
-
-`mainfontoptions`, `sansfontoptions`, `monofontoptions`, `mathfontoptions`, `CJKoptions`
-: options to use with `mainfont`, `sansfont`, `monofont`, `mathfont`,
- `CJKmainfont` in `xelatex` and `lualatex`. Allow for any choices
- available through [`fontspec`], such as the OpenType features
- `Numbers=OldStyle,Numbers=Proportional`. May be repeated for multiple options.
-
-`fontenc`
-: allows font encoding to be specified through `fontenc` package (with `pdflatex`);
- default is `T1` (see guide to [LaTeX font encodings])
-
-`colorlinks`
-: add color to link text; automatically enabled if any of `linkcolor`, `citecolor`,
- `urlcolor`, or `toccolor` are set
-
-`linkcolor`, `citecolor`, `urlcolor`, `toccolor`
-: color for internal links, citation links, external links, and links in table of contents:
- uses any of the [predefined LaTeX colors]
-
-`links-as-notes`
-: causes links to be printed as footnotes
-
-`indent`
-: uses document class settings for indentation (the default LaTeX template
- otherwise removes indentation and adds space between paragraphs)
-
-`subparagraph`
-: disables default behavior of LaTeX template that redefines (sub)paragraphs
- as sections, changing the appearance of nested headings in some classes
-
-`thanks`
-: specifies contents of acknowledgments footnote after document title.
-
-`toc`
-: include table of contents (can also be set using `--toc/--table-of-contents`)
-
-`toc-depth`
-: level of section to include in table of contents
-
-`secnumdepth`
-: numbering depth for sections, if sections are numbered
-
-`lof`, `lot`
-: include list of figures, list of tables
-
-`bibliography`
-: bibliography to use for resolving references
-
-`biblio-style`
-: bibliography style, when used with `--natbib` and
- `--biblatex`.
-
-`biblatexoptions`
-: list of options for biblatex.
-
-[`article`]: https://ctan.org/pkg/article
-[`report`]: https://ctan.org/pkg/report
-[`book`]: https://ctan.org/pkg/book
-[KOMA-Script]: https://ctan.org/pkg/koma-script
-[`memoir`]: https://ctan.org/pkg/memoir
-[predefined LaTeX colors]: https://en.wikibooks.org/wiki/LaTeX/Colors#Predefined_colors
-[LaTeX Font Catalogue]: http://www.tug.dk/FontCatalogue/
-[`mathpazo`]: https://ctan.org/pkg/mathpazo
-[LaTeX font encodings]: https://ctan.org/pkg/encguide
-
-Variables for ConTeXt
----------------------
-
-`papersize`
-: paper size, e.g. `letter`, `A4`, `landscape` (see [ConTeXt Paper Setup]);
- may be repeated for multiple options
-
-`layout`
-: options for page margins and text arrangement (see [ConTeXt Layout]);
- may be repeated for multiple options
-
-`margin-left`, `margin-right`, `margin-top`, `margin-bottom`
-: sets margins, if `layout` is not used (otherwise `layout`
- overrides these)
-
-`fontsize`
-: font size for body text (e.g. `10pt`, `12pt`)
-
-`mainfont`, `sansfont`, `monofont`, `mathfont`
-: font families: take the name of any system font (see [ConTeXt Font Switching])
-
-`linkcolor`, `contrastcolor`
-: color for links outside and inside a page, e.g. `red`, `blue` (see [ConTeXt Color])
-
-`linkstyle`
-: typeface style for links, e.g. `normal`, `bold`, `slanted`, `boldslanted`, `type`, `cap`, `small`
-
-`indenting`
-: controls indentation of paragraphs, e.g. `yes,small,next` (see [ConTeXt Indentation]);
- may be repeated for multiple options
-
-`whitespace`
-: spacing between paragraphs, e.g. `none`, `small` (using [`setupwhitespace`])
-
-`interlinespace`
-: adjusts line spacing, e.g. `4ex` (using [`setupinterlinespace`]);
- may be repeated for multiple options
-
-`headertext`, `footertext`
-: text to be placed in running header or footer (see [ConTeXt Headers and Footers]);
- may be repeated up to four times for different placement
-
-`pagenumbering`
-: page number style and location (using [`setuppagenumbering`]);
- may be repeated for multiple options
-
-`toc`
-: include table of contents (can also be set using `--toc/--table-of-contents`)
-
-`lof`, `lot`
-: include list of figures, list of tables
-
-[ConTeXt Paper Setup]: http://wiki.contextgarden.net/PaperSetup
-[ConTeXt Layout]: http://wiki.contextgarden.net/Layout
-[ConTeXt Font Switching]: http://wiki.contextgarden.net/Font_Switching
-[ConTeXt Color]: http://wiki.contextgarden.net/Color
-[ConTeXt Headers and Footers]: http://wiki.contextgarden.net/Headers_and_Footers
-[ConTeXt Indentation]: http://wiki.contextgarden.net/Indentation
-[`setupwhitespace`]: http://wiki.contextgarden.net/Command/setupwhitespace
-[`setupinterlinespace`]: http://wiki.contextgarden.net/Command/setupinterlinespace
-[`setuppagenumbering`]: http://wiki.contextgarden.net/Command/setuppagenumbering
-
-Variables for man pages
------------------------
-
-`section`
-: section number in man pages
-
-`header`
-: header in man pages
-
-`footer`
-: footer in man pages
-
-`adjusting`
-: adjusts text to left (`l`), right (`r`), center (`c`),
- or both (`b`) margins
-
-`hyphenate`
-: if `true` (the default), hyphenation will be used
-
-Using variables in templates
-----------------------------
-
-Variable names are sequences of alphanumerics, `-`, and `_`,
-starting with a letter. A variable name surrounded by `$` signs
-will be replaced by its value. For example, the string `$title$` in
-
- <title>$title$</title>
-
-will be replaced by the document title.
-
-To write a literal `$` in a template, use `$$`.
-
-Templates may contain conditionals. The syntax is as follows:
-
- $if(variable)$
- X
- $else$
- Y
- $endif$
-
-This will include `X` in the template if `variable` has a non-null
-value; otherwise it will include `Y`. `X` and `Y` are placeholders for
-any valid template text, and may include interpolated variables or other
-conditionals. The `$else$` section may be omitted.
-
-When variables can have multiple values (for example, `author` in
-a multi-author document), you can use the `$for$` keyword:
-
- $for(author)$
- <meta name="author" content="$author$" />
- $endfor$
-
-You can optionally specify a separator to be used between
-consecutive items:
-
- $for(author)$$author$$sep$, $endfor$
-
-A dot can be used to select a field of a variable that takes
-an object as its value. So, for example:
-
- $author.name$ ($author.affiliation$)
-
-If you use custom templates, you may need to revise them as pandoc
-changes. We recommend tracking the changes in the default templates,
-and modifying your custom templates accordingly. An easy way to do this
-is to fork the [pandoc-templates] repository and merge in changes after each
-pandoc release.
-
-[pandoc-templates]: https://github.com/jgm/pandoc-templates
-
-Pandoc's Markdown
-=================
-
-Pandoc understands an extended and slightly revised version of
-John Gruber's [Markdown] syntax. This document explains the syntax,
-noting differences from standard Markdown. Except where noted, these
-differences can be suppressed by using the `markdown_strict` format instead
-of `markdown`. An extensions can be enabled by adding `+EXTENSION`
-to the format name and disabled by adding `-EXTENSION`. For example,
-`markdown_strict+footnotes` is strict Markdown with footnotes
-enabled, while `markdown-footnotes-pipe_tables` is pandoc's
-Markdown without footnotes or pipe tables.
-
-Philosophy
-----------
-
-Markdown is designed to be easy to write, and, even more importantly,
-easy to read:
-
-> A Markdown-formatted document should be publishable as-is, as plain
-> text, without looking like it's been marked up with tags or formatting
-> instructions.
-> -- [John Gruber](http://daringfireball.net/projects/markdown/syntax#philosophy)
-
-This principle has guided pandoc's decisions in finding syntax for
-tables, footnotes, and other extensions.
-
-There is, however, one respect in which pandoc's aims are different
-from the original aims of Markdown. Whereas Markdown was originally
-designed with HTML generation in mind, pandoc is designed for multiple
-output formats. Thus, while pandoc allows the embedding of raw HTML,
-it discourages it, and provides other, non-HTMLish ways of representing
-important document elements like definition lists, tables, mathematics, and
-footnotes.
-
-Paragraphs
-----------
-
-A paragraph is one or more lines of text followed by one or more blank lines.
-Newlines are treated as spaces, so you can reflow your paragraphs as you like.
-If you need a hard line break, put two or more spaces at the end of a line.
-
-#### Extension: `escaped_line_breaks` ####
-
-A backslash followed by a newline is also a hard line break.
-Note: in multiline and grid table cells, this is the only way
-to create a hard line break, since trailing spaces in the cells
-are ignored.
-
-Headers
--------
-
-There are two kinds of headers: Setext and ATX.
-
-### Setext-style headers ###
-
-A setext-style header is a line of text "underlined" with a row of `=` signs
-(for a level one header) or `-` signs (for a level two header):
-
- A level-one header
- ==================
-
- A level-two header
- ------------------
-
-The header text can contain inline formatting, such as emphasis (see
-[Inline formatting], below).
-
-
-### ATX-style headers ###
-
-An ATX-style header consists of one to six `#` signs and a line of
-text, optionally followed by any number of `#` signs. The number of
-`#` signs at the beginning of the line is the header level:
-
- ## A level-two header
-
- ### A level-three header ###
-
-As with setext-style headers, the header text can contain formatting:
-
- # A level-one header with a [link](/url) and *emphasis*
-
-#### Extension: `blank_before_header` ####
-
-Standard Markdown syntax does not require a blank line before a header.
-Pandoc does require this (except, of course, at the beginning of the
-document). The reason for the requirement is that it is all too easy for a
-`#` to end up at the beginning of a line by accident (perhaps through line
-wrapping). Consider, for example:
-
- I like several of their flavors of ice cream:
- #22, for example, and #5.
-
-
-### Header identifiers ###
-
-#### Extension: `header_attributes` ####
-
-Headers can be assigned attributes using this syntax at the end
-of the line containing the header text:
-
- {#identifier .class .class key=value key=value}
-
-Thus, for example, the following headers will all be assigned the identifier
-`foo`:
-
- # My header {#foo}
-
- ## My header ## {#foo}
-
- My other header {#foo}
- ---------------
-
-(This syntax is compatible with [PHP Markdown Extra].)
-
-Note that although this syntax allows assignment of classes and key/value
-attributes, writers generally don't use all of this information. Identifiers,
-classes, and key/value attributes are used in HTML and HTML-based formats such
-as EPUB and slidy. Identifiers are used for labels and link anchors in the
-LaTeX, ConTeXt, Textile, and AsciiDoc writers.
-
-Headers with the class `unnumbered` will not be numbered, even if
-`--number-sections` is specified. A single hyphen (`-`) in an attribute
-context is equivalent to `.unnumbered`, and preferable in non-English
-documents. So,
-
- # My header {-}
-
-is just the same as
-
- # My header {.unnumbered}
-
-#### Extension: `auto_identifiers` ####
-
-A header without an explicitly specified identifier will be
-automatically assigned a unique identifier based on the header text.
-To derive the identifier from the header text,
-
- - Remove all formatting, links, etc.
- - Remove all footnotes.
- - Remove all punctuation, except underscores, hyphens, and periods.
- - Replace all spaces and newlines with hyphens.
- - Convert all alphabetic characters to lowercase.
- - Remove everything up to the first letter (identifiers may
- not begin with a number or punctuation mark).
- - If nothing is left after this, use the identifier `section`.
-
-Thus, for example,
-
- Header Identifier
- ------------------------------- ----------------------------
- `Header identifiers in HTML` `header-identifiers-in-html`
- `*Dogs*?--in *my* house?` `dogs--in-my-house`
- `[HTML], [S5], or [RTF]?` `html-s5-or-rtf`
- `3. Applications` `applications`
- `33` `section`
-
-These rules should, in most cases, allow one to determine the identifier
-from the header text. The exception is when several headers have the
-same text; in this case, the first will get an identifier as described
-above; the second will get the same identifier with `-1` appended; the
-third with `-2`; and so on.
-
-These identifiers are used to provide link targets in the table of
-contents generated by the `--toc|--table-of-contents` option. They
-also make it easy to provide links from one section of a document to
-another. A link to this section, for example, might look like this:
-
- See the section on
- [header identifiers](#header-identifiers-in-html-latex-and-context).
-
-Note, however, that this method of providing links to sections works
-only in HTML, LaTeX, and ConTeXt formats.
-
-If the `--section-divs` option is specified, then each section will
-be wrapped in a `div` (or a `section`, if `--html5` was specified),
-and the identifier will be attached to the enclosing `<div>`
-(or `<section>`) tag rather than the header itself. This allows entire
-sections to be manipulated using javascript or treated differently in
-CSS.
-
-#### Extension: `implicit_header_references` ####
-
-Pandoc behaves as if reference links have been defined for each header.
-So, to link to a header
-
- # Header identifiers in HTML
-
-you can simply write
-
- [Header identifiers in HTML]
-
-or
-
- [Header identifiers in HTML][]
-
-or
-
- [the section on header identifiers][header identifiers in
- HTML]
-
-instead of giving the identifier explicitly:
-
- [Header identifiers in HTML](#header-identifiers-in-html)
-
-If there are multiple headers with identical text, the corresponding
-reference will link to the first one only, and you will need to use explicit
-links to link to the others, as described above.
-
-Like regular reference links, these references are case-insensitive.
-
-Explicit link reference definitions always take priority over
-implicit header references. So, in the following example, the
-link will point to `bar`, not to `#foo`:
-
- # Foo
-
- [foo]: bar
-
- See [foo]
-
-Block quotations
-----------------
-
-Markdown uses email conventions for quoting blocks of text.
-A block quotation is one or more paragraphs or other block elements
-(such as lists or headers), with each line preceded by a `>` character
-and an optional space. (The `>` need not start at the left margin, but
-it should not be indented more than three spaces.)
-
- > This is a block quote. This
- > paragraph has two lines.
- >
- > 1. This is a list inside a block quote.
- > 2. Second item.
-
-A "lazy" form, which requires the `>` character only on the first
-line of each block, is also allowed:
-
- > This is a block quote. This
- paragraph has two lines.
-
- > 1. This is a list inside a block quote.
- 2. Second item.
-
-Among the block elements that can be contained in a block quote are
-other block quotes. That is, block quotes can be nested:
-
- > This is a block quote.
- >
- > > A block quote within a block quote.
-
-If the `>` character is followed by an optional space, that space
-will be considered part of the block quote marker and not part of
-the indentation of the contents. Thus, to put an indented code
-block in a block quote, you need five spaces after the `>`:
-
- > code
-
-#### Extension: `blank_before_blockquote` ####
-
-Standard Markdown syntax does not require a blank line before a block
-quote. Pandoc does require this (except, of course, at the beginning of the
-document). The reason for the requirement is that it is all too easy for a
-`>` to end up at the beginning of a line by accident (perhaps through line
-wrapping). So, unless the `markdown_strict` format is used, the following does
-not produce a nested block quote in pandoc:
-
- > This is a block quote.
- >> Nested.
-
-
-Verbatim (code) blocks
-----------------------
-
-### Indented code blocks ###
-
-A block of text indented four spaces (or one tab) is treated as verbatim
-text: that is, special characters do not trigger special formatting,
-and all spaces and line breaks are preserved. For example,
-
- if (a > 3) {
- moveShip(5 * gravity, DOWN);
- }
-
-The initial (four space or one tab) indentation is not considered part
-of the verbatim text, and is removed in the output.
-
-Note: blank lines in the verbatim text need not begin with four spaces.
-
-
-### Fenced code blocks ###
-
-#### Extension: `fenced_code_blocks` ####
-
-In addition to standard indented code blocks, pandoc supports
-*fenced* code blocks. These begin with a row of three or more
-tildes (`~`) and end with a row of tildes that must be at least as long as
-the starting row. Everything between these lines is treated as code. No
-indentation is necessary:
-
- ~~~~~~~
- if (a > 3) {
- moveShip(5 * gravity, DOWN);
- }
- ~~~~~~~
-
-Like regular code blocks, fenced code blocks must be separated
-from surrounding text by blank lines.
-
-If the code itself contains a row of tildes or backticks, just use a longer
-row of tildes or backticks at the start and end:
-
- ~~~~~~~~~~~~~~~~
- ~~~~~~~~~~
- code including tildes
- ~~~~~~~~~~
- ~~~~~~~~~~~~~~~~
-
-#### Extension: `backtick_code_blocks` ####
-
-Same as `fenced_code_blocks`, but uses backticks (`` ` ``) instead of tildes
-(`~`).
-
-#### Extension: `fenced_code_attributes` ####
-
-Optionally, you may attach attributes to fenced or backtick code block using
-this syntax:
-
- ~~~~ {#mycode .haskell .numberLines startFrom="100"}
- qsort [] = []
- qsort (x:xs) = qsort (filter (< x) xs) ++ [x] ++
- qsort (filter (>= x) xs)
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Here `mycode` is an identifier, `haskell` and `numberLines` are classes, and
-`startFrom` is an attribute with value `100`. Some output formats can use this
-information to do syntax highlighting. Currently, the only output formats
-that uses this information are HTML and LaTeX. If highlighting is supported
-for your output format and language, then the code block above will appear
-highlighted, with numbered lines. (To see which languages are supported, do
-`pandoc --version`.) Otherwise, the code block above will appear as follows:
-
- <pre id="mycode" class="haskell numberLines" startFrom="100">
- <code>
- ...
- </code>
- </pre>
-
-A shortcut form can also be used for specifying the language of
-the code block:
-
- ```haskell
- qsort [] = []
- ```
-
-This is equivalent to:
-
- ``` {.haskell}
- qsort [] = []
- ```
-
-If the `fenced_code_attributes` extension is disabled, but
-input contains class attribute(s) for the codeblock, the first
-class attribute will be printed after the opening fence as a bare
-word.
-
-To prevent all highlighting, use the `--no-highlight` flag.
-To set the highlighting style, use `--highlight-style`.
-For more information on highlighting, see [Syntax highlighting],
-below.
-
-Line blocks
------------
-
-#### Extension: `line_blocks` ####
-
-A line block is a sequence of lines beginning with a vertical bar (`|`)
-followed by a space. The division into lines will be preserved in
-the output, as will any leading spaces; otherwise, the lines will
-be formatted as Markdown. This is useful for verse and addresses:
-
- | The limerick packs laughs anatomical
- | In space that is quite economical.
- | But the good ones I've seen
- | So seldom are clean
- | And the clean ones so seldom are comical
-
- | 200 Main St.
- | Berkeley, CA 94718
-
-The lines can be hard-wrapped if needed, but the continuation
-line must begin with a space.
-
- | The Right Honorable Most Venerable and Righteous Samuel L.
- Constable, Jr.
- | 200 Main St.
- | Berkeley, CA 94718
-
-This syntax is borrowed from [reStructuredText].
-
-Lists
------
-
-### Bullet lists ###
-
-A bullet list is a list of bulleted list items. A bulleted list
-item begins with a bullet (`*`, `+`, or `-`). Here is a simple
-example:
-
- * one
- * two
- * three
-
-This will produce a "compact" list. If you want a "loose" list, in which
-each item is formatted as a paragraph, put spaces between the items:
-
- * one
-
- * two
-
- * three
-
-The bullets need not be flush with the left margin; they may be
-indented one, two, or three spaces. The bullet must be followed
-by whitespace.
-
-List items look best if subsequent lines are flush with the first
-line (after the bullet):
-
- * here is my first
- list item.
- * and my second.
-
-But Markdown also allows a "lazy" format:
-
- * here is my first
- list item.
- * and my second.
-
-### The four-space rule ###
-
-A list item may contain multiple paragraphs and other block-level
-content. However, subsequent paragraphs must be preceded by a blank line
-and indented four spaces or a tab. The list will look better if the first
-paragraph is aligned with the rest:
-
- * First paragraph.
-
- Continued.
-
- * Second paragraph. With a code block, which must be indented
- eight spaces:
-
- { code }
-
-List items may include other lists. In this case the preceding blank
-line is optional. The nested list must be indented four spaces or
-one tab:
-
- * fruits
- + apples
- - macintosh
- - red delicious
- + pears
- + peaches
- * vegetables
- + broccoli
- + chard
-
-As noted above, Markdown allows you to write list items "lazily," instead of
-indenting continuation lines. However, if there are multiple paragraphs or
-other blocks in a list item, the first line of each must be indented.
-
- + A lazy, lazy, list
- item.
-
- + Another one; this looks
- bad but is legal.
-
- Second paragraph of second
- list item.
-
-**Note:** Although the four-space rule for continuation paragraphs
-comes from the official [Markdown syntax guide], the reference implementation,
-`Markdown.pl`, does not follow it. So pandoc will give different results than
-`Markdown.pl` when authors have indented continuation paragraphs fewer than
-four spaces.
-
-The [Markdown syntax guide] is not explicit whether the four-space
-rule applies to *all* block-level content in a list item; it only
-mentions paragraphs and code blocks. But it implies that the rule
-applies to all block-level content (including nested lists), and
-pandoc interprets it that way.
-
- [Markdown syntax guide]:
- http://daringfireball.net/projects/markdown/syntax#list
-
-### Ordered lists ###
-
-Ordered lists work just like bulleted lists, except that the items
-begin with enumerators rather than bullets.
-
-In standard Markdown, enumerators are decimal numbers followed
-by a period and a space. The numbers themselves are ignored, so
-there is no difference between this list:
-
- 1. one
- 2. two
- 3. three
-
-and this one:
-
- 5. one
- 7. two
- 1. three
-
-#### Extension: `fancy_lists` ####
-
-Unlike standard Markdown, pandoc allows ordered list items to be marked
-with uppercase and lowercase letters and roman numerals, in addition to
-arabic numerals. List markers may be enclosed in parentheses or followed by a
-single right-parentheses or period. They must be separated from the
-text that follows by at least one space, and, if the list marker is a
-capital letter with a period, by at least two spaces.[^2]
-
-[^2]: The point of this rule is to ensure that normal paragraphs
- starting with people's initials, like
-
- B. Russell was an English philosopher.
-
- do not get treated as list items.
-
- This rule will not prevent
-
- (C) 2007 Joe Smith
-
- from being interpreted as a list item. In this case, a backslash
- escape can be used:
-
- (C\) 2007 Joe Smith
-
-The `fancy_lists` extension also allows '`#`' to be used as an
-ordered list marker in place of a numeral:
-
- #. one
- #. two
-
-#### Extension: `startnum` ####
-
-Pandoc also pays attention to the type of list marker used, and to the
-starting number, and both of these are preserved where possible in the
-output format. Thus, the following yields a list with numbers followed
-by a single parenthesis, starting with 9, and a sublist with lowercase
-roman numerals:
-
- 9) Ninth
- 10) Tenth
- 11) Eleventh
- i. subone
- ii. subtwo
- iii. subthree
-
-Pandoc will start a new list each time a different type of list
-marker is used. So, the following will create three lists:
-
- (2) Two
- (5) Three
- 1. Four
- * Five
-
-If default list markers are desired, use `#.`:
-
- #. one
- #. two
- #. three
-
-
-### Definition lists ###
-
-#### Extension: `definition_lists` ####
-
-Pandoc supports definition lists, using the syntax of
-[PHP Markdown Extra] with some extensions.[^3]
-
- Term 1
-
- : Definition 1
-
- Term 2 with *inline markup*
-
- : Definition 2
-
- { some code, part of Definition 2 }
-
- Third paragraph of definition 2.
-
-Each term must fit on one line, which may optionally be followed by
-a blank line, and must be followed by one or more definitions.
-A definition begins with a colon or tilde, which may be indented one
-or two spaces.
-
-A term may have multiple definitions, and each definition may consist of one or
-more block elements (paragraph, code block, list, etc.), each indented four
-spaces or one tab stop. The body of the definition (including the first line,
-aside from the colon or tilde) should be indented four spaces. However,
-as with other Markdown lists, you can "lazily" omit indentation except
-at the beginning of a paragraph or other block element:
-
- Term 1
-
- : Definition
- with lazy continuation.
-
- Second paragraph of the definition.
-
-If you leave space before the definition (as in the example above),
-the text of the definition will be treated as a paragraph. In some
-output formats, this will mean greater spacing between term/definition
-pairs. For a more compact definition list, omit the space before the
-definition:
-
- Term 1
- ~ Definition 1
-
- Term 2
- ~ Definition 2a
- ~ Definition 2b
-
-Note that space between items in a definition list is required.
-(A variant that loosens this requirement, but disallows "lazy"
-hard wrapping, can be activated with `compact_definition_lists`: see
-[Non-pandoc extensions], below.)
-
-[^3]: I have been influenced by the suggestions of [David Wheeler](http://www.justatheory.com/computers/markup/modest-markdown-proposal.html).
-
-### Numbered example lists ###
-
-#### Extension: `example_lists` ####
-
-The special list marker `@` can be used for sequentially numbered
-examples. The first list item with a `@` marker will be numbered '1',
-the next '2', and so on, throughout the document. The numbered examples
-need not occur in a single list; each new list using `@` will take up
-where the last stopped. So, for example:
-
- (@) My first example will be numbered (1).
- (@) My second example will be numbered (2).
-
- Explanation of examples.
-
- (@) My third example will be numbered (3).
-
-Numbered examples can be labeled and referred to elsewhere in the
-document:
-
- (@good) This is a good example.
-
- As (@good) illustrates, ...
-
-The label can be any string of alphanumeric characters, underscores,
-or hyphens.
-
-
-### Compact and loose lists ###
-
-Pandoc behaves differently from `Markdown.pl` on some "edge
-cases" involving lists. Consider this source:
-
- + First
- + Second:
- - Fee
- - Fie
- - Foe
-
- + Third
-
-Pandoc transforms this into a "compact list" (with no `<p>` tags around
-"First", "Second", or "Third"), while Markdown puts `<p>` tags around
-"Second" and "Third" (but not "First"), because of the blank space
-around "Third". Pandoc follows a simple rule: if the text is followed by
-a blank line, it is treated as a paragraph. Since "Second" is followed
-by a list, and not a blank line, it isn't treated as a paragraph. The
-fact that the list is followed by a blank line is irrelevant. (Note:
-Pandoc works this way even when the `markdown_strict` format is specified. This
-behavior is consistent with the official Markdown syntax description,
-even though it is different from that of `Markdown.pl`.)
-
-
-### Ending a list ###
-
-What if you want to put an indented code block after a list?
-
- - item one
- - item two
-
- { my code block }
-
-Trouble! Here pandoc (like other Markdown implementations) will treat
-`{ my code block }` as the second paragraph of item two, and not as
-a code block.
-
-To "cut off" the list after item two, you can insert some non-indented
-content, like an HTML comment, which won't produce visible output in
-any format:
-
- - item one
- - item two
-
- <!-- end of list -->
-
- { my code block }
-
-You can use the same trick if you want two consecutive lists instead
-of one big list:
-
- 1. one
- 2. two
- 3. three
-
- <!-- -->
-
- 1. uno
- 2. dos
- 3. tres
-
-Horizontal rules
-----------------
-
-A line containing a row of three or more `*`, `-`, or `_` characters
-(optionally separated by spaces) produces a horizontal rule:
-
- * * * *
-
- ---------------
-
-
-Tables
-------
-
-Four kinds of tables may be used. The first three kinds presuppose the use of
-a fixed-width font, such as Courier. The fourth kind can be used with
-proportionally spaced fonts, as it does not require lining up columns.
-
-#### Extension: `table_captions` ####
-
-A caption may optionally be provided with all 4 kinds of tables (as
-illustrated in the examples below). A caption is a paragraph beginning
-with the string `Table:` (or just `:`), which will be stripped off.
-It may appear either before or after the table.
-
-#### Extension: `simple_tables` ####
-
-Simple tables look like this:
-
- Right Left Center Default
- ------- ------ ---------- -------
- 12 12 12 12
- 123 123 123 123
- 1 1 1 1
-
- Table: Demonstration of simple table syntax.
-
-The headers and table rows must each fit on one line. Column
-alignments are determined by the position of the header text relative
-to the dashed line below it:[^4]
-
- - If the dashed line is flush with the header text on the right side
- but extends beyond it on the left, the column is right-aligned.
- - If the dashed line is flush with the header text on the left side
- but extends beyond it on the right, the column is left-aligned.
- - If the dashed line extends beyond the header text on both sides,
- the column is centered.
- - If the dashed line is flush with the header text on both sides,
- the default alignment is used (in most cases, this will be left).
-
-[^4]: This scheme is due to Michel Fortin, who proposed it on the
- [Markdown discussion list](http://six.pairlist.net/pipermail/markdown-discuss/2005-March/001097.html).
-
-The table must end with a blank line, or a line of dashes followed by
-a blank line.
-
-The column headers may be omitted, provided a dashed line is used
-to end the table. For example:
-
- ------- ------ ---------- -------
- 12 12 12 12
- 123 123 123 123
- 1 1 1 1
- ------- ------ ---------- -------
-
-When headers are omitted, column alignments are determined on the basis
-of the first line of the table body. So, in the tables above, the columns
-would be right, left, center, and right aligned, respectively.
-
-#### Extension: `multiline_tables` ####
-
-Multiline tables allow headers and table rows to span multiple lines
-of text (but cells that span multiple columns or rows of the table are
-not supported). Here is an example:
-
- -------------------------------------------------------------
- Centered Default Right Left
- Header Aligned Aligned Aligned
- ----------- ------- --------------- -------------------------
- First row 12.0 Example of a row that
- spans multiple lines.
-
- Second row 5.0 Here's another one. Note
- the blank line between
- rows.
- -------------------------------------------------------------
-
- Table: Here's the caption. It, too, may span
- multiple lines.
-
-These work like simple tables, but with the following differences:
-
- - They must begin with a row of dashes, before the header text
- (unless the headers are omitted).
- - They must end with a row of dashes, then a blank line.
- - The rows must be separated by blank lines.
-
-In multiline tables, the table parser pays attention to the widths of
-the columns, and the writers try to reproduce these relative widths in
-the output. So, if you find that one of the columns is too narrow in the
-output, try widening it in the Markdown source.
-
-Headers may be omitted in multiline tables as well as simple tables:
-
- ----------- ------- --------------- -------------------------
- First row 12.0 Example of a row that
- spans multiple lines.
-
- Second row 5.0 Here's another one. Note
- the blank line between
- rows.
- ----------- ------- --------------- -------------------------
-
- : Here's a multiline table without headers.
-
-It is possible for a multiline table to have just one row, but the row
-should be followed by a blank line (and then the row of dashes that ends
-the table), or the table may be interpreted as a simple table.
-
-#### Extension: `grid_tables` ####
-
-Grid tables look like this:
-
- : Sample grid table.
-
- +---------------+---------------+--------------------+
- | Fruit | Price | Advantages |
- +===============+===============+====================+
- | Bananas | $1.34 | - built-in wrapper |
- | | | - bright color |
- +---------------+---------------+--------------------+
- | Oranges | $2.10 | - cures scurvy |
- | | | - tasty |
- +---------------+---------------+--------------------+
-
-The row of `=`s separates the header from the table body, and can be
-omitted for a headerless table. The cells of grid tables may contain
-arbitrary block elements (multiple paragraphs, code blocks, lists,
-etc.). Alignments are not supported, nor are cells that span multiple
-columns or rows. Grid tables can be created easily using [Emacs table mode].
-
-[Emacs table mode]: http://table.sourceforge.net/
-
-#### Extension: `pipe_tables` ####
-
-Pipe tables look like this:
-
- | Right | Left | Default | Center |
- |------:|:-----|---------|:------:|
- | 12 | 12 | 12 | 12 |
- | 123 | 123 | 123 | 123 |
- | 1 | 1 | 1 | 1 |
-
- : Demonstration of pipe table syntax.
-
-The syntax is identical to [PHP Markdown Extra tables]. The beginning and
-ending pipe characters are optional, but pipes are required between all
-columns. The colons indicate column alignment as shown. The header
-cannot be omitted. To simulate a headerless table, include a header
-with blank cells.
-
-Since the pipes indicate column boundaries, columns need not be vertically
-aligned, as they are in the above example. So, this is a perfectly
-legal (though ugly) pipe table:
-
- fruit| price
- -----|-----:
- apple|2.05
- pear|1.37
- orange|3.09
-
-The cells of pipe tables cannot contain block elements like paragraphs
-and lists, and cannot span multiple lines. If a pipe table contains a
-row whose printable content is wider than the column width (see
-`--columns`), then the cell contents will wrap, with the
-relative cell widths determined by the widths of the separator
-lines.
-
-Note: pandoc also recognizes pipe tables of the following
-form, as can be produced by Emacs' orgtbl-mode:
-
- | One | Two |
- |-----+-------|
- | my | table |
- | is | nice |
-
-The difference is that `+` is used instead of `|`. Other orgtbl features
-are not supported. In particular, to get non-default column alignment,
-you'll need to add colons as above.
-
-[PHP Markdown Extra tables]: https://michelf.ca/projects/php-markdown/extra/#table
-
-Metadata blocks
----------------
-
-#### Extension: `pandoc_title_block` ####
-
-If the file begins with a title block
-
- % title
- % author(s) (separated by semicolons)
- % date
-
-it will be parsed as bibliographic information, not regular text. (It
-will be used, for example, in the title of standalone LaTeX or HTML
-output.) The block may contain just a title, a title and an author,
-or all three elements. If you want to include an author but no
-title, or a title and a date but no author, you need a blank line:
-
- %
- % Author
-
- % My title
- %
- % June 15, 2006
-
-The title may occupy multiple lines, but continuation lines must
-begin with leading space, thus:
-
- % My title
- on multiple lines
-
-If a document has multiple authors, the authors may be put on
-separate lines with leading space, or separated by semicolons, or
-both. So, all of the following are equivalent:
-
- % Author One
- Author Two
-
- % Author One; Author Two
-
- % Author One;
- Author Two
-
-The date must fit on one line.
-
-All three metadata fields may contain standard inline formatting
-(italics, links, footnotes, etc.).
-
-Title blocks will always be parsed, but they will affect the output only
-when the `--standalone` (`-s`) option is chosen. In HTML output, titles
-will appear twice: once in the document head -- this is the title that
-will appear at the top of the window in a browser -- and once at the
-beginning of the document body. The title in the document head can have
-an optional prefix attached (`--title-prefix` or `-T` option). The title
-in the body appears as an H1 element with class "title", so it can be
-suppressed or reformatted with CSS. If a title prefix is specified with
-`-T` and no title block appears in the document, the title prefix will
-be used by itself as the HTML title.
-
-The man page writer extracts a title, man page section number, and
-other header and footer information from the title line. The title
-is assumed to be the first word on the title line, which may optionally
-end with a (single-digit) section number in parentheses. (There should
-be no space between the title and the parentheses.) Anything after
-this is assumed to be additional footer and header text. A single pipe
-character (`|`) should be used to separate the footer text from the header
-text. Thus,
-
- % PANDOC(1)
-
-will yield a man page with the title `PANDOC` and section 1.
-
- % PANDOC(1) Pandoc User Manuals
-
-will also have "Pandoc User Manuals" in the footer.
-
- % PANDOC(1) Pandoc User Manuals | Version 4.0
-
-will also have "Version 4.0" in the header.
-
-#### Extension: `yaml_metadata_block` ####
-
-A YAML metadata block is a valid YAML object, delimited by a line of three
-hyphens (`---`) at the top and a line of three hyphens (`---`) or three dots
-(`...`) at the bottom. A YAML metadata block may occur anywhere in the
-document, but if it is not at the beginning, it must be preceded by a blank
-line. (Note that, because of the way pandoc concatenates input files when
-several are provided, you may also keep the metadata in a separate YAML file
-and pass it to pandoc as an argument, along with your Markdown files:
-
- pandoc chap1.md chap2.md chap3.md metadata.yaml -s -o book.html
-
-Just be sure that the YAML file begins with `---` and ends with `---` or
-`...`.)
-
-Metadata will be taken from the fields of the YAML object and added to any
-existing document metadata. Metadata can contain lists and objects (nested
-arbitrarily), but all string scalars will be interpreted as Markdown. Fields
-with names ending in an underscore will be ignored by pandoc. (They may be
-given a role by external processors.)
-
-A document may contain multiple metadata blocks. The metadata fields will
-be combined through a *left-biased union*: if two metadata blocks attempt
-to set the same field, the value from the first block will be taken.
-
-When pandoc is used with `-t markdown` to create a Markdown document,
-a YAML metadata block will be produced only if the `-s/--standalone`
-option is used. All of the metadata will appear in a single block
-at the beginning of the document.
-
-Note that YAML escaping rules must be followed. Thus, for example,
-if a title contains a colon, it must be quoted. The pipe character
-(`|`) can be used to begin an indented block that will be interpreted
-literally, without need for escaping. This form is necessary
-when the field contains blank lines:
-
- ---
- title: 'This is the title: it contains a colon'
- author:
- - name: Author One
- affiliation: University of Somewhere
- - name: Author Two
- affiliation: University of Nowhere
- tags: [nothing, nothingness]
- abstract: |
- This is the abstract.
-
- It consists of two paragraphs.
- ...
-
-Template variables will be set automatically from the metadata. Thus, for
-example, in writing HTML, the variable `abstract` will be set to the HTML
-equivalent of the Markdown in the `abstract` field:
-
- <p>This is the abstract.</p>
- <p>It consists of two paragraphs.</p>
-
-Note: The `author` variable in the default templates expects a simple list or
-string. To use the structured authors in the example, you would need a
-custom template. For example:
-
- $for(author)$
- $if(author.name)$
- $author.name$$if(author.affiliation)$ ($author.affiliation$)$endif$
- $else$
- $author$
- $endif$
- $endfor$
-
-
-Backslash escapes
------------------
-
-#### Extension: `all_symbols_escapable` ####
-
-Except inside a code block or inline code, any punctuation or space
-character preceded by a backslash will be treated literally, even if it
-would normally indicate formatting. Thus, for example, if one writes
-
- *\*hello\**
-
-one will get
-
- <em>*hello*</em>
-
-instead of
-
- <strong>hello</strong>
-
-This rule is easier to remember than standard Markdown's rule,
-which allows only the following characters to be backslash-escaped:
-
- \`*_{}[]()>#+-.!
-
-(However, if the `markdown_strict` format is used, the standard Markdown rule
-will be used.)
-
-A backslash-escaped space is parsed as a nonbreaking space. It will
-appear in TeX output as `~` and in HTML and XML as `\&#160;` or
-`\&nbsp;`.
-
-A backslash-escaped newline (i.e. a backslash occurring at the end of
-a line) is parsed as a hard line break. It will appear in TeX output as
-`\\` and in HTML as `<br />`. This is a nice alternative to
-Markdown's "invisible" way of indicating hard line breaks using
-two trailing spaces on a line.
-
-Backslash escapes do not work in verbatim contexts.
-
-Smart punctuation
------------------
-
-#### Extension ####
-
-If the `--smart` option is specified, pandoc will produce typographically
-correct output, converting straight quotes to curly quotes, `---` to
-em-dashes, `--` to en-dashes, and `...` to ellipses. Nonbreaking spaces
-are inserted after certain abbreviations, such as "Mr."
-
-Note: if your LaTeX template or any included header file call for the
-[`csquotes`] package, pandoc will detect this automatically and use
-`\enquote{...}` for quoted text.
-
-Inline formatting
------------------
-
-### Emphasis ###
-
-To *emphasize* some text, surround it with `*`s or `_`, like this:
-
- This text is _emphasized with underscores_, and this
- is *emphasized with asterisks*.
-
-Double `*` or `_` produces **strong emphasis**:
-
- This is **strong emphasis** and __with underscores__.
-
-A `*` or `_` character surrounded by spaces, or backslash-escaped,
-will not trigger emphasis:
-
- This is * not emphasized *, and \*neither is this\*.
-
-#### Extension: `intraword_underscores` ####
-
-Because `_` is sometimes used inside words and identifiers,
-pandoc does not interpret a `_` surrounded by alphanumeric
-characters as an emphasis marker. If you want to emphasize
-just part of a word, use `*`:
-
- feas*ible*, not feas*able*.
-
-
-### Strikeout ###
-
-#### Extension: `strikeout` ####
-
-To strikeout a section of text with a horizontal line, begin and end it
-with `~~`. Thus, for example,
-
- This ~~is deleted text.~~
-
-
-### Superscripts and subscripts ###
-
-#### Extension: `superscript`, `subscript` ####
-
-Superscripts may be written by surrounding the superscripted text by `^`
-characters; subscripts may be written by surrounding the subscripted
-text by `~` characters. Thus, for example,
-
- H~2~O is a liquid. 2^10^ is 1024.
-
-If the superscripted or subscripted text contains spaces, these spaces
-must be escaped with backslashes. (This is to prevent accidental
-superscripting and subscripting through the ordinary use of `~` and `^`.)
-Thus, if you want the letter P with 'a cat' in subscripts, use
-`P~a\ cat~`, not `P~a cat~`.
-
-
-### Verbatim ###
-
-To make a short span of text verbatim, put it inside backticks:
-
- What is the difference between `>>=` and `>>`?
-
-If the verbatim text includes a backtick, use double backticks:
-
- Here is a literal backtick `` ` ``.
-
-(The spaces after the opening backticks and before the closing
-backticks will be ignored.)
-
-The general rule is that a verbatim span starts with a string
-of consecutive backticks (optionally followed by a space)
-and ends with a string of the same number of backticks (optionally
-preceded by a space).
-
-Note that backslash-escapes (and other Markdown constructs) do not
-work in verbatim contexts:
-
- This is a backslash followed by an asterisk: `\*`.
-
-#### Extension: `inline_code_attributes` ####
-
-Attributes can be attached to verbatim text, just as with
-[fenced code blocks]:
-
- `<$>`{.haskell}
-
-### Small caps ###
-
-To write small caps, you can use an HTML span tag:
-
- <span style="font-variant:small-caps;">Small caps</span>
-
-(The semicolon is optional and there may be space after the
-colon.) This will work in all output formats that support small caps.
-
-Math
-----
-
-#### Extension: `tex_math_dollars` ####
-
-Anything between two `$` characters will be treated as TeX math. The
-opening `$` must have a non-space character immediately to its right,
-while the closing `$` must have a non-space character immediately to its
-left, and must not be followed immediately by a digit. Thus,
-`$20,000 and $30,000` won't parse as math. If for some reason
-you need to enclose text in literal `$` characters, backslash-escape
-them and they won't be treated as math delimiters.
-
-TeX math will be printed in all output formats. How it is rendered
-depends on the output format:
-
-Markdown, LaTeX, Emacs Org mode, ConTeXt, ZimWiki
- ~ It will appear verbatim between `$` characters.
-
-reStructuredText
- ~ It will be rendered using an [interpreted text role `:math:`].
-
-AsciiDoc
- ~ It will be rendered as `latexmath:[...]`.
-
-Texinfo
- ~ It will be rendered inside a `@math` command.
-
-groff man
- ~ It will be rendered verbatim without `$`'s.
-
-MediaWiki, DokuWiki
- ~ It will be rendered inside `<math>` tags.
-
-Textile
- ~ It will be rendered inside `<span class="math">` tags.
-
-RTF, OpenDocument, ODT
- ~ It will be rendered, if possible, using unicode characters,
- and will otherwise appear verbatim.
-
-DocBook
- ~ If the `--mathml` flag is used, it will be rendered using MathML
- in an `inlineequation` or `informalequation` tag. Otherwise it
- will be rendered, if possible, using unicode characters.
-
-Docx
- ~ It will be rendered using OMML math markup.
-
-FictionBook2
- ~ If the `--webtex` option is used, formulas are rendered as images
- using Google Charts or other compatible web service, downloaded
- and embedded in the e-book. Otherwise, they will appear verbatim.
-
-HTML, Slidy, DZSlides, S5, EPUB
- ~ The way math is rendered in HTML will depend on the
- command-line options selected:
-
- 1. The default is to render TeX math as far as possible using unicode
- characters, as with RTF, DocBook, and OpenDocument output. Formulas
- are put inside a `span` with `class="math"`, so that they may be
- styled differently from the surrounding text if needed.
-
- 2. If the `--latexmathml` option is used, TeX math will be displayed
- between `$` or `$$` characters and put in `<span>` tags with class `LaTeX`.
- The [LaTeXMathML] script will be used to render it as formulas.
- (This trick does not work in all browsers, but it works in Firefox.
- In browsers that do not support LaTeXMathML, TeX math will appear
- verbatim between `$` characters.)
-
- 3. If the `--jsmath` option is used, TeX math will be put inside
- `<span>` tags (for inline math) or `<div>` tags (for display math)
- with class `math`. The [jsMath] script will be used to render
- it.
-
- 4. If the `--mimetex` option is used, the [mimeTeX] CGI script will
- be called to generate images for each TeX formula. This should
- work in all browsers. The `--mimetex` option takes an optional URL
- as argument. If no URL is specified, it will be assumed that the
- mimeTeX CGI script is at `/cgi-bin/mimetex.cgi`.
-
- 5. If the `--gladtex` option is used, TeX formulas will be enclosed
- in `<eq>` tags in the HTML output. The resulting `htex` file may then
- be processed by [gladTeX], which will produce image files for each
- formula and an HTML file with links to these images. So, the
- procedure is:
-
- pandoc -s --gladtex myfile.txt -o myfile.htex
- gladtex -d myfile-images myfile.htex
- # produces myfile.html and images in myfile-images
-
- 6. If the `--webtex` option is used, TeX formulas will be converted
- to `<img>` tags that link to an external script that converts
- formulas to images. The formula will be URL-encoded and concatenated
- with the URL provided. If no URL is specified, the Google Chart
- API will be used (`http://chart.apis.google.com/chart?cht=tx&chl=`).
-
- 7. If the `--mathjax` option is used, TeX math will be displayed
- between `\(...\)` (for inline math) or `\[...\]` (for display
- math) and put in `<span>` tags with class `math`.
- The [MathJax] script will be used to render it as formulas.
-
-[interpreted text role `:math:`]: http://docutils.sourceforge.net/docs/ref/rst/roles.html#math
-
-Raw HTML
---------
-
-#### Extension: `raw_html` ####
-
-Markdown allows you to insert raw HTML (or DocBook) anywhere in a document
-(except verbatim contexts, where `<`, `>`, and `&` are interpreted
-literally). (Technically this is not an extension, since standard
-Markdown allows it, but it has been made an extension so that it can
-be disabled if desired.)
-
-The raw HTML is passed through unchanged in HTML, S5, Slidy, Slideous,
-DZSlides, EPUB, Markdown, Emacs Org mode, and Textile output, and suppressed
-in other formats.
-
-#### Extension: `markdown_in_html_blocks` ####
-
-Standard Markdown allows you to include HTML "blocks": blocks
-of HTML between balanced tags that are separated from the surrounding text
-with blank lines, and start and end at the left margin. Within
-these blocks, everything is interpreted as HTML, not Markdown;
-so (for example), `*` does not signify emphasis.
-
-Pandoc behaves this way when the `markdown_strict` format is used; but
-by default, pandoc interprets material between HTML block tags as Markdown.
-Thus, for example, pandoc will turn
-
- <table>
- <tr>
- <td>*one*</td>
- <td>[a link](http://google.com)</td>
- </tr>
- </table>
-
-into
-
- <table>
- <tr>
- <td><em>one</em></td>
- <td><a href="http://google.com">a link</a></td>
- </tr>
- </table>
-
-whereas `Markdown.pl` will preserve it as is.
-
-There is one exception to this rule: text between `<script>` and
-`<style>` tags is not interpreted as Markdown.
-
-This departure from standard Markdown should make it easier to mix
-Markdown with HTML block elements. For example, one can surround
-a block of Markdown text with `<div>` tags without preventing it
-from being interpreted as Markdown.
-
-#### Extension: `native_divs` ####
-
-Use native pandoc `Div` blocks for content inside `<div>` tags.
-For the most part this should give the same output as
-`markdown_in_html_blocks`, but it makes it easier to write pandoc
-filters to manipulate groups of blocks.
-
-#### Extension: `native_spans` ####
-
-Use native pandoc `Span` blocks for content inside `<span>` tags.
-For the most part this should give the same output as `raw_html`,
-but it makes it easier to write pandoc filters to manipulate groups
-of inlines.
-
-Raw TeX
--------
-
-#### Extension: `raw_tex` ####
-
-In addition to raw HTML, pandoc allows raw LaTeX, TeX, and ConTeXt to be
-included in a document. Inline TeX commands will be preserved and passed
-unchanged to the LaTeX and ConTeXt writers. Thus, for example, you can use
-LaTeX to include BibTeX citations:
-
- This result was proved in \cite{jones.1967}.
-
-Note that in LaTeX environments, like
-
- \begin{tabular}{|l|l|}\hline
- Age & Frequency \\ \hline
- 18--25 & 15 \\
- 26--35 & 33 \\
- 36--45 & 22 \\ \hline
- \end{tabular}
-
-the material between the begin and end tags will be interpreted as raw
-LaTeX, not as Markdown.
-
-Inline LaTeX is ignored in output formats other than Markdown, LaTeX,
-Emacs Org mode, and ConTeXt.
-
-LaTeX macros
-------------
-
-#### Extension: `latex_macros` ####
-
-For output formats other than LaTeX, pandoc will parse LaTeX `\newcommand` and
-`\renewcommand` definitions and apply the resulting macros to all LaTeX
-math. So, for example, the following will work in all output formats,
-not just LaTeX:
-
- \newcommand{\tuple}[1]{\langle #1 \rangle}
-
- $\tuple{a, b, c}$
-
-In LaTeX output, the `\newcommand` definition will simply be passed
-unchanged to the output.
-
-
-Links
------
-
-Markdown allows links to be specified in several ways.
-
-### Automatic links ###
-
-If you enclose a URL or email address in pointy brackets, it
-will become a link:
-
- <http://google.com>
- <sam@green.eggs.ham>
-
-### Inline links ###
-
-An inline link consists of the link text in square brackets,
-followed by the URL in parentheses. (Optionally, the URL can
-be followed by a link title, in quotes.)
-
- This is an [inline link](/url), and here's [one with
- a title](http://fsf.org "click here for a good time!").
-
-There can be no space between the bracketed part and the parenthesized part.
-The link text can contain formatting (such as emphasis), but the title cannot.
-
-Email addresses in inline links are not autodetected, so they have to be
-prefixed with `mailto`:
-
- [Write me!](mailto:sam@green.eggs.ham)
-
-### Reference links ###
-
-An *explicit* reference link has two parts, the link itself and the link
-definition, which may occur elsewhere in the document (either
-before or after the link).
-
-The link consists of link text in square brackets, followed by a label in
-square brackets. (There can be space between the two.) The link definition
-consists of the bracketed label, followed by a colon and a space, followed by
-the URL, and optionally (after a space) a link title either in quotes or in
-parentheses. The label must not be parseable as a citation (assuming
-the `citations` extension is enabled): citations take precedence over
-link labels.
-
-Here are some examples:
-
- [my label 1]: /foo/bar.html "My title, optional"
- [my label 2]: /foo
- [my label 3]: http://fsf.org (The free software foundation)
- [my label 4]: /bar#special 'A title in single quotes'
-
-The URL may optionally be surrounded by angle brackets:
-
- [my label 5]: <http://foo.bar.baz>
-
-The title may go on the next line:
-
- [my label 3]: http://fsf.org
- "The free software foundation"
-
-Note that link labels are not case sensitive. So, this will work:
-
- Here is [my link][FOO]
-
- [Foo]: /bar/baz
-
-In an *implicit* reference link, the second pair of brackets is
-empty:
-
- See [my website][].
-
- [my website]: http://foo.bar.baz
-
-Note: In `Markdown.pl` and most other Markdown implementations,
-reference link definitions cannot occur in nested constructions
-such as list items or block quotes. Pandoc lifts this arbitrary
-seeming restriction. So the following is fine in pandoc, though
-not in most other implementations:
-
- > My block [quote].
- >
- > [quote]: /foo
-
-#### Extension: `shortcut_reference_links` ####
-
-In a *shortcut* reference link, the second pair of brackets may
-be omitted entirely:
-
- See [my website].
-
- [my website]: http://foo.bar.baz
-
-### Internal links ###
-
-To link to another section of the same document, use the automatically
-generated identifier (see [Header identifiers]). For example:
-
- See the [Introduction](#introduction).
-
-or
-
- See the [Introduction].
-
- [Introduction]: #introduction
-
-Internal links are currently supported for HTML formats (including
-HTML slide shows and EPUB), LaTeX, and ConTeXt.
-
-Images
-------
-
-A link immediately preceded by a `!` will be treated as an image.
-The link text will be used as the image's alt text:
-
- ![la lune](lalune.jpg "Voyage to the moon")
-
- ![movie reel]
-
- [movie reel]: movie.gif
-
-#### Extension: `implicit_figures` ####
-
-An image occurring by itself in a paragraph will be rendered as
-a figure with a caption.[^5] (In LaTeX, a figure environment will be
-used; in HTML, the image will be placed in a `div` with class
-`figure`, together with a caption in a `p` with class `caption`.)
-The image's alt text will be used as the caption.
-
- ![This is the caption](/url/of/image.png)
-
-[^5]: This feature is not yet implemented for RTF, OpenDocument, or
- ODT. In those formats, you'll just get an image in a paragraph by
- itself, with no caption.
-
-If you just want a regular inline image, just make sure it is not
-the only thing in the paragraph. One way to do this is to insert a
-nonbreaking space after the image:
-
- ![This image won't be a figure](/url/of/image.png)\
-
-#### Extension: `link_attributes` ####
-
-Attributes can be set on links and images:
-
- An inline ![image](foo.jpg){#id .class width=30 height=20px}
- and a reference ![image][ref] with attributes.
-
- [ref]: foo.jpg "optional title" {#id .class key=val key2="val 2"}
-
-(This syntax is compatible with [PHP Markdown Extra] when only `#id`
-and `.class` are used.)
-
-For HTML and EPUB, all attributes except `width` and `height` (but
-including `srcset` and `sizes`) are passed through as is. The other
-writers ignore attributes that are not supported by their output
-format.
-
-The `width` and `height` attributes on images are treated specially. When
-used without a unit, the unit is assumed to be pixels. However, any of
-the following unit identifiers can be used: `px`, `cm`, `mm`, `in`, `inch`
-and `%`. There must not be any spaces between the number and the unit.
-For example:
-
-```
-![](file.jpg){ width=50% }
-```
-
-- Dimensions are converted to inches for output in page-based formats like
- LaTeX. Dimensions are converted to pixels for output in HTML-like
- formats. Use the `--dpi` option to specify the number of pixels per
- inch. The default is 96dpi.
-- The `%` unit is generally relative to some available space.
- For example the above example will render to
- `<img href="file.jpg" style="width: 50%;" />` (HTML),
- `\includegraphics[width=0.5\textwidth]{file.jpg}` (LaTeX), or
- `\externalfigure[file.jpg][width=0.5\textwidth]` (ConTeXt).
-- Some output formats have a notion of a class
- ([ConTeXt](http://wiki.contextgarden.net/Using_Graphics#Multiple_Image_Settings))
- or a unique identifier (LaTeX `\caption`), or both (HTML).
-- When no `width` or `height` attributes are specified, the fallback
- is to look at the image resolution and the dpi metadata embedded in
- the image file.
-
-
-Footnotes
----------
-
-#### Extension: `footnotes` ####
-
-Pandoc's Markdown allows footnotes, using the following syntax:
-
- Here is a footnote reference,[^1] and another.[^longnote]
-
- [^1]: Here is the footnote.
-
- [^longnote]: Here's one with multiple blocks.
-
- Subsequent paragraphs are indented to show that they
- belong to the previous footnote.
-
- { some.code }
-
- The whole paragraph can be indented, or just the first
- line. In this way, multi-paragraph footnotes work like
- multi-paragraph list items.
-
- This paragraph won't be part of the note, because it
- isn't indented.
-
-The identifiers in footnote references may not contain spaces, tabs,
-or newlines. These identifiers are used only to correlate the
-footnote reference with the note itself; in the output, footnotes
-will be numbered sequentially.
-
-The footnotes themselves need not be placed at the end of the
-document. They may appear anywhere except inside other block elements
-(lists, block quotes, tables, etc.).
-
-#### Extension: `inline_notes` ####
-
-Inline footnotes are also allowed (though, unlike regular notes,
-they cannot contain multiple paragraphs). The syntax is as follows:
-
- Here is an inline note.^[Inlines notes are easier to write, since
- you don't have to pick an identifier and move down to type the
- note.]
-
-Inline and regular footnotes may be mixed freely.
-
-
-Citations
----------
-
-#### Extension: `citations` ####
-
-Using an external filter, `pandoc-citeproc`, pandoc can automatically generate
-citations and a bibliography in a number of styles. Basic usage is
-
- pandoc --filter pandoc-citeproc myinput.txt
-
-In order to use this feature, you will need to specify a bibliography file
-using the `bibliography` metadata field in a YAML metadata section, or
-`--bibliography` command line argument. You can supply multiple `--bibliography`
-arguments or set `bibliography` metadata field to YAML array, if you want to
-use multiple bibliography files. The bibliography may have any of these
-formats:
-
- Format File extension
- ------------ --------------
- BibLaTeX .bib
- BibTeX .bibtex
- Copac .copac
- CSL JSON .json
- CSL YAML .yaml
- EndNote .enl
- EndNote XML .xml
- ISI .wos
- MEDLINE .medline
- MODS .mods
- RIS .ris
-
-Note that `.bib` can be used with both BibTeX and BibLaTeX files;
-use `.bibtex` to force BibTeX.
-
-Note that `pandoc-citeproc --bib2json` and `pandoc-citeproc --bib2yaml`
-can produce `.json` and `.yaml` files from any of the supported formats.
-
-In-field markup: In BibTeX and BibLaTeX databases, pandoc-citeproc parses
-a subset of LaTeX markup; in CSL YAML databases, pandoc Markdown; and in CSL JSON databases, an [HTML-like markup][CSL markup specs]:
-
-`<i>...</i>`
-: italics
-
-`<b>...</b>`
-: bold
-
-`<span style="font-variant:small-caps;">...</span>` or `<sc>...</sc>`
-: small capitals
-
-`<sub>...</sub>`
-: subscript
-
-`<sup>...</sup>`
-: superscript
-
-`<span class="nocase">...</span>`
-: prevent a phrase from being capitalized as title case
-
-`pandoc-citeproc -j` and `-y` interconvert the CSL JSON
-and CSL YAML formats as far as possible.
-
-As an alternative to specifying a bibliography file using `--bibliography`
-or the YAML metadata field `bibliography`, you can include
-the citation data directly in the `references` field of the
-document's YAML metadata. The field should contain an array of
-YAML-encoded references, for example:
-
- ---
- references:
- - type: article-journal
- id: WatsonCrick1953
- author:
- - family: Watson
- given: J. D.
- - family: Crick
- given: F. H. C.
- issued:
- date-parts:
- - - 1953
- - 4
- - 25
- title: 'Molecular structure of nucleic acids: a structure for deoxyribose
- nucleic acid'
- title-short: Molecular structure of nucleic acids
- container-title: Nature
- volume: 171
- issue: 4356
- page: 737-738
- DOI: 10.1038/171737a0
- URL: http://www.nature.com/nature/journal/v171/n4356/abs/171737a0.html
- language: en-GB
- ...
-
-(`pandoc-citeproc --bib2yaml` can produce these from a bibliography file in one
-of the supported formats.)
-
-Citations and references can be formatted using any style supported by the
-[Citation Style Language], listed in the [Zotero Style Repository].
-These files are specified using the `--csl` option or the `csl` metadata field.
-By default, `pandoc-citeproc` will use the [Chicago Manual of Style] author-date
-format. The CSL project provides further information on [finding and editing styles].
-
-To make your citations hyperlinks to the corresponding bibliography
-entries, add `link-citations: true` to your YAML metadata.
-
-Citations go inside square brackets and are separated by semicolons.
-Each citation must have a key, composed of '@' + the citation
-identifier from the database, and may optionally have a prefix,
-a locator, and a suffix. The citation key must begin with a letter, digit,
-or `_`, and may contain alphanumerics, `_`, and internal punctuation
-characters (`:.#$%&-+?<>~/`). Here are some examples:
-
- Blah blah [see @doe99, pp. 33-35; also @smith04, chap. 1].
-
- Blah blah [@doe99, pp. 33-35, 38-39 and *passim*].
-
- Blah blah [@smith04; @doe99].
-
-`pandoc-citeproc` detects locator terms in the [CSL locale files].
-Either abbreviated or unabbreviated forms are accepted. In the `en-US`
-locale, locator terms can be written in either singular or plural forms,
-as `book`, `bk.`/`bks.`; `chapter`, `chap.`/`chaps.`; `column`,
-`col.`/`cols.`; `figure`, `fig.`/`figs.`; `folio`, `fol.`/`fols.`;
-`number`, `no.`/`nos.`; `line`, `l.`/`ll.`; `note`, `n.`/`nn.`; `opus`,
-`op.`/`opp.`; `page`, `p.`/`pp.`; `paragraph`, `para.`/`paras.`; `part`,
-`pt.`/`pts.`; `section`, `sec.`/`secs.`; `sub verbo`, `s.v.`/`s.vv.`;
-`verse`, `v.`/`vv.`; `volume`, `vol.`/`vols.`; `¶`/`¶¶`; `§`/`§§`. If no
-locator term is used, "page" is assumed.
-
-A minus sign (`-`) before the `@` will suppress mention of
-the author in the citation. This can be useful when the
-author is already mentioned in the text:
-
- Smith says blah [-@smith04].
-
-You can also write an in-text citation, as follows:
-
- @smith04 says blah.
-
- @smith04 [p. 33] says blah.
-
-If the style calls for a list of works cited, it will be placed
-at the end of the document. Normally, you will want to end your
-document with an appropriate header:
-
- last paragraph...
-
- # References
-
-The bibliography will be inserted after this header. Note that
-the `unnumbered` class will be added to this header, so that the
-section will not be numbered.
-
-If you want to include items in the bibliography without actually
-citing them in the body text, you can define a dummy `nocite` metadata
-field and put the citations there:
-
- ---
- nocite: |
- @item1, @item2
- ...
-
- @item3
-
-In this example, the document will contain a citation for `item3`
-only, but the bibliography will contain entries for `item1`, `item2`, and
-`item3`.
-
-For LaTeX or PDF output, you can also use [`natbib`] or [`biblatex`]
-to render bibliography. In order to do so, specify bibliography files as
-outlined above, and add `--natbib` or `--biblatex` argument to `pandoc`
-invocation. Bear in mind that bibliography files have to be in respective
-format (either BibTeX or BibLaTeX).
-
-For more information, see the [pandoc-citeproc man page].
-
-[CSL markup specs]: http://docs.citationstyles.org/en/1.0/release-notes.html#rich-text-markup-within-fields
-[Chicago Manual of Style]: http://chicagomanualofstyle.org
-[Citation Style Language]: http://citationstyles.org
-[Zotero Style Repository]: https://www.zotero.org/styles
-[finding and editing styles]: http://citationstyles.org/styles/
-[CSL locale files]: https://github.com/citation-style-language/locales
-[pandoc-citeproc man page]: https://github.com/jgm/pandoc-citeproc/blob/master/man/pandoc-citeproc.1.md
-
-Non-pandoc extensions
----------------------
-
-The following Markdown syntax extensions are not enabled by default
-in pandoc, but may be enabled by adding `+EXTENSION` to the format
-name, where `EXTENSION` is the name of the extension. Thus, for
-example, `markdown+hard_line_breaks` is Markdown with hard line breaks.
-
-#### Extension: `lists_without_preceding_blankline` ####
-
-Allow a list to occur right after a paragraph, with no intervening
-blank space.
-
-#### Extension: `hard_line_breaks` ####
-
-Causes all newlines within a paragraph to be interpreted as hard line
-breaks instead of spaces.
-
-#### Extension: `ignore_line_breaks` ####
-
-Causes newlines within a paragraph to be ignored, rather than being
-treated as spaces or as hard line breaks. This option is intended for
-use with East Asian languages where spaces are not used between words,
-but text is divided into lines for readability.
-
-#### Extension: `east_asian_line_breaks` ####
-
-Causes newlines within a paragraph to be ignored, rather than
-being treated as spaces or as hard line breaks, when they occur
-between two East Asian wide characters. This is a better choice
-than `ignore_line_breaks` for texts that include a mix of East
-Asian wide characters and other characters.
-
-##### Extension: `emoji` ####
-
-Parses textual emojis like `:smile:` as Unicode emoticons.
-
-#### Extension: `tex_math_single_backslash` ####
-
-Causes anything between `\(` and `\)` to be interpreted as inline
-TeX math, and anything between `\[` and `\]` to be interpreted
-as display TeX math. Note: a drawback of this extension is that
-it precludes escaping `(` and `[`.
-
-#### Extension: `tex_math_double_backslash` ####
-
-Causes anything between `\\(` and `\\)` to be interpreted as inline
-TeX math, and anything between `\\[` and `\\]` to be interpreted
-as display TeX math.
-
-#### Extension: `markdown_attribute` ####
-
-By default, pandoc interprets material inside block-level tags as Markdown.
-This extension changes the behavior so that Markdown is only parsed
-inside block-level tags if the tags have the attribute `markdown=1`.
-
-#### Extension: `mmd_title_block` ####
-
-Enables a [MultiMarkdown] style title block at the top of
-the document, for example:
-
- Title: My title
- Author: John Doe
- Date: September 1, 2008
- Comment: This is a sample mmd title block, with
- a field spanning multiple lines.
-
-See the MultiMarkdown documentation for details. If `pandoc_title_block` or
-`yaml_metadata_block` is enabled, it will take precedence over
-`mmd_title_block`.
-
-#### Extension: `abbreviations` ####
-
-Parses PHP Markdown Extra abbreviation keys, like
-
- *[HTML]: Hypertext Markup Language
-
-Note that the pandoc document model does not support
-abbreviations, so if this extension is enabled, abbreviation keys are
-simply skipped (as opposed to being parsed as paragraphs).
-
-#### Extension: `autolink_bare_uris` ####
-
-Makes all absolute URIs into links, even when not surrounded by
-pointy braces `<...>`.
-
-#### Extension: `ascii_identifiers` ####
-
-Causes the identifiers produced by `auto_identifiers` to be pure ASCII.
-Accents are stripped off of accented latin letters, and non-latin
-letters are omitted.
-
-#### Extension: `mmd_link_attributes` ####
-
-Parses multimarkdown style key-value attributes on link
-and image references. This extension should not be confused with the
-[`link_attributes`](#extension-link_attributes) extension.
-
- This is a reference ![image][ref] with multimarkdown attributes.
-
- [ref]: http://path.to/image "Image title" width=20px height=30px
- id=myId class="myClass1 myClass2"
-
-#### Extension: `mmd_header_identifiers` ####
-
-Parses multimarkdown style header identifiers (in square brackets,
-after the header but before any trailing `#`s in an ATX header).
-
-#### Extension: `compact_definition_lists` ####
-
-Activates the definition list syntax of pandoc 1.12.x and earlier.
-This syntax differs from the one described above under [Definition lists]
-in several respects:
-
- - No blank line is required between consecutive items of the
- definition list.
- - To get a "tight" or "compact" list, omit space between consecutive
- items; the space between a term and its definition does not affect
- anything.
- - Lazy wrapping of paragraphs is not allowed: the entire definition must
- be indented four spaces.[^6]
-
-[^6]: To see why laziness is incompatible with relaxing the requirement
- of a blank line between items, consider the following example:
-
- bar
- : definition
- foo
- : definition
-
- Is this a single list item with two definitions of "bar," the first of
- which is lazily wrapped, or two list items? To remove the ambiguity
- we must either disallow lazy wrapping or require a blank line between
- list items.
-
-Markdown variants
------------------
-
-In addition to pandoc's extended Markdown, the following Markdown
-variants are supported:
-
-`markdown_phpextra` (PHP Markdown Extra)
-: `footnotes`, `pipe_tables`, `raw_html`, `markdown_attribute`,
- `fenced_code_blocks`, `definition_lists`, `intraword_underscores`,
- `header_attributes`, `link_attributes`, `abbreviations`,
- `shortcut_reference_links`.
-
-`markdown_github` (GitHub-Flavored Markdown)
-: `pipe_tables`, `raw_html`, `fenced_code_blocks`, `auto_identifiers`,
- `ascii_identifiers`, `backtick_code_blocks`, `autolink_bare_uris`,
- `intraword_underscores`, `strikeout`, `hard_line_breaks`, `emoji`,
- `shortcut_reference_links`.
-
-`markdown_mmd` (MultiMarkdown)
-: `pipe_tables`, `raw_html`, `markdown_attribute`, `mmd_link_attributes`,
- `raw_tex`, `tex_math_double_backslash`, `intraword_underscores`,
- `mmd_title_block`, `footnotes`, `definition_lists`,
- `all_symbols_escapable`, `implicit_header_references`,
- `auto_identifiers`, `mmd_header_identifiers`,
- `shortcut_reference_links`.
-
-`markdown_strict` (Markdown.pl)
-: `raw_html`
-
-Extensions with formats other than Markdown
--------------------------------------------
-
-Some of the extensions discussed above can be used with formats
-other than Markdown:
-
-* `auto_identifiers` can be used with `latex`, `rst`, `mediawiki`,
- and `textile` input (and is used by default).
-
-* `tex_math_dollars`, `tex_math_single_backslash`, and
- `tex_math_double_backslash` can be used with `html` input.
- (This is handy for reading web pages formatted using MathJax,
- for example.)
-
-Producing slide shows with pandoc
-=================================
-
-You can use pandoc to produce an HTML + javascript slide presentation
-that can be viewed via a web browser. There are five ways to do this,
-using [S5], [DZSlides], [Slidy], [Slideous], or [reveal.js].
-You can also produce a PDF slide show using LaTeX [`beamer`].
-
-Here's the Markdown source for a simple slide show, `habits.txt`:
-
- % Habits
- % John Doe
- % March 22, 2005
-
- # In the morning
-
- ## Getting up
-
- - Turn off alarm
- - Get out of bed
-
- ## Breakfast
-
- - Eat eggs
- - Drink coffee
-
- # In the evening
-
- ## Dinner
-
- - Eat spaghetti
- - Drink wine
-
- ------------------
-
- ![picture of spaghetti](images/spaghetti.jpg)
-
- ## Going to sleep
-
- - Get in bed
- - Count sheep
-
-To produce an HTML/javascript slide show, simply type
-
- pandoc -t FORMAT -s habits.txt -o habits.html
-
-where `FORMAT` is either `s5`, `slidy`, `slideous`, `dzslides`, or `revealjs`.
-
-For Slidy, Slideous, reveal.js, and S5, the file produced by pandoc with the
-`-s/--standalone` option embeds a link to javascripts and CSS files, which are
-assumed to be available at the relative path `s5/default` (for S5), `slideous`
-(for Slideous), `reveal.js` (for reveal.js), or at the Slidy website at
-`w3.org` (for Slidy). (These paths can be changed by setting the `slidy-url`,
-`slideous-url`, `revealjs-url`, or `s5-url` variables; see [Variables for slides],
-above.) For DZSlides, the (relatively short) javascript and css are included in
-the file by default.
-
-With all HTML slide formats, the `--self-contained` option can be used to
-produce a single file that contains all of the data necessary to display the
-slide show, including linked scripts, stylesheets, images, and videos.
-
-To produce a PDF slide show using beamer, type
-
- pandoc -t beamer habits.txt -o habits.pdf
-
-Note that a reveal.js slide show can also be converted to a PDF
-by printing it to a file from the browser.
-
-Structuring the slide show
---------------------------
-
-By default, the *slide level* is the highest header level in
-the hierarchy that is followed immediately by content, and not another
-header, somewhere in the document. In the example above, level 1 headers
-are always followed by level 2 headers, which are followed by content,
-so 2 is the slide level. This default can be overridden using
-the `--slide-level` option.
-
-The document is carved up into slides according to the following
-rules:
-
- * A horizontal rule always starts a new slide.
-
- * A header at the slide level always starts a new slide.
-
- * Headers *below* the slide level in the hierarchy create
- headers *within* a slide.
-
- * Headers *above* the slide level in the hierarchy create
- "title slides," which just contain the section title
- and help to break the slide show into sections.
-
- * A title page is constructed automatically from the document's title
- block, if present. (In the case of beamer, this can be disabled
- by commenting out some lines in the default template.)
-
-These rules are designed to support many different styles of slide show. If
-you don't care about structuring your slides into sections and subsections,
-you can just use level 1 headers for all each slide. (In that case, level 1
-will be the slide level.) But you can also structure the slide show into
-sections, as in the example above.
-
-Note: in reveal.js slide shows, if slide level is 2, a two-dimensional
-layout will be produced, with level 1 headers building horizontally
-and level 2 headers building vertically. It is not recommended that
-you use deeper nesting of section levels with reveal.js.
-
-Incremental lists
------------------
-
-By default, these writers produce lists that display "all at once."
-If you want your lists to display incrementally (one item at a time),
-use the `-i` option. If you want a particular list to depart from the
-default (that is, to display incrementally without the `-i` option and
-all at once with the `-i` option), put it in a block quote:
-
- > - Eat spaghetti
- > - Drink wine
-
-In this way incremental and nonincremental lists can be mixed in
-a single document.
-
-Inserting pauses
-----------------
-
-You can add "pauses" within a slide by including a paragraph containing
-three dots, separated by spaces:
-
- # Slide with a pause
-
- content before the pause
-
- . . .
-
- content after the pause
-
-Styling the slides
-------------------
-
-You can change the style of HTML slides by putting customized CSS files
-in `$DATADIR/s5/default` (for S5), `$DATADIR/slidy` (for Slidy),
-or `$DATADIR/slideous` (for Slideous),
-where `$DATADIR` is the user data directory (see `--data-dir`, above).
-The originals may be found in pandoc's system data directory (generally
-`$CABALDIR/pandoc-VERSION/s5/default`). Pandoc will look there for any
-files it does not find in the user data directory.
-
-For dzslides, the CSS is included in the HTML file itself, and may
-be modified there.
-
-All [reveal.js configuration options] can be set through variables.
-For example, themes can be used by setting the `theme` variable:
-
- -V theme=moon
-
-Or you can specify a custom stylesheet using the `--css` option.
-
-To style beamer slides, you can specify a `theme`, `colortheme`,
-`fonttheme`, `innertheme`, and `outertheme`, using the `-V` option:
-
- pandoc -t beamer habits.txt -V theme:Warsaw -o habits.pdf
-
-Note that header attributes will turn into slide attributes
-(on a `<div>` or `<section>`) in HTML slide formats, allowing you
-to style individual slides. In beamer, the only header attribute
-that affects slides is the `allowframebreaks` class, which sets the
-`allowframebreaks` option, causing multiple slides to be created
-if the content overfills the frame. This is recommended especially for
-bibliographies:
-
- # References {.allowframebreaks}
-
-Speaker notes
--------------
-
-reveal.js has good support for speaker notes. You can add notes to your
-Markdown document thus:
-
- <div class="notes">
- This is my note.
-
- - It can contain Markdown
- - like this list
-
- </div>
-
-To show the notes window, press `s` while viewing the presentation.
-Notes are not yet supported for other slide formats, but the notes
-will not appear on the slides themselves.
-
-Frame attributes in beamer
---------------------------
-
-Sometimes it is necessary to add the LaTeX `[fragile]` option to
-a frame in beamer (for example, when using the `minted` environment).
-This can be forced by adding the `fragile` class to the header
-introducing the slide:
-
- # Fragile slide {.fragile}
-
-All of the other frame attributes described in Section 8.1 of
-the [Beamer User's Guide] may also be used: `allowdisplaybreaks`,
-`allowframebreaks`, `b`, `c`, `t`, `environment`, `label`, `plain`,
-`shrink`.
-
-Creating EPUBs with pandoc
-==========================
-
-EPUB Metadata
--------------
-
-EPUB metadata may be specified using the `--epub-metadata` option, but
-if the source document is Markdown, it is better to use a [YAML metadata
-block][Extension: `yaml_metadata_block`]. Here is an example:
-
- ---
- title:
- - type: main
- text: My Book
- - type: subtitle
- text: An investigation of metadata
- creator:
- - role: author
- text: John Smith
- - role: editor
- text: Sarah Jones
- identifier:
- - scheme: DOI
- text: doi:10.234234.234/33
- publisher: My Press
- rights: © 2007 John Smith, CC BY-NC
- ...
-
-The following fields are recognized:
-
-`identifier`
- ~ Either a string value or an object with fields `text` and
- `scheme`. Valid values for `scheme` are `ISBN-10`,
- `GTIN-13`, `UPC`, `ISMN-10`, `DOI`, `LCCN`, `GTIN-14`,
- `ISBN-13`, `Legal deposit number`, `URN`, `OCLC`,
- `ISMN-13`, `ISBN-A`, `JP`, `OLCC`.
-
-`title`
- ~ Either a string value, or an object with fields `file-as` and
- `type`, or a list of such objects. Valid values for `type` are
- `main`, `subtitle`, `short`, `collection`, `edition`, `extended`.
-
-`creator`
- ~ Either a string value, or an object with fields `role`, `file-as`,
- and `text`, or a list of such objects. Valid values for `role` are
- [MARC relators], but
- pandoc will attempt to translate the human-readable versions
- (like "author" and "editor") to the appropriate marc relators.
-
-`contributor`
- ~ Same format as `creator`.
-
-`date`
- ~ A string value in `YYYY-MM-DD` format. (Only the year is necessary.)
- Pandoc will attempt to convert other common date formats.
-
-`lang` (or legacy: `language`)
- ~ A string value in [BCP 47] format. Pandoc will default to the local
- language if nothing is specified.
-
-`subject`
- ~ A string value or a list of such values.
-
-`description`
- ~ A string value.
-
-`type`
- ~ A string value.
-
-`format`
- ~ A string value.
-
-`relation`
- ~ A string value.
-
-`coverage`
- ~ A string value.
-
-`rights`
- ~ A string value.
-
-`cover-image`
- ~ A string value (path to cover image).
-
-`stylesheet`
- ~ A string value (path to CSS stylesheet).
-
-`page-progression-direction`
- ~ Either `ltr` or `rtl`. Specifies the `page-progression-direction`
- attribute for the [`spine` element].
-
-[MARC relators]: http://loc.gov/marc/relators/relaterm.html
-[`spine` element]: http://idpf.org/epub/301/spec/epub-publications.html#sec-spine-elem
-
-Linked media
-------------
-
-By default, pandoc will download linked media (including audio and
-video) and include it in the EPUB container, yielding a completely
-self-contained EPUB. If you want to link to external media resources
-instead, use raw HTML in your source and add `data-external="1"` to the tag
-with the `src` attribute. For example:
-
- <audio controls="1">
- <source src="http://example.com/music/toccata.mp3"
- data-external="1" type="audio/mpeg">
- </source>
- </audio>
-
-Literate Haskell support
-========================
-
-If you append `+lhs` (or `+literate_haskell`) to an appropriate input or output
-format (`markdown`, `markdown_strict`, `rst`, or `latex` for input or output;
-`beamer`, `html` or `html5` for output only), pandoc will treat the document as
-literate Haskell source. This means that
-
- - In Markdown input, "bird track" sections will be parsed as Haskell
- code rather than block quotations. Text between `\begin{code}`
- and `\end{code}` will also be treated as Haskell code. For
- ATX-style headers the character '=' will be used instead of '#'.
-
- - In Markdown output, code blocks with classes `haskell` and `literate`
- will be rendered using bird tracks, and block quotations will be
- indented one space, so they will not be treated as Haskell code.
- In addition, headers will be rendered setext-style (with underlines)
- rather than ATX-style (with '#' characters). (This is because ghc
- treats '#' characters in column 1 as introducing line numbers.)
-
- - In restructured text input, "bird track" sections will be parsed
- as Haskell code.
-
- - In restructured text output, code blocks with class `haskell` will
- be rendered using bird tracks.
-
- - In LaTeX input, text in `code` environments will be parsed as
- Haskell code.
-
- - In LaTeX output, code blocks with class `haskell` will be rendered
- inside `code` environments.
-
- - In HTML output, code blocks with class `haskell` will be rendered
- with class `literatehaskell` and bird tracks.
-
-Examples:
-
- pandoc -f markdown+lhs -t html
-
-reads literate Haskell source formatted with Markdown conventions and writes
-ordinary HTML (without bird tracks).
-
- pandoc -f markdown+lhs -t html+lhs
-
-writes HTML with the Haskell code in bird tracks, so it can be copied
-and pasted as literate Haskell source.
-
-Syntax highlighting
-===================
-
-Pandoc will automatically highlight syntax in [fenced code blocks] that
-are marked with a language name. The Haskell library [highlighting-kate] is used for
-highlighting, which works in HTML, Docx, and LaTeX/PDF output.
-The color scheme can be selected using the `--highlight-style` option.
-The default color scheme is `pygments`, which imitates the default color
-scheme used by the Python library pygments, but pygments is not actually
-used to do the highlighting.
-
-To see a list of language names that pandoc will recognize, type
-`pandoc --version`.
-
-To disable highlighting, use the `--no-highlight` option.
-
-[highlighting-kate]: https://github.com/jgm/highlighting-kate
-
-Custom writers
-==============
-
-Pandoc can be extended with custom writers written in [lua]. (Pandoc
-includes a lua interpreter, so lua need not be installed separately.)
-
-To use a custom writer, simply specify the path to the lua script
-in place of the output format. For example:
-
- pandoc -t data/sample.lua
-
-Creating a custom writer requires writing a lua function for each
-possible element in a pandoc document. To get a documented example
-which you can modify according to your needs, do
-
- pandoc --print-default-data-file sample.lua
-
-[lua]: http://www.lua.org
-
-Authors
-=======
-
-© 2006-2015 John MacFarlane (jgm@berkeley.edu). Released under the
-[GPL], version 2 or greater. This software carries no warranty of
-any kind. (See COPYRIGHT for full copyright and warranty notices.)
-
-Contributors include
-Aaron Wolen,
-Albert Krewinkel,
-Alex Vong,
-Alexander Kondratskiy,
-Alexander Sulfrian,
-Alexander V Vershilov,
-Alfred Wechselberger,
-Andreas Lööw,
-Andrew Dunning,
-Antoine Latter,
-Arata Mizuki,
-Arlo O'Keeffe,
-Artyom Kazak,
-Ben Gamari,
-Beni Cherniavsky-Paskin,
-Benoit Schweblin,
-Bjorn Buckwalter,
-Bradley Kuhn,
-Brent Yorgey,
-Bryan O'Sullivan,
-B. Scott Michel,
-Caleb McDaniel,
-Calvin Beck,
-Carlos Sosa,
-Chris Black,
-Christian Conkle,
-Christoffer Ackelman,
-Christoffer Sawicki,
-Clare Macrae,
-Clint Adams,
-Conal Elliott,
-Craig S. Bosma,
-csforste,
-Daniel Bergey,
-Daniel T. Staal,
-David Lazar,
-David Röthlisberger,
-Denis Laxalde,
-Douglas Calvert,
-Douglas F. Calvert,
-Emanuel Evans,
-Emily Eisenberg,
-Eric Kow,
-Eric Seidel,
-Florian Eitel,
-François Gannaz,
-Freiric Barral,
-Freirich Raabe,
-Fyodor Sheremetyev,
-Gabor Pali,
-Gavin Beatty,
-Gottfried Haider,
-Greg Maslov,
-Grégory Bataille,
-Greg Rundlett,
-gwern,
-Gwern Branwen,
-Hans-Peter Deifel,
-Henrik Tramberend,
-Henry de Valence,
-ickc,
-Ilya V. Portnov,
-infinity0x,
-Ivo Clarysse,
-Jaime Marquínez Ferrándiz,
-James Aspnes,
-Jamie F. Olson,
-Jan Larres,
-Jan Schulz,
-Jason Ronallo,
-Jeff Arnold,
-Jeff Runningen,
-Jens Petersen,
-Jérémy Bobbio,
-Jesse Rosenthal,
-J. Lewis Muir,
-Joe Hillenbrand,
-John MacFarlane,
-Jonas Smedegaard,
-Jonathan Daugherty,
-Josef Svenningsson,
-Jose Luis Duran,
-Julien Cretel,
-Juliusz Gonera,
-Justin Bogner,
-Kelsey Hightower,
-Kolen Cheung,
-Konstantin Zudov,
-Kristof Bastiaensen,
-Lars-Dominik Braun,
-Luke Plant,
-Mark Szepieniec,
-Mark Wright,
-Martin Linn,
-Masayoshi Takahashi,
-Matej Kollar,
-Mathias Schenner,
-Mathieu Duponchelle,
-Matthew Eddey,
-Matthew Pickering,
-Matthias C. M. Troffaes,
-Mauro Bieg,
-Max Bolingbroke,
-Max Rydahl Andersen,
-Merijn Verstraaten,
-Michael Beaumont,
-Michael Chladek,
-Michael Snoyman,
-Michael Thompson,
-MinRK,
-Nathan Gass,
-Neil Mayhew,
-Nick Bart,
-Nicolas Kaiser,
-Nikolay Yakimov,
-nkalvi,
-Ophir Lifshitz,
-Pablo Rodríguez,
-Paulo Tanimoto,
-Paul Rivier,
-Peter Wang,
-Philippe Ombredanne,
-Phillip Alday,
-Prayag Verma,
-Puneeth Chaganti,
-qerub,
-Ralf Stephan,
-Raniere Silva,
-Recai Oktaş,
-robabla,
-rodja.trappe,
-rski,
-RyanGlScott,
-Scott Morrison,
-Sergei Trofimovich,
-Sergey Astanin,
-Shahbaz Youssefi,
-Shaun Attfield,
-Sidarth Kapur,
-shreevatsa.public,
-Simon Hengel,
-Sumit Sahrawat,
-takahashim,
-thsutton,
-Tim Lin,
-Timothy Humphries,
-Tiziano Müller,
-Thomas Hodgson,
-Todd Sifleet,
-Tom Leese,
-Uli Köhler,
-Václav Zeman,
-Viktor Kronvall,
-Vincent,
-Wikiwide, and
-Xavier Olive.
-
-[GPL]: http://www.gnu.org/copyleft/gpl.html "GNU General Public License"