Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
pandoc(1)		      Pandoc User's Guide		     pandoc(1)

NAME
       pandoc -	general	markup converter

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.

       Pandoc can convert between numerous markup and word processing formats,
       including, but not limited to, various flavors of Markdown, HTML, LaTeX
       and Word	docx.  For the full lists of input and output formats, see the
       --from and --to options below.  Pandoc can also produce PDF output: see
       creating	a PDF, below.

       Pandoc's	enhanced version of Markdown includes syntax for tables, defi-
       nition lists, metadata blocks, footnotes,  citations,  math,  and  much
       more.  See below	under Pandoc's Markdown.

       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	(an abstract syntax tree or AST), 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.
       Users  can  also	 run  custom pandoc filters to modify the intermediate
       AST.

       Because pandoc's	intermediate representation of a document is less  ex-
       pressive	 than  many of the formats it converts between,	one should not
       expect perfect conversions between every	format and every other.	  Pan-
       doc 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.

   Using pandoc
       If no input-files are specified,	input is read from stdin.  Output goes
       to  stdout  by  default.	 For output to a file, use the -o/--output op-
       tion:

	      pandoc -o	output.html input.txt

       By default, pandoc produces a document fragment.	 To produce  a	stand-
       alone  document	(e.g. a	 valid HTML file including <head> and <body>),
       use the -s or --standalone flag:

	      pandoc -s	-o output.html input.txt

       For more	information on how standalone documents	are produced, see Tem-
       plates below.

       If multiple input files are given, pandoc  will	concatenate  them  all
       (with  blank  lines between them) before	parsing.  (Use --file-scope to
       parse files individually.)

   Specifying formats
       The format of the input and output can be  specified  explicitly	 using
       command-line  options.	The  input  format  can	be specified using the
       -f/--from option, the output format using the -t/--to option.  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 input and output formats are listed below under Options  (see
       -f for input formats and	-t for output formats).	 You can also use pan-
       doc  --list-input-formats  and  pandoc  --list-output-formats  to print
       lists of	supported formats.

       If the input or output format is	not specified explicitly, pandoc  will
       attempt	to  guess  it from the extensions of the 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 ex-
       tension is unknown, the output format will default to HTML.  If no  in-
       put 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.

   Character encoding
       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.

   Creating a PDF
       To produce a PDF, specify an output file	with a .pdf extension:

	      pandoc test.txt -o test.pdf

       By default, pandoc will use LaTeX to create  the	 PDF,  which  requires
       that  a	LaTeX  engine be installed (see	--pdf-engine below).  Alterna-
       tively, pandoc can use ConTeXt, roff ms,	or  HTML  as  an  intermediate
       format.	 To  do	this, specify an output	file with a .pdf extension, as
       before, but add the --pdf-engine	option or -t context, -t html,	or  -t
       ms to the command line.	The tool used to generate the PDF from the in-
       termediate format may be	specified using	--pdf-engine.

       You  can	control	the PDF	style using variables, depending on the	inter-
       mediate format used: see	variables for LaTeX,  variables	 for  ConTeXt,
       variables  for  wkhtmltopdf, variables for ms.  When HTML is used as an
       intermediate format, the	output can be styled using --css.

       To debug	the PDF	creation, it can be useful to look at the intermediate
       representation: instead of -o test.pdf, use for example -s -o  test.tex
       to  output  the	generated  LaTeX.   You	can then test it with pdflatex
       test.tex.

       When using LaTeX, the following packages	need to	be available (they are
       included	with all recent	versions of TeX	Live): amsfonts, amsmath,  lm,
       unicode-math,  iftex, listings (if the --listings option	is used), fan-
       cyvrb, longtable, booktabs, multirow (if	the document contains a	 table
       with  cells  that  cross	multiple rows),	graphicx (if the document con-
       tains images), bookmark,	xcolor,	 soul,	geometry  (with	 the  geometry
       variable	 set), setspace	(with linestretch), and	babel (with lang).  If
       CJKmainfont is set, xeCJK is needed if xelatex is used,	else  luatexja
       is  needed  if  lualatex	 is used.  framed is required if code is high-
       lighted in a scheme that	use a colored background.  The use of  xelatex
       or  lualatex as the PDF engine requires fontspec.  lualatex uses	selno-
       lig and lua-ul.	xelatex	uses bidi (with	the dir	variable set).	If the
       mathspec	variable is set, xelatex will use  mathspec  instead  of  uni-
       code-math.   The	 csquotes  package  will be used for typography	if the
       csquotes	variable or metadata field is set to a true value.   The  nat-
       bib,  biblatex,	bibtex,	 and biber packages can	optionally be used for
       citation	rendering.  If math with \cancel,  \bcancel,  or  \xcancel  is
       used,  the  cancel  package  is needed.	The following packages will be
       used to improve output quality if present, but pandoc does not  require
       them  to	 be present: upquote (for straight quotes in verbatim environ-
       ments), microtype (for better spacing adjustments), parskip (for	better
       inter-paragraph spaces),	xurl (for better line  breaks  in  URLs),  and
       footnotehyper or	footnote (to allow footnotes in	tables).

   Reading from	the Web
       Instead	of  an input file, an absolute URI may be given.  In this case
       pandoc will fetch the content using HTTP:

	      pandoc -f	html -t	markdown https://www.fsf.org

       It is possible to supply	a custom User-Agent  string  or	 other	header
       when requesting a document from a URL:

	      pandoc -f	html -t	markdown --request-header User-Agent:"Mozilla/5.0" \
		https://www.fsf.org

OPTIONS
   General options
       -f FORMAT, -r FORMAT, --from=FORMAT, --read=FORMAT
	      Specify input format.  FORMAT can	be:

	      	asciidoc (AsciiDoc markup)

	      	bibtex (BibTeX bibliography)

	      	biblatex (BibLaTeX bibliography)

	      	bits (BITS XML,	alias for jats)

	      	commonmark (CommonMark Markdown)

	      	commonmark_x (CommonMark Markdown with extensions)

	      	creole (Creole 1.0)

	      	csljson	(CSL JSON bibliography)

	      	csv (CSV table)

	      	tsv (TSV table)

	      	djot (Djot markup)

	      	docbook	(DocBook)

	      	docx (Word docx)

	      	dokuwiki (DokuWiki markup)

	      	endnotexml (EndNote XML	bibliography)

	      	epub (EPUB)

	      	fb2 (FictionBook2 e-book)

	      	gfm (GitHub-Flavored Markdown),	or the deprecated and less ac-
		curate	markdown_github;  use markdown_github only if you need
		extensions not supported in gfm.

	      	haddock	(Haddock markup)

	      	html (HTML)

	      	ipynb (Jupyter notebook)

	      	jats (JATS XML)

	      	jira (Jira/Confluence wiki markup)

	      	json (JSON version of native AST)

	      	latex (LaTeX)

	      	markdown (Pandoc's Markdown)

	      	markdown_mmd (MultiMarkdown)

	      	markdown_phpextra (PHP Markdown	Extra)

	      	markdown_strict	(original unextended Markdown)

	      	mediawiki (MediaWiki markup)

	      	man (roff man)

	      	mdoc (mdoc manual page markup)

	      	muse (Muse)

	      	native (native Haskell)

	      	odt (OpenDocument text document)

	      	opml (OPML)

	      	org (Emacs Org mode)

	      	pod (Perl's Plain Old Documentation)

	      	pptx (PowerPoint)

	      	ris (RIS bibliography)

	      	rtf (Rich Text Format)

	      	rst (reStructuredText)

	      	t2t (txt2tags)

	      	textile	(Textile)

	      	tikiwiki (TikiWiki markup)

	      	twiki (TWiki markup)

	      	typst (typst)

	      	vimwiki	(Vimwiki)

	      	xlsx (Excel spreadsheet)

	      	xml (XML version of native AST)

	      	the path of a custom Lua reader, see Custom readers and	 writ-
		ers below

	      Extensions  can be individually enabled or disabled by appending
	      +EXTENSION or -EXTENSION to the format name.  See	Extensions be-
	      low, for a list of extensions and	their names.   See  --list-in-
	      put-formats and --list-extensions, below.

       -t FORMAT, -w FORMAT, --to=FORMAT, --write=FORMAT
	      Specify output format.  FORMAT can be:

	      	ansi (text with	ANSI escape codes, for terminal	viewing)

	      	asciidoc (modern AsciiDoc as interpreted by AsciiDoctor)

	      	asciidoc_legacy	(AsciiDoc as interpreted by asciidoc-py).

	      	asciidoctor (deprecated	synonym	for asciidoc)

	      	bbcode BBCode

	      	bbcode_fluxbb BBCode (FluxBB)

	      	bbcode_phpbb BBCode (phpBB)

	      	bbcode_steam BBCode (Steam)

	      	bbcode_hubzilla	BBCode (Hubzilla)

	      	bbcode_xenforo BBCode (xenForo)

	      	beamer (LaTeX beamer slide show)

	      	bibtex (BibTeX bibliography)

	      	biblatex (BibLaTeX bibliography)

	      	chunkedhtml (zip archive of multiple linked HTML files)

	      	commonmark (CommonMark Markdown)

	      	commonmark_x (CommonMark Markdown with extensions)

	      	context	(ConTeXt)

	      	csljson	(CSL JSON bibliography)

	      	djot (Djot markup)

	      	docbook	or docbook4 (DocBook 4)

	      	docbook5 (DocBook 5)

	      	docx (Word docx)

	      	dokuwiki (DokuWiki markup)

	      	epub or	epub3 (EPUB v3 book)

	      	epub2 (EPUB v2)

	      	fb2 (FictionBook2 e-book)

	      	gfm (GitHub-Flavored Markdown),	or the deprecated and less ac-
		curate	markdown_github;  use markdown_github only if you need
		extensions not supported in gfm.

	      	haddock	(Haddock markup)

	      	html or	html5 (HTML, i.e. HTML5/XHTML polyglot markup)

	      	html4 (XHTML 1.0 Transitional)

	      	icml (InDesign ICML)

	      	ipynb (Jupyter notebook)

	      	jats_archiving (JATS XML, Archiving and	Interchange Tag	Set)

	      	jats_articleauthoring (JATS XML, Article Authoring Tag Set)

	      	jats_publishing	(JATS XML, Journal Publishing Tag Set)

	      	jats (alias for	jats_archiving)

	      	jira (Jira/Confluence wiki markup)

	      	json (JSON version of native AST)

	      	latex (LaTeX)

	      	man (roff man)

	      	markdown (Pandoc's Markdown)

	      	markdown_mmd (MultiMarkdown)

	      	markdown_phpextra (PHP Markdown	Extra)

	      	markdown_strict	(original unextended Markdown)

	      	markua (Markua)

	      	mediawiki (MediaWiki markup)

	      	ms (roff ms)

	      	muse (Muse)

	      	native (native Haskell)

	      	odt (OpenDocument text document)

	      	opml (OPML)

	      	opendocument (OpenDocument XML)

	      	org (Emacs Org mode)

	      	pdf (PDF)

	      	plain (plain text)

	      	pptx (PowerPoint slide show)

	      	rst (reStructuredText)

	      	rtf (Rich Text Format)

	      	texinfo	(GNU Texinfo)

	      	textile	(Textile)

	      	slideous (Slideous HTML	and JavaScript slide show)

	      	slidy (Slidy 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)

	      	tei (TEI Simple)

	      	typst (typst)

	      	vimdoc (Vimdoc)

	      	xml (XML version of native AST)

	      	xwiki (XWiki markup)

	      	zimwiki	(ZimWiki markup)

	      	the path of a custom Lua writer, see Custom readers and	 writ-
		ers below

	      Note  that  odt, docx, epub, and pdf output will not be directed
	      to stdout	unless forced with -o -.

	      Extensions can be	individually enabled or	disabled by  appending
	      +EXTENSION or -EXTENSION to the format name.  See	Extensions be-
	      low,  for	a list of extensions and their names.  See --list-out-
	      put-formats and --list-extensions, below.

       -o FILE,	--output=FILE
	      Write output to FILE instead of stdout.  If FILE	is  -,	output
	      will  go	to  stdout,  even  if a	non-textual format (docx, odt,
	      epub2, epub3) is specified.  If the output format	is chunkedhtml
	      and FILE has no extension, then instead of producing a .zip file
	      pandoc will create a directory FILE and unpack the  zip  archive
	      there  (unless  FILE already exists, in which case an error will
	      be raised).

       --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.  On	*nix and macOS systems this will be the	pandoc
	      subdirectory of the XDG data directory (by  default,  $HOME/.lo-
	      cal/share,  overridable by setting the XDG_DATA_HOME environment
	      variable).  If that directory does not exist  and	 $HOME/.pandoc
	      exists,  it will be used (for backwards compatibility).  On Win-
	      dows the default user data directory is  %APPDATA%\pandoc.   You
	      can find the default user	data directory on your system by look-
	      ing  at  the  output  of pandoc --version.  Data files placed in
	      this  directory  (for  example,  reference.odt,  reference.docx,
	      epub.css,	 templates)  will  override  pandoc's normal defaults.
	      (Note that the user data directory is not	created	by pandoc,  so
	      you  will	 need to create	it yourself if you want	to make	use of
	      it.)

       -d FILE,	--defaults=FILE
	      Specify a	set of default option settings.	 FILE  is  a  YAML  or
	      JSON  file  whose	 fields	correspond to command-line option set-
	      tings.  All options for document conversion, including input and
	      output files, can	be set using a defaults	file.  The  file  will
	      be  searched for first in	the working directory, and then	in the
	      defaults	subdirectory  of  the	user   data   directory	  (see
	      --data-dir).   The .yaml extension will be added if FILE lacs an
	      extension.  See the section Defaults files for more  information
	      on  the  file  format.   Settings	 from the defaults file	may be
	      overridden or extended by	 subsequent  options  on  the  command
	      line.

       --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.

       --quiet
	      Suppress warning messages.

       --fail-if-warnings[=true|false]
	      Exit with	error status if	there are any warnings.

       --log=FILE
	      Write log	messages in machine-readable JSON format to FILE.  All
	      messages above DEBUG level will be written, regardless  of  ver-
	      bosity settings (--verbose, --quiet).

       --list-input-formats
	      List supported input formats, one	per line.

       --list-output-formats
	      List supported output formats, one per line.

       --list-extensions[=FORMAT]
	      List  supported extensions for FORMAT, one per line, preceded by
	      a	+ or - indicating whether it is	enabled	by default in  FORMAT.
	      If  FORMAT  is not specified, defaults for pandoc's Markdown are
	      given.

       --list-highlight-languages
	      List supported languages for syntax highlighting,	one per	line.

       --list-highlight-styles
	      List supported styles for	syntax	highlighting,  one  per	 line.
	      See --syntax-highlighting.

       -v, --version
	      Print version.

       -h, --help
	      Show usage message.

   Reader options
       --shift-heading-level-by=NUMBER
	      Shift heading levels by a	positive or negative integer.  For ex-
	      ample, with --shift-heading-level-by=-1, level 2 headings	become
	      level  1 headings, and level 3 headings become level 2 headings.
	      Headings cannot have a level less	than  1,  so  a	 heading  that
	      would be shifted below level 1 becomes a regular paragraph.  Ex-
	      ception:	with a shift of	-N, a level-N heading at the beginning
	      of the document  replaces	 the  metadata	title.	 --shift-head-
	      ing-level-by=-1  is  a good choice when converting HTML or Mark-
	      down documents that use an initial level-1 heading for the docu-
	      ment title and level-2+ headings	for  sections.	 --shift-head-
	      ing-level-by=1 may be a good choice for converting Markdown doc-
	      uments  that  use	 level-1  headings for sections	to HTML, since
	      pandoc uses a level-1 heading to render the document title.

       --base-header-level=NUMBER
	      Deprecated.  Use --shift-heading-level-by=X instead, where  X  =
	      NUMBER - 1. Specify the base level for headings (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[=true|false]
	      Parse each file individually before combining for	multifile doc-
	      uments.	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.

	      If two or	more files are processed using --file-scope,  prefixes
	      based  on	the filenames will be added to identifiers in order to
	      disambiguate them, and internal links will be  adjusted  accord-
	      ingly.   For  example,  a	 header	 with  identifier  foo in sub-
	      dir/file1.txt  will  have	 its  identifier   changed   to	  sub-
	      dir__file1.txt__foo.

       -F PROGRAM, --filter=PROGRAM
	      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  ex-
	      ports  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.

	      In order of preference, pandoc will look for filters in

	      1. a specified full or relative  path  (executable  or  non-exe-
		 cutable),

	      2. $DATADIR/filters   (executable	  or   non-executable)	 where
		 $DATADIR is the user data directory (see --data-dir, above),

	      3. $PATH (executable only).

	      Filters, Lua-filters, and	citeproc processing are	applied	in the
	      order specified on the command line.

       -L SCRIPT, --lua-filter=SCRIPT
	      Transform	the document in	a similar fashion as JSON filters (see
	      --filter), but use pandoc's built-in Lua filtering system.   The
	      given  Lua  script  is  expected to return a list	of Lua filters
	      which will be applied in order.  Each Lua	 filter	 must  contain
	      element-transforming  functions  indexed	by the name of the AST
	      element on which the filter function should be applied.

	      The pandoc Lua module provides helper functions for element cre-
	      ation.  It is always loaded into the script's Lua	environment.

	      See the Lua filters documentation	for further details.

	      In order of preference, pandoc will look for Lua filters in

	      1. a specified full or relative path,

	      2. $DATADIR/filters where	$DATADIR is the	 user  data  directory
		 (see --data-dir, above).

	      Filters, Lua filters, and	citeproc processing are	applied	in the
	      order specified on the command line.

       -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
	      using  YAML  metadata  blocks.   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)	and  metadata  values will be escaped when in-
	      serted into the template.

       --metadata-file=FILE
	      Read metadata from the supplied YAML (or JSON) file.   This  op-
	      tion  can	be used	with every input format, but string scalars in
	      the metadata file	will always be parsed as  Markdown.   (If  the
	      input  format  is	 Markdown or a Markdown	variant, then the same
	      variant will be used to parse the	metadata  file;	 if  it	 is  a
	      non-Markdown  format,  pandoc's default Markdown extensions will
	      be used.)	 This option can be used repeatedly to include	multi-
	      ple  metadata files; values in files specified later on the com-
	      mand line	will be	preferred  over	 those	specified  in  earlier
	      files.  Metadata values specified	inside the document, or	by us-
	      ing  -M,	overwrite values specified with	this option.  The file
	      will be searched for first in the	working	directory, and then in
	      the metadata  subdirectory  of  the  user	 data  directory  (see
	      --data-dir).

       -p, --preserve-tabs[=true|false]
	      Preserve	tabs  instead  of  converting them to spaces.  (By de-
	      fault, pandoc converts tabs to spaces before parsing its input.)
	      Note that	this will only affect tabs in literal code  spans  and
	      code blocks.  Tabs in regular text are always 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) processes all the insertions and	deletions.  reject ig-
	      nores  them.   Both  accept and reject ignore comments.  all in-
	      cludes all insertions, deletions,	and comments, wrapped in spans
	      with  insertion,	deletion,   comment-start,   and   comment-end
	      classes,	respectively.	The  author  and time of change	is in-
	      cluded.  all is useful for  scripting:  only  accepting  changes
	      from  a  certain	reviewer, say, or before a certain date.  If a
	      paragraph	is inserted or deleted,	track-changes=all  produces  a
	      span  with  the class paragraph-insertion/paragraph-deletion be-
	      fore the affected	paragraph break.  This option only affects the
	      docx reader.

       --extract-media=DIR|FILE.zip
	      Extract images and other media contained in or linked  from  the
	      source  document	to the path DIR, creating it if	necessary, and
	      adjust the images	references in the document so  they  point  to
	      the  extracted  files.  Media are	downloaded, read from the file
	      system, or extracted from	a  binary  container  (e.g. docx),  as
	      needed.	The  original file paths are used if they are relative
	      paths not	containing ...	Otherwise  filenames  are  constructed
	      from the SHA1 hash of the	contents.

	      If  the  path given ends in .zip,	then instead of	creating a di-
	      rectory, pandoc will create a zip	archive	containing  the	 media
	      files.

       --abbreviations=FILE
	      Specifies	a custom abbreviations file, with abbreviations	one to
	      a	 line.	 If this option	is not specified, pandoc will read the
	      data file	abbreviations from the user  data  directory  or  fall
	      back on a	system default.	 To see	the system default, use	pandoc
	      --print-default-data-file=abbreviations.	 The  only  use	pandoc
	      makes of this list is in the Markdown reader.  Strings found  in
	      this  list  will be followed by a	nonbreaking space, and the pe-
	      riod will	not produce sentence-ending space in formats like  La-
	      TeX.  The	strings	may not	contain	spaces.

       --trace[=true|false]
	      Print diagnostic output tracing parser progress to stderr.  This
	      option  is  intended for use by developers in diagnosing perfor-
	      mance issues.

   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.   For native	output,	this option causes metadata to
	      be included; otherwise, metadata is suppressed.

       --template=FILE|URL
	      Use the specified	file as	a custom template  for	the  generated
	      document.	  Implies  --standalone.   See Templates, below, for a
	      description of template syntax.  If the template is  not	found,
	      pandoc  will  search for it in the templates subdirectory	of the
	      user data	directory (see --data-dir).  If	no extension is	speci-
	      fied and an extensionless	template is  not  found,  pandoc  will
	      look  for	 a  template  with  an	extension corresponding	to the
	      writer, so that --template=special looks	for  special.html  for
	      HTML output.  If this option is not used,	a default template ap-
	      propriate	for the	output format will be used (see	-D/--print-de-
	      fault-template).

       -V KEY[=VAL], --variable=KEY[=VAL]
	      Set  the template	variable KEY to	the string value VAL when ren-
	      dering the document in standalone	mode.  Either :	or  =  may  be
	      used  to separate	KEY from VAL.  If no VAL is specified, the key
	      will be given the	value true.  Structured	values	(lists,	 maps)
	      cannot  be  assigned using this option, but they can be assigned
	      in the variables section of a defaults file or using the --vari-
	      able-json	option.	 If the	variable already has a list value, the
	      value will be added to the list.	If it already has another kind
	      of value,	it will	be made	into a list  containing	 the  previous
	      and  the	new  value.  For example, -V keyword=Joe -V author=Sue
	      makes author contain a list of strings: Joe and Sue.

       --variable-json=KEY[=:JSON]
	      Set the template variable	KEY to the value specified by  a  JSON
	      string (this may be a boolean, a string, a list, or a mapping; a
	      number  will  be	treated	 as  a	string).  For example, --vari-
	      able-json	foo=false will give foo	the boolean false value, while
	      --variable-json foo='"false"' will  give	it  the	 string	 value
	      "false".	 Either	 :  or = may be	used to	separate KEY from VAL.
	      If the variable already has a value,  this  value	 will  be  re-
	      placed.

       --sandbox[=true|false]
	      Run  pandoc  in a	sandbox, limiting IO operations	in readers and
	      writers to reading the files  specified  on  the	command	 line.
	      Note that	this option does not limit IO operations by filters or
	      in  the production of PDF	documents.  But	it does	offer security
	      against, for example, disclosure of files	through	the use	of in-
	      clude directives.	 Anyone	using pandoc on	untrusted  user	 input
	      should use this option.

	      Note:  some readers and writers (e.g., docx) need	access to data
	      files.  If these are stored on the file system, then pandoc will
	      not be able to find them when run	in  --sandbox  mode  and  will
	      raise  an	 error.	  For these applications, we recommend using a
	      pandoc binary compiled with the embed_data_files	option,	 which
	      causes the data files to be baked	into the binary	instead	of be-
	      ing stored on the	file system.

       -D FORMAT, --print-default-template=FORMAT
	      Print the	system default template	for an output FORMAT.  (See -t
	      for a list of possible FORMATs.)	Templates in the user data di-
	      rectory  are  ignored.  This option may be used with -o/--output
	      to redirect output to a file, but	-o/--output must  come	before
	      --print-default-template on the command line.

	      Note  that some of the default templates use partials, for exam-
	      ple  styles.html.	  To  print  the  partials,  use   --print-de-
	      fault-data-file:	 for  example,	--print-default-data-file=tem-
	      plates/styles.html.

       --print-default-data-file=FILE
	      Print a system default data file.	 Files in the user data	direc-
	      tory are ignored.	 This option may be used with  -o/--output  to
	      redirect	output	to  a  file,  but -o/--output must come	before
	      --print-default-data-file	on the command line.

       --eol=crlf|lf|native
	      Manually	specify	 line  endings:	 crlf	(Windows),   lf	  (ma-
	      cOS/Linux/UNIX),	or  native (line endings appropriate to	the OS
	      on which pandoc is being run).  The default is native.

       --dpi=NUMBER
	      Specify the default dpi (dots per	 inch)	value  for  conversion
	      from  pixels  to inch/centimeters	and vice versa.	 (Technically,
	      the correct term would be	ppi: pixels per	inch.)	The default is
	      96dpi.  When images contain information  about  dpi  internally,
	      the  encoded  value  is used instead of the default specified by
	      this option.

       --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	72).   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  new-
	      lines  in	 the source, there will	be nonsemantic newlines	in the
	      output as	well).	In ipynb output, this option affects  wrapping
	      of the contents of Markdown cells.

       --columns=NUMBER
	      Specify  length of lines in characters.  This affects text wrap-
	      ping in the generated source code	(see --wrap).  It also affects
	      calculation of column widths for plain text tables  (see	Tables
	      below).

       --toc[=true|false], --table-of-contents[=true|false]
	      Include an automatically generated table of contents (or,	in the
	      case  of latex, context, docx, odt, opendocument,	rst, or	ms, an
	      instruction to create one) in the	output document.  This	option
	      has  no effect unless -s/--standalone is used, and it has	no ef-
	      fect on man, docbook4, docbook5, or jats output.

	      Note that	if you are producing a PDF via ms and using  (the  de-
	      fault) pdfroff as	a --pdf-engine,	the table of contents will ap-
	      pear at the beginning of the document, before the	title.	If you
	      would prefer it to be at the end of the document,	use the	option
	      --pdf-engine-opt=--no-toc-relocation.   If  groff	is used	as the
	      --pdf-engine, the	table of contents will always  appear  at  the
	      end of the document.

       --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
	      headings will be listed in the contents).

       --lof[=true|false], --list-of-figures[=true|false]
	      Include  an automatically	generated list of figures (or, in some
	      formats, an instruction to create	one) in	the  output  document.
	      This option has no effect	unless -s/--standalone is used,	and it
	      only has an effect on latex, context, and	docx output.

       --lot[=true|false], --list-of-tables[=true|false]
	      Include  an  automatically generated list	of tables (or, in some
	      formats, an instruction to create	one) in	the  output  document.
	      This option has no effect	unless -s/--standalone is used,	and it
	      only has an effect on latex, context, and	docx output.

       --strip-comments[=true|false]
	      Strip  out  HTML	comments  in  the  Markdown or Textile source,
	      rather than passing them on to Markdown, Textile or HTML	output
	      as  raw  HTML.   This does not apply to HTML comments inside raw
	      HTML blocks when the markdown_in_html_blocks  extension  is  not
	      set.

       --syntax-highlighting=default|none|idiomatic|STYLE|FILE
	      The  method to use for code syntax highlighting.	Setting	a spe-
	      cific STYLE causes highlighting to be performed with the	inter-
	      nal  highlighting	 engine,  using	 KDE  syntax  definitions  and
	      styles.  The idiomatic method uses a format-specific highlighter
	      if one is	available, or the default style	if the	target	format
	      has  no  idiomatic  highlighting method.	Setting	this option to
	      none disables all	syntax highlighting.  The default method  uses
	      a	format-specific	default.

	      The  default  for	HTML, EPUB, Docx, Ms, Man, and LaTeX output is
	      to use the internal highlighter  with  the  default  style;  for
	      Typst it is to use Typst's own syntax highlighting system.

	      Style  options  are  pygments  (the  default), kate, monochrome,
	      breezeDark, espresso, zenburn, haddock, and tango.  For more in-
	      formation	on syntax highlighting in  pandoc,  see	 Syntax	 high-
	      lighting,	below.	See also --list-highlight-styles.

	      Instead  of  a STYLE name, a JSON	file with extension .theme may
	      be supplied.  This will be parsed	as a KDE  syntax  highlighting
	      theme and	(if valid) used	as the highlighting style.

	      To   generate  the  JSON	version	 of  an	 existing  style,  use
	      --print-highlight-style.

       --no-highlight
	      Deprecated, use --syntax-highlighting=none instead.

	      Disables syntax highlighting for code blocks and	inlines,  even
	      when a language attribute	is given.

       --highlight-style=STYLE|FILE
	      Deprecated, use --syntax-highlighting=STYLE|FILE instead.

	      Specifies	 the  coloring	style to be used in highlighted	source
	      code.

       --print-highlight-style=STYLE|FILE
	      Prints a JSON version of a highlighting style, which can be mod-
	      ified, saved with	a  .theme  extension,  and  used  with	--syn-
	      tax-highlighting.	  This	option may be used with	-o/--output to
	      redirect output to a file,  but  -o/--output  must  come	before
	      --print-highlight-style on the command line.

       --syntax-definition=FILE
	      Instructs	pandoc to load a KDE XML syntax	definition file, which
	      will  be	used  for  syntax highlighting of appropriately	marked
	      code blocks.  This can be	used to	add support for	new  languages
	      or  to  use  altered  syntax definitions for existing languages.
	      This option may be repeated to add multiple syntax definitions.

       -H FILE,	--include-in-header=FILE|URL
	      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  repeat-
	      edly  to include multiple	files in the header.  They will	be in-
	      cluded in	the order specified.  Implies --standalone.

       -B FILE,	--include-before-body=FILE|URL
	      Include contents of FILE,	verbatim, at the beginning of the doc-
	      ument body (e.g. after the <body>	 tag  in  HTML,	 or  the  \be-
	      gin{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 in-
	      cluded in	the order specified.  Implies --standalone.  Note that
	      if the output format is odt, this	file must be  in  OpenDocument
	      XML format suitable for insertion	into the body of the document,
	      and  if  the  output  is	docx, this file	must be	in appropriate
	      OpenXML format.

       -A FILE,	--include-after-body=FILE|URL
	      Include contents of FILE,	verbatim, at the end of	 the  document
	      body (before the </body> tag in HTML, or the \end{document} com-
	      mand  in	LaTeX).	 This option can be used repeatedly to include
	      multiple files.  They will be included in	the  order  specified.
	      Implies  --standalone.   Note  that if the output	format is odt,
	      this file	must be	in OpenDocument	XML format suitable for	inser-
	      tion into	the body of the	document, and if the output  is	 docx,
	      this file	must be	in appropriate OpenXML format.

       --resource-path=SEARCHPATH
	      List  of	paths  to  search for images and other resources.  The
	      paths should be separated	by : on	Linux, UNIX,  and  macOS  sys-
	      tems, and	by ; on	Windows.  If --resource-path is	not specified,
	      the  default resource path is the	working	directory.  Note that,
	      if --resource-path is specified, the working directory  must  be
	      explicitly  listed  or  it  will	not be searched.  For example:
	      --resource-path=.:test will search the working directory and the
	      test subdirectory, in that order.	 This option can be  used  re-
	      peatedly.	 Search	path components	that come later	on the command
	      line  will  be searched before those that	come earlier, so --re-
	      source-path foo:bar --resource-path  baz:bim  is	equivalent  to
	      --resource-path baz:bim:foo:bar.	Note that this option only has
	      an  effect  when	pandoc itself needs to find an image (e.g., in
	      producing	a PDF or docx, or when --embed-resources is used.)  It
	      will not cause image paths to be rewritten in other cases	(e.g.,
	      when pandoc is generating	LaTeX or HTML).

       --request-header=NAME:VAL
	      Set the request header NAME to the value VAL  when  making  HTTP
	      requests	(for example, when a URL is given on the command line,
	      or when resources	used in	a document must	 be  downloaded).   If
	      you're  behind  a	 proxy,	 you  also need	to set the environment
	      variable http_proxy to http://....

       --no-check-certificate[=true|false]
	      Disable the certificate verification to allow access to unsecure
	      HTTP resources (for example when the certificate	is  no	longer
	      valid or self signed).

   Options affecting specific writers
       --self-contained[=true|false]
	      Deprecated synonym for --embed-resources --standalone.

       --embed-resources[=true|false]
	      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	html4,
	      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 rela-
	      tive to the working directory (if	the first source file  is  lo-
	      cal)  or	relative  to the base URL (if the first	source file is
	      remote).	Elements with the attribute data-external="1" will  be
	      left  alone; the documents they link to will not be incorporated
	      in the document.	Limitation: resources that are loaded  dynami-
	      cally  through  JavaScript  cannot be incorporated; as a result,
	      fonts may	be missing when	--mathjax is used, and	some  advanced
	      features (e.g. zoom or speaker notes) may	not work in an offline
	      "self-contained" reveal.js slide show.

	      For  SVG	images,	 img tags with data: URIs are used, unless the
	      image has	the class inline-svg, in which case an inline SVG ele-
	      ment is inserted.	 This approach is recommended when  there  are
	      many  occurrences	 of  the same SVG in a document, as <use> ele-
	      ments will be used to reduce duplication.

       --link-images[=true|false]
	      Include links to images instead of embedding the images in  ODT.
	      (This option currently only affects ODT output.)

       --html-q-tags[=true|false]
	      Use  <q>	tags for quotes	in HTML.  (This	option only has	an ef-
	      fect if the smart	extension is  enabled  for  the	 input	format
	      used.)

       --ascii[=true|false]
	      Use  only	 ASCII	characters in output.  Currently supported for
	      XML and HTML formats (which use entities instead of  UTF-8  when
	      this  option  is selected), CommonMark, gfm, and Markdown	(which
	      use entities), roff man and ms (which use	hexadecimal  escapes),
	      and  to a	limited	degree LaTeX (which uses standard commands for
	      accented characters when possible).

       --reference-links[=true|false]
	      Use reference-style links, rather	than inline links, in  writing
	      Markdown or reStructuredText.  By	default	inline links are used.
	      The  placement  of  link	references is affected by the --refer-
	      ence-location option.

       --reference-location=block|section|document
	      Specify whether footnotes	(and references, if reference-links is
	      set) are placed at the end of the	current	(top-level) block, the
	      current section, or the  document.   The	default	 is  document.
	      Currently	 this  option  only  affects the markdown, muse, html,
	      epub, slidy, s5, slideous, dzslides, and revealjs	 writers.   In
	      slide   formats,	specifying  --reference-location=section  will
	      cause notes to be	rendered at the	bottom of a slide.

       --figure-caption-position=above|below
	      Specify whether figure captions go above or below	 figures  (de-
	      fault  is	 below).   This	option only affects HTML, LaTeX, Docx,
	      ODT, and Typst output.

       --table-caption-position=above|below
	      Specify whether table captions go	above or below tables (default
	      is above).  This option only affects HTML, LaTeX,	Docx, ODT, and
	      Typst output.

       --markdown-headings=setext|atx
	      Specify whether to use ATX-style	(#-prefixed)  or  Setext-style
	      (underlined)  headings  for  level  1 and	2 headings in Markdown
	      output.  (The default is atx.)  ATX-style	 headings  are	always
	      used  for	levels 3+.  This option	also affects Markdown cells in
	      ipynb output.

       --list-tables[=true|false]
	      Render tables as list tables in RST output.

       --top-level-division=default|section|chapter|part
	      Treat top-level headings as the given division  type  in	LaTeX,
	      ConTeXt,	DocBook, and TEI output.  The hierarchy	order is part,
	      chapter, then section; all headings are shifted  such  that  the
	      top-level	 heading  becomes the specified	type.  The default be-
	      havior is	to determine the best division	type  via  heuristics:
	      unless other conditions apply, section is	chosen.	 When the doc-
	      umentclass  variable  is	set to report, book, or	memoir (unless
	      the article option is specified),	chapter	is implied as the set-
	      ting for this option.  If	beamer is the output format,  specify-
	      ing  either chapter or part will cause top-level headings	to be-
	      come \part{..}, while second-level headings remain as their  de-
	      fault type.

	      In   Docx	  output,  this	 option	 adds  section	breaks	before
	      first-level headings if chapter is selected, and	before	first-
	      and second-level headings	if part	is selected.  Footnote numbers
	      will  restart  with  each	section	break unless the reference doc
	      modifies this.

       -N, --number-sections=[true|false]
	      Number section headings in LaTeX,	ConTeXt, HTML,	Docx,  ms,  or
	      EPUB  output.   By default, sections are not numbered.  Sections
	      with class unnumbered will never be  numbered,  even  if	--num-
	      ber-sections is specified.

       --number-offset=NUMBER[,NUMBER,...]
	      Offsets  for section heading numbers.  The first number is added
	      to the section number  for  level-1  headings,  the  second  for
	      level-2  headings,  and so on.  So, for example, if you want the
	      first level-1 heading in your document to	be  numbered  "6"  in-
	      stead  of	 "1",  specify	--number-offset=5.   If	 your document
	      starts with a level-2 heading which  you	want  to  be  numbered
	      "1.5",  specify  --number-offset=1,4.   --number-offset only di-
	      rectly affects the number	of the first section heading in	a doc-
	      ument; subsequent	numbers	increment in the normal	way.   Implies
	      --number-sections.  Currently this feature only affects HTML and
	      Docx output.

       --listings[=true|false]
	      *Deprecated,   use   --syntax-highlighting=idiomatic  or	--syn-
	      tax-highlighting=default instead.

	      Use the listings package for LaTeX  code	blocks.	  The  package
	      does not support multi-byte encoding for source code.  To	handle
	      UTF-8  you  would	 need to use a custom template.	 This issue is
	      fully documented here: Encoding issue with the listings package.

       -i, --incremental[=true|false]
	      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  headings	with the specified level create	slides
	      (for beamer, revealjs, pptx,  s5,	 slidy,	 slideous,  dzslides).
	      Headings	above  this  level in the hierarchy are	used to	divide
	      the slide	show into sections; headings below this	 level	create
	      subheads	within	a  slide.   Valid  values are 0-6.  If a slide
	      level of 0 is specified, slides will not be split	 automatically
	      on headings, and horizontal rules	must be	used to	indicate slide
	      boundaries.   If	a slide	level is not specified explicitly, the
	      slide level will be set automatically based on the  contents  of
	      the document; see	Structuring the	slide show.

       --section-divs[=true|false]
	      Wrap  sections  in <section> tags	(or <div> tags for html4), and
	      attach identifiers to the	enclosing <section> (or	<div>)	rather
	      than  the	heading	itself (see Heading identifiers, below).  This
	      option only affects HTML output (and does	not affect HTML	 slide
	      formats).

       --email-obfuscation=none|javascript|references
	      Specify  a  method  for  obfuscating mailto: links in HTML docu-
	      ments.  none leaves mailto: links	as they	are.   javascript  ob-
	      fuscates	them  using JavaScript.	 references obfuscates them by
	      printing their letters as	decimal	or hexadecimal character  ref-
	      erences.	The default is none.

       --id-prefix=STRING
	      Specify  a  prefix  to  be added to all identifiers and internal
	      links in HTML and	DocBook	output,	and  to	 footnote  numbers  in
	      Markdown	and Haddock output.  This is useful for	preventing du-
	      plicate 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.   This	option only affects HTML (including HTML slide
	      shows) and  EPUB	output.	  It  should  be  used	together  with
	      -s/--standalone,	because	the link to the	stylesheet goes	in the
	      document header.

	      A	stylesheet is required for generating EPUB.  If	none  is  pro-
	      vided  using  this  option  (or  the  css	or stylesheet metadata
	      fields), 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.

       --reference-doc=FILE|URL
	      Use the specified	file as	a style	reference in producing a  docx
	      or ODT file.

	      Docx   For best results, the reference docx should be a modified
		     version  of  a docx file produced using pandoc.  The con-
		     tents  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.

		     To	produce	a custom reference.docx, first get a  copy  of
		     the   default  reference.docx:  pandoc  -o	 custom-refer-
		     ence.docx --print-default-data-file reference.docx.  Then
		     open custom-reference.docx	in Word, modify	the styles  as
		     you  wish,	 and  save the file.  For best results,	do not
		     make changes to this file other than modifying the	styles
		     used by pandoc:

		     Paragraph styles:

		      Normal

		      Body Text

		      First Paragraph

		      Compact

		      Title

		      Subtitle

		      Author

		      Date

		      Abstract

		      AbstractTitle

		      Bibliography

		      Heading 1

		      Heading 2

		      Heading 3

		      Heading 4

		      Heading 5

		      Heading 6

		      Heading 7

		      Heading 8

		      Heading 9

		      Block Text [for block quotes]

		      Footnote	Block Text [for	block quotes in	footnotes]

		      Source Code

		      Footnote	Text

		      Definition Term

		      Definition

		      Caption

		      Table Caption

		      Image Caption

		      Figure

		      Captioned Figure

		      TOC Heading

		     Character styles:

		      Default Paragraph Font

		      Verbatim	Char

		      Footnote	Reference

		      Hyperlink

		      Section Number

		     Table style:

		      Table

	      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	refer-
		     ence.odt in the user data directory (see --data-dir).  If
		     this is not found either, sensible	defaults will be used.

		     To	 produce  a  custom reference.odt, first get a copy of
		     the default reference.odt:	pandoc -o custom-reference.odt
		     --print-default-data-file reference.odt.  Then open  cus-
		     tom-reference.odt	in  LibreOffice,  modify the styles as
		     you wish, and save	the file.

	      PowerPoint
		     Templates included	with Microsoft PowerPoint 2013 (either
		     with .pptx	or .potx extension) are	known to work, as  are
		     most templates derived from these.

		     The specific requirement is that the template should con-
		     tain  layouts  with  the  following names (as seen	within
		     PowerPoint):

		      Title Slide

		      Title and Content

		      Section Header

		      Two Content

		      Comparison

		      Content with Caption

		      Blank

		     For each name, the	first layout found with	that name will
		     be	used.  If no layout is found with one  of  the	names,
		     pandoc will output	a warning and use the layout with that
		     name  from	the default reference doc instead.  (How these
		     layouts  are  used	 is  described	in  PowerPoint	layout
		     choice.)

		     All templates included with a recent version of MS	Power-
		     Point  will fit these criteria.  (You can click on	Layout
		     under the Home menu to check.)

		     You can also modify the default reference.pptx: first run
		     pandoc -o custom-reference.pptx --print-default-data-file
		     reference.pptx, and then modify custom-reference.pptx  in
		     MS	PowerPoint (pandoc will	use the	layouts	with the names
		     listed above).

       --split-level=NUMBER
	      Specify  the  heading level at which to split an EPUB or chunked
	      HTML document into separate files.  The default is to split into
	      chapters at level-1 headings.  In	the case of EPUB, 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 docu-
	      ments with few level-1 headings, one might want to use a chapter
	      level of 2 or 3.	For chunked HTML, this option  determines  how
	      much content goes	in each	"chunk."

       --chunk-template=PATHTEMPLATE
	      Specify  a template for the filenames in a chunkedhtml document.
	      In the template, %n will be replaced by the chunk	number (padded
	      with leading 0s to 3 digits), %s with the	section	number of  the
	      chunk,  %h  with	the heading text (with formatting removed), %i
	      with the section identifier.   For  example,  section-%s-%i.html
	      might be resolved	to section-1.1-introduction.html.  The charac-
	      ters  / and \ are	not allowed in chunk templates and will	be ig-
	      nored.  The default is %s-%i.html.

       --epub-chapter-level=NUMBER
	      Deprecated synonym for --split-level.

       --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-title-page=true|false
	      Determines whether a the title page is included in the EPUB (de-
	      fault is true).

       --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 exam-
	      ple:

		      <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 Meta-
	      data.

       --epub-embed-font=FILE
	      Embed the	specified font in the EPUB.  This option  can  be  re-
	      peated 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 declara-
	      tions like the following to your CSS (see	--css):

		     @font-face	{
			font-family: DejaVuSans;
			font-style: normal;
			font-weight: normal;
			src:url("../fonts/DejaVuSans-Regular.ttf");
		     }
		     @font-face	{
			font-family: DejaVuSans;
			font-style: normal;
			font-weight: bold;
			src:url("../fonts/DejaVuSans-Bold.ttf");
		     }
		     @font-face	{
			font-family: DejaVuSans;
			font-style: italic;
			font-weight: normal;
			src:url("../fonts/DejaVuSans-Oblique.ttf");
		     }
		     @font-face	{
			font-family: DejaVuSans;
			font-style: italic;
			font-weight: bold;
			src:url("../fonts/DejaVuSans-BoldOblique.ttf");
		     }
		     body { font-family: "DejaVuSans"; }

       --epub-subdirectory=DIRNAME
	      Specify  the  subdirectory  in the OCF container that is to hold
	      the EPUB-specific	contents.  The default is EPUB.	  To  put  the
	      EPUB contents in the top level, use an empty string.

       --ipynb-output=all|none|best
	      Determines  how  ipynb output cells are treated.	all means that
	      all of the data formats included in the original are  preserved.
	      none  means  that	 the contents of data cells are	omitted.  best
	      causes pandoc to try to pick the richest data block in each out-
	      put cell that is compatible with the output format.  The default
	      is best.

       --pdf-engine=PROGRAM
	      Use the specified	engine when producing PDF output.  Valid  val-
	      ues  are pdflatex, lualatex, xelatex, latexmk, tectonic, wkhtml-
	      topdf, weasyprint, pagedjs-cli, prince, context, groff, pdfroff,
	      and typst.  If the engine	is not in your PATH, the full path  of
	      the  engine may be specified here.  If this option is not	speci-
	      fied, pandoc uses	the following defaults depending on the	output
	      format specified using -t/--to:

	      	-t latex or none: pdflatex (other options: xelatex,  lualatex,
		tectonic, latexmk)

	      	-t context: context

	      	-t  html:  weasyprint  (other  options:	 prince,  wkhtmltopdf,
		pagedjs-cli; see print-css.rocks for a	good  introduction  to
		PDF generation from HTML/CSS)

	      	-t ms: pdfroff

	      	-t typst: typst

	      This  option  is normally	intended to be used when a PDF file is
	      specified	as -o/--output.	 However, it may still have an	effect
	      when other output	formats	are requested.	For example, ms	output
	      will include .pdfhref macros only	if a --pdf-engine is selected,
	      and  the macros will be differently encoded depending on whether
	      groff or pdfroff is specified.

       --pdf-engine-opt=STRING
	      Use the given string as a	command-line argument to  the  pdf-en-
	      gine.   For  example,  to	use a persistent directory foo for la-
	      texmk's auxiliary	files, use --pdf-engine-opt=-outdir=foo.  Note
	      that no check for	duplicate options is done.

   Citation rendering
       -C, --citeproc
	      Process the citations in the file, replacing them	with  rendered
	      citations	 and  adding a bibliography.  Citation processing will
	      not take place unless bibliographic  data	 is  supplied,	either
	      through  an external file	specified using	the --bibliography op-
	      tion or the bibliography field in	metadata, or via a  references
	      section  in  metadata containing a list of citations in CSL YAML
	      format with Markdown formatting.	The style is controlled	 by  a
	      CSL stylesheet specified using the --csl option or the csl field
	      in  metadata.   (If  no stylesheet is specified, the chicago-au-
	      thor-date	style will be used by default.)	 The citation process-
	      ing transformation may be	applied	before or after	filters	or Lua
	      filters (see --filter, --lua-filter): these transformations  are
	      applied  in the order they appear	on the command line.  For more
	      information, see the section on Citations.

	      Note: if this option is specified, the citations extension  will
	      be  disabled  automatically  in  the  writer, to ensure that the
	      citeproc-generated citations will	be  rendered  instead  of  the
	      format's own citation syntax.

       --bibliography=FILE
	      Set  the	bibliography field in the document's metadata to FILE,
	      overriding any value set in the metadata.	 If  you  supply  this
	      argument	multiple  times, each FILE will	be added to bibliogra-
	      phy.  If FILE is a URL, it will be fetched via HTTP.  If FILE is
	      not found	relative to the	working	directory, it will  be	sought
	      in the resource path (see	--resource-path).

       --csl=FILE
	      Set the csl field	in the document's metadata to FILE, overriding
	      any  value  set in the metadata.	(This is equivalent to --meta-
	      data csl=FILE.)  If FILE is a URL, it will be fetched via	 HTTP.
	      If  FILE is not found relative to	the working directory, it will
	      be sought	in the resource	path (see --resource-path) and finally
	      in the csl subdirectory of the pandoc user data directory.

       --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.)  If  FILE
	      is  a  URL,  it  will be fetched via HTTP.  If FILE is not found
	      relative to the working directory, it will be sought in the  re-
	      source  path (see	--resource-path) and finally in	the csl	subdi-
	      rectory of the pandoc user data directory.

       --natbib
	      Use natbib for citations in LaTeX	output.	 This  option  is  not
	      for  use	with  the --citeproc option 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 --citeproc option 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
       The default is to render	TeX math as  far  as  possible	using  Unicode
       characters.   Formulas are put inside a span with class="math", so that
       they may	be styled differently from the	surrounding  text  if  needed.
       However,	this gives acceptable results only for basic math, usually you
       will want to use	--mathjax or another of	the following options.

       --mathjax[=URL]
	      Use  MathJax  to	display	embedded TeX math in HTML output.  TeX
	      math will	be put between \(...\) (for inline  math)  or  \[...\]
	      (for  display  math) and wrapped in <span> tags with class math.
	      Then the MathJax JavaScript will	render	it.   The  URL	should
	      point  to	the MathJax.js load script.  If	a URL is not provided,
	      a	link to	the Cloudflare CDN will	be inserted.

       --mathml
	      Convert TeX math to MathML (in epub3, docbook4, docbook5,	 jats,
	      html4 and	html5).	 This is the default in	odt output.  MathML is
	      supported	 natively  by  the main	web browsers and select	e-book
	      readers.

       --webtex[=URL]
	      Convert TeX formulas 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.  For SVG im-
	      ages   you   can	 for   example	 use   --webtex	   https://la-
	      tex.codecogs.com/svg.latex?.    If  no  URL  is  specified,  the
	      CodeCogs	URL  generating	 PNGs  will   be   used	  (https://la-
	      tex.codecogs.com/png.latex?).   Note:  the  --webtex option will
	      affect Markdown output as	well  as  HTML,	 which	is  useful  if
	      you're  targeting	a version of Markdown without native math sup-
	      port.

       --katex[=URL]
	      Use KaTeX	to display embedded TeX	math in	HTML output.  The  URL
	      is  the  base  URL for the KaTeX library.	 That directory	should
	      contain a	katex.min.js and a katex.min.css file.	If  a  URL  is
	      not provided, a link to the KaTeX	CDN will be inserted.

       --gladtex
	      Enclose  TeX  math  in  <eq> tags	in HTML	output.	 The resulting
	      HTML can then be processed by GladTeX to produce SVG  images  of
	      the  typeset  formulas and an HTML file with these images	embed-
	      ded.

		     pandoc -s --gladtex input.md -o myfile.htex
		     gladtex -d	image_dir myfile.htex
		     # produces	myfile.html and	images in image_dir

   Options for wrapper scripts
       --dump-args[=true|false]
	      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 out-
	      put file specified with the -o option, or	- (for stdout)	if  no
	      output file was specified.  The remaining	lines contain the com-
	      mand-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[=true|false]
	      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

EXIT CODES
       If  pandoc completes successfully, it will return exit code 0.  Nonzero
       exit codes have the following meanings:

    Code Error
  ------ -------------------------------------
       1 PandocIOError
       3 PandocFailOnWarningError
       4 PandocAppError
       5 PandocTemplateError
       6 PandocOptionError
      21 PandocUnknownReaderError
      22 PandocUnknownWriterError
      23 PandocUnsupportedExtensionError
      24 PandocCiteprocError
      25 PandocBibliographyError
      31 PandocEpubSubdirectoryError
      43 PandocPDFError
      44 PandocXMLError
      47 PandocPDFProgramNotFoundError
      61 PandocHttpError
      62 PandocShouldNeverHappenError
      63 PandocSomeError
      64 PandocParseError
      66 PandocMakePDFError
      67 PandocSyntaxMapError
      83 PandocFilterError
      84 PandocLuaError
      89 PandocNoScriptingEngine
      91 PandocMacroLoop
      92 PandocUTF8DecodingError
      93 PandocIpynbDecodingError
      94 PandocUnsupportedCharsetError
      95 PandocInputNotTextError
      97 PandocCouldNotFindDataFileError
      98 PandocCouldNotFindMetadataFileError
      99 PandocResourceNotFound

DEFAULTS FILES
       The --defaults option may be used to specify a package of  options,  in
       the  form  of  a	 YAML  or JSON file.  Examples in this section will be
       given in	YAML, but the equivalent forms in JSON will also work.

       Fields that are omitted will just have their  regular  default  values.
       So a defaults file can be as simple as one line:

	      verbosity: INFO

       or in JSON:

	      {	"verbosity": "INFO" }

       In  fields that expect a	file path (or list of file paths), the follow-
       ing syntax may be used to interpolate environment variables:

	      csl:  ${HOME}/mycsldir/special.csl

       ${USERDATA} may also be used; this will always resolve to the user data
       directory that is current when the defaults file	is parsed,  regardless
       of the setting of the environment variable USERDATA.

       ${.} will resolve to the	directory containing the defaults file itself.
       This allows you to refer	to resources contained in that directory:

	      epub-cover-image:	${.}/cover.jpg
	      epub-metadata: ${.}/meta.xml
	      resource-path:
	      -	.	      #	the working directory from which pandoc	is run
	      -	${.}/images   #	the images subdirectory	of the directory
			      #	containing this	defaults file

       This  environment  variable  interpolation  syntax only works in	fields
       that expect file	paths.

       Defaults	files can be placed in the defaults subdirectory of  the  user
       data  directory	and  used  from	any directory.	For example, one could
       create a	file specifying	defaults for writing letters, save it as  let-
       ter.yaml	 in  the defaults subdirectory of the user data	directory, and
       then invoke these defaults from any directory using  pandoc  --defaults
       letter or pandoc	-dletter.

       When multiple defaults are used,	their contents will be combined.

       Note  that,  where  command-line	 arguments  may	 be  repeated (--meta-
       data-file,  --css,  --include-in-header,	 --include-before-body,	 --in-
       clude-after-body,  --variable,  --metadata,  --syntax-definition),  the
       values specified	on the command line will combine with values specified
       in the defaults file, rather than replacing them.

       The following tables show the mapping between the command line and  de-
       faults file entries.

 command line			   defaults file
 --------------------------------- ----------------------------------
 foo.md				   input-file: foo.md

 foo.md	bar.md			   input-files:
				     - foo.md
				     - bar.md

       The  value  of  input-files  may	 be  left empty	to indicate input from
       stdin, and it can be an empty sequence [] for no	input.

   General options
 command line			     defaults file
 ----------------------------------- --------------------------------------
 --from	markdown+emoji		     from: markdown+emoji

				     reader: markdown+emoji

 --to markdown+hard_line_breaks	     to: markdown+hard_line_breaks

				     writer: markdown+hard_line_breaks

 --output foo.pdf		     output-file: foo.pdf

 --output -			     output-file:

 --data-dir dir			     data-dir: dir

 --defaults file		     defaults:
				     - file

 --verbose			     verbosity:	INFO

 --quiet			     verbosity:	ERROR

 --fail-if-warnings		     fail-if-warnings: true

 --sandbox			     sandbox: true

 --log=FILE			     log-file: FILE

       Options specified in a defaults file itself always have	priority  over
       those in	another	file included with a defaults: entry.

       verbosity can have the values ERROR, WARNING, or	INFO.

   Reader options
 command line			       defaults	file
 ------------------------------------- ------------------------------------
 --shift-heading-level-by -1	       shift-heading-level-by: -1

 --indented-code-classes python	       indented-code-classes:
					 - python

 --default-image-extension ".jpg"      default-image-extension:	'.jpg'

 --file-scope			       file-scope: true

 --citeproc \			       filters:
  --lua-filter count-words.lua \	 - citeproc
  --filter special.lua			 - count-words.lua
					 - type: json
					   path: special.lua

 --metadata key=value \		       metadata:
  --metadata key2			 key: value
					 key2: true

 --metadata-file meta.yaml	       metadata-files:
					 - meta.yaml

				       metadata-file: meta.yaml

 --preserve-tabs		       preserve-tabs: true

 --tab-stop 8			       tab-stop: 8

 --track-changes accept		       track-changes: accept

 --extract-media dir		       extract-media: dir

 --abbreviations abbrevs.txt	       abbreviations: abbrevs.txt

 --trace			       trace: true

       Metadata	 values	 specified  in	a  defaults file are parsed as literal
       string text, not	Markdown.

       Filters will be assumed to be Lua filters if they have the .lua	exten-
       sion,  and  JSON	 filters  otherwise.   But the filter type can also be
       specified explicitly, as	shown.	Filters	are run	in  the	 order	speci-
       fied.   To include the built-in citeproc	filter,	use either citeproc or
       {type: citeproc}.

   General writer options
 command line			     defaults file
 ----------------------------------- --------------------------------------
 --standalone			     standalone: true

 --template letter		     template: letter

 --variable key=val \		     variables:
   --variable key2		       key: val
				       key2: true

 --eol nl			     eol: nl

 --dpi 300			     dpi: 300

 --wrap	preserve		     wrap: "preserve"

 --columns 72			     columns: 72

 --table-of-contents		     table-of-contents:	true

 --toc				     toc: true

 --toc-depth 3			     toc-depth:	3

 --strip-comments		     strip-comments: true

 --no-highlight			     syntax-highlighting: 'none'

 --syntax-highlighting kate	     syntax-highlighting: kate

 --syntax-definition mylang.xml	     syntax-definitions:
				       - mylang.xml

				     syntax-definition:	mylang.xml

 --include-in-header inc.tex	     include-in-header:
				       - inc.tex

 --include-before-body inc.tex	     include-before-body:
				       - inc.tex

 --include-after-body inc.tex	     include-after-body:
				       - inc.tex

 --resource-path .:foo		     resource-path: ['.','foo']

 --request-header foo:bar	     request-headers:
				       - ["User-Agent",	"Mozilla/5.0"]

 --no-check-certificate		     no-check-certificate: true

   Options affecting specific writers
 command line			       defaults	file
 ------------------------------------- ------------------------------------
 --self-contained		       self-contained: true

 --link-images			       link-images: true

 --html-q-tags			       html-q-tags: true

 --ascii			       ascii: true

 --reference-links		       reference-links:	true

 --reference-location block	       reference-location: block

 --figure-caption-position=above       figure-caption-position:	above

 --table-caption-position=below	       table-caption-position: below

 --markdown-headings atx	       markdown-headings: atx

 --list-tables			       list-tables: true

 --top-level-division chapter	       top-level-division: chapter

 --number-sections		       number-sections:	true

 --number-offset=1,4		       number-offset: \[1,4\]

 --listings			       listings: true

 --list-of-figures		       list-of-figures:	true

 --lof				       lof: true

 --list-of-tables		       list-of-tables: true

 --lot				       lot: true

 --incremental			       incremental: true

 --slide-level 2		       slide-level: 2

 --section-divs			       section-divs: true

 --email-obfuscation references	       email-obfuscation: references

 --id-prefix ch1		       identifier-prefix: ch1

 --title-prefix	MySite		       title-prefix: MySite

 --css styles/screen.css  \	       css:
   --css styles/special.css		 - styles/screen.css
					 - styles/special.css

 --reference-doc my.docx	       reference-doc: my.docx

 --epub-cover-image cover.jpg	       epub-cover-image: cover.jpg

 --epub-title-page=false	       epub-title-page:	false

 --epub-metadata meta.xml	       epub-metadata: meta.xml

 --epub-embed-font special.otf \       epub-fonts:
   --epub-embed-font headline.otf	 - special.otf
					 - headline.otf

 --split-level 2		       split-level: 2

 --chunk-template="%i.html"	       chunk-template: "%i.html"

 --epub-subdirectory=""		       epub-subdirectory: ''

 --ipynb-output	best		       ipynb-output: best

 --pdf-engine xelatex		       pdf-engine: xelatex

 --pdf-engine-opt=--shell-escape       pdf-engine-opts:
					 - '-shell-escape'

				       pdf-engine-opt: '-shell-escape'

   Citation rendering
 command line			       defaults	file
 ------------------------------------- ------------------------------------
 --citeproc			       citeproc: true

 --bibliography	logic.bib	       bibliography: logic.bib

 --csl ieee.csl			       csl: ieee.csl

 --citation-abbreviations ab.json      citation-abbreviations: ab.json

 --natbib			       cite-method: natbib

 --biblatex			       cite-method: biblatex

       cite-method can be citeproc, natbib, or biblatex.   This	 only  affects
       LaTeX  output.	If  you	 want to use citeproc to format	citations, you
       should also set `citeproc: true'.

       If you need control over	when the citeproc processing is	done  relative
       to  other  filters, you should instead use citeproc in the list of fil-
       ters (see Reader	options).

   Math	rendering in HTML
 command line			   defaults file
 --------------------------------- ----------------------------------
 --mathjax			   html-math-method:
				     method: mathjax

 --mathml			   html-math-method:
				     method: mathml

 --webtex			   html-math-method:
				     method: webtex

 --katex			   html-math-method:
				     method: katex

 --gladtex			   html-math-method:
				     method: gladtex

       In addition to the values listed	 above,	 method	 can  have  the	 value
       plain.

       If the command line option accepts a URL	argument, an url: field	can be
       added to	html-math-method:.

   Options for wrapper scripts
 command line			   defaults file
 --------------------------------- ----------------------------------
 --dump-args			   dump-args: true

 --ignore-args			   ignore-args:	true

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 docx output, customize the	default.openxml	template.

        For pdf output, customize the	default.latex  template	 (or  the  de-
	 fault.context template, if you	use -t context,	or the default.ms tem-
	 plate,	 if you	use -t ms, or the default.html template, if you	use -t
	 html).

        pptx has no template.

       Note that docx, odt, and	pptx  output  can  also	 be  customized	 using
       --reference-doc.	 Use a reference doc to	adjust the styles in your doc-
       ument;  use  a  template	to handle variable interpolation and customize
       the presentation	of metadata, the position of the  table	 of  contents,
       boilerplate text, etc.

       Templates contain variables, which allow	for the	inclusion of arbitrary
       information  at	any point in the file.	They may be set	at the command
       line using the -V/--variable option.  If	a variable is not set,	pandoc
       will  look for the key in the document's	metadata, which	can be set us-
       ing either YAML metadata	blocks or with the -M/--metadata  option.   In
       addition, some variables	are given default values by pandoc.  See Vari-
       ables below for a list of variables used	in pandoc's default templates.

       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.

   Template syntax
   Comments
       Anything	 between  the  sequence	 $--  and  the end of the line will be
       treated as a comment and	omitted	from the output.

   Delimiters
       To mark variables and control structures	in the template, either	 $...$
       or  ${...}  may be used as delimiters.  The styles may also be mixed in
       the same	template, but the opening and closing delimiter	must match  in
       each case.  The opening delimiter may be	followed by one	or more	spaces
       or  tabs, which will be ignored.	 The closing delimiter may be preceded
       by one or more spaces or	tabs, which will be ignored.

       To include a literal $ in the document, use $$.

   Interpolated	variables
       A slot for an interpolated variable is a	variable  name	surrounded  by
       matched	delimiters.   Variable	names must begin with a	letter and can
       contain letters,	numbers, _, -, and ..  The keywords it,	if, else,  en-
       dif, for, sep, and endfor may not be used as variable names.  Examples:

	      $foo$
	      $foo.bar.baz$
	      $foo_bar.baz-bim$
	      $	foo $
	      ${foo}
	      ${foo.bar.baz}
	      ${foo_bar.baz-bim}
	      ${ foo }

       Variable	names with periods are used to get at structured variable val-
       ues.   So,  for	example,  employee.salary will return the value	of the
       salary field of the object that is the value of the employee field.

        If the	value of the variable is a simple value, it will  be  rendered
	 verbatim.  (Note that no escaping is done; the	assumption is that the
	 calling  program will escape the strings appropriately	for the	output
	 format.)

        If the	value is a list, the values will be concatenated.

        If the	value is a map,	the string true	will be	rendered.

        Every other value will	be rendered as the empty string.

   Conditionals
       A conditional begins with if(variable) (enclosed	in matched delimiters)
       and ends	with endif (enclosed in	matched	delimiters).  It  may  option-
       ally  contain an	else (enclosed in matched delimiters).	The if section
       is used if variable has a true value, otherwise	the  else  section  is
       used (if	present).  The following values	count as true:

        any map

        any array containing at least one true	value

        any nonempty string

        boolean True

       Note  that in YAML metadata (and	metadata specified on the command line
       using -M/--metadata), unquoted true and false will  be  interpreted  as
       Boolean	values.	  But  a  variable specified on	the command line using
       -V/--variable will always be given a string value.  Hence a conditional
       if(foo) will be triggered if you	use -V foo=false, but not if  you  use
       -M foo=false.

       Examples:

	      $if(foo)$bar$endif$

	      $if(foo)$
		$foo$
	      $endif$

	      $if(foo)$
	      part one
	      $else$
	      part two
	      $endif$

	      ${if(foo)}bar${endif}

	      ${if(foo)}
		${foo}
	      ${endif}

	      ${if(foo)}
	      ${ foo.bar }
	      ${else}
	      no foo!
	      ${endif}

       The keyword elseif may be used to simplify complex nested conditionals:

	      $if(foo)$
	      XXX
	      $elseif(bar)$
	      YYY
	      $else$
	      ZZZ
	      $endif$

   For loops
       A  for  loop begins with	for(variable) (enclosed	in matched delimiters)
       and ends	with endfor (enclosed in matched delimiters).

        If variable is	an array, the material inside the loop will be	evalu-
	 ated  repeatedly,  with variable being	set to each value of the array
	 in turn, and concatenated.

        If variable is	a map, the material inside will	be set to the map.

        If the	value of the associated	variable is not	an array or a  map,  a
	 single	iteration will be performed on its value.

       Examples:

	      $for(foo)$$foo$$sep$, $endfor$

	      $for(foo)$
		- $foo.last$, $foo.first$
	      $endfor$

	      ${ for(foo.bar) }
		- ${ foo.bar.last }, ${	foo.bar.first }
	      ${ endfor	}

	      $for(mymap)$
	      $it.name$: $it.office$
	      $endfor$

       You may optionally specify a separator between consecutive values using
       sep (enclosed in	matched	delimiters).  The material between sep and the
       endfor is the separator.

	      ${ for(foo) }${ foo }${ sep }, ${	endfor }

       Instead	of  using variable inside the loop, the	special	anaphoric key-
       word it may be used.

	      ${ for(foo.bar) }
		- ${ it.last },	${ it.first }
	      ${ endfor	}

   Partials
       Partials	(subtemplates stored in	different files) may  be  included  by
       using the name of the partial, followed by (), for example:

	      ${ styles() }

       Partials	 will be sought	in the directory containing the	main template.
       The file	name will be assumed to	have the same extension	 as  the  main
       template	 if it lacks an	extension.  When calling the partial, the full
       name including file extension can also be used:

	      ${ styles.html() }

       (If a partial is	not found in the directory of  the  template  and  the
       template	 path  is  given as a relative path, it	will also be sought in
       the templates subdirectory of the user data directory.)

       Partials	may optionally be applied to variables using a colon:

	      ${ date:fancy() }

	      ${ articles:bibentry() }

       If articles is an array,	this will iterate over	its  values,  applying
       the  partial  bibentry()	 to  each one.	So the second example above is
       equivalent to

	      ${ for(articles) }
	      ${ it:bibentry() }
	      ${ endfor	}

       Note that the anaphoric keyword it must be  used	 when  iterating  over
       partials.   In  the above examples, the bibentry	partial	should contain
       it.title	(and so	on) instead of articles.title.

       Final newlines are omitted from included	partials.

       Partials	may include other partials.

       A separator between values of an	 array	may  be	 specified  in	square
       brackets, immediately after the variable	name or	partial:

	      ${months[, ]}

	      ${articles:bibentry()[; ]}

       The  separator  in  this	case is	literal	and (unlike with sep in	an ex-
       plicit for loop)	cannot contain interpolated variables  or  other  tem-
       plate directives.

   Nesting
       To ensure that content is "nested," that	is, subsequent lines indented,
       use the ^ directive:

	      $item.number$  $^$$item.description$ ($item.price$)

       In  this	example, if item.description has multiple lines, they will all
       be indented to line up with the first line:

	      00123  A fine bottle of 18-year old
		     Oban whiskey. ($148)

       To nest multiple	lines to the same level, align them with the ^	direc-
       tive in the template.  For example:

	      $item.number$  $^$$item.description$ ($item.price$)
			     (Available	til $item.sellby$.)

       will produce

	      00123  A fine bottle of 18-year old
		     Oban whiskey. ($148)
		     (Available	til March 30, 2020.)

       If  a  variable	occurs by itself on a line, preceded by	whitespace and
       not followed by further text or directives on the same  line,  and  the
       variable's  value  contains multiple lines, it will be nested automati-
       cally.

   Breakable spaces
       Normally, spaces	in the template	itself (as opposed to  values  of  the
       interpolated  variables)	are not	breakable, but they can	be made	break-
       able in part of the template by using the ~ keyword (ended with another
       ~).

	      $~$This long line	may break if the document is rendered
	      with a short line	length.$~$

   Pipes
       A pipe transforms the value of a	variable or partial.  Pipes are	speci-
       fied using a slash (/) between the variable name	(or partial)  and  the
       pipe name.  Example:

	      $for(name)$
	      $name/uppercase$
	      $endfor$

	      $for(metadata/pairs)$
	      -	$it.key$: $it.value$
	      $endfor$

	      $employee:name()/uppercase$

       Pipes may be chained:

	      $for(employees/pairs)$
	      $it.key/alpha/uppercase$.	$it.name$
	      $endfor$

       Some pipes take parameters:

	      |----------------------|------------|
	      $for(employee)$
	      $it.name.first/uppercase/left 20 "| "$$it.name.salary/right 10 " | " " |"$
	      $endfor$
	      |----------------------|------------|

       Currently the following pipes are predefined:

        pairs:	Converts a map or array	to an array of maps, each with key and
	 value	fields.	  If  the original value was an	array, the key will be
	 the array index, starting with	1.

        uppercase: Converts text to uppercase.

        lowercase: Converts text to lowercase.

        length: Returns the length of the value: number of characters	for  a
	 textual value,	number of elements for a map or	array.

        reverse:  Reverses  a	textual	 value	or array, and has no effect on
	 other values.

        first:	Returns	the first value	of an array, if	applied	to a non-empty
	 array;	otherwise returns the original value.

        last: Returns the last	value of an array, if applied to  a  non-empty
	 array;	otherwise returns the original value.

        rest:	Returns	 all  but the first value of an	array, if applied to a
	 non-empty array; otherwise returns the	original value.

        allbutlast: Returns all but the last value of an array, if applied to
	 a non-empty array; otherwise returns the original value.

        chomp:	Removes	trailing newlines (and breakable space).

        nowrap: Disables line wrapping	on breakable spaces.

        alpha:	Converts textual values	that can be read as  an	 integer  into
	 lowercase  alphabetic	characters a..z	(mod 26).  This	can be used to
	 get lettered enumeration from array indices.  To get  uppercase  let-
	 ters, chain with uppercase.

        roman:	 Converts  textual  values that	can be read as an integer into
	 lowercase roman numerals.  This can be	used to	get lettered  enumera-
	 tion  from  array indices.  To	get uppercase roman, chain with	upper-
	 case.

        left n	"leftborder" "rightborder": Renders a textual value in a block
	 of width n, aligned to	the left, with an optional left	and right bor-
	 der.  Has no effect on	other values.  This can	be used	to align mate-
	 rial in tables.  Widths are positive integers indicating  the	number
	 of  characters.   Borders are strings inside double quotes; literal "
	 and \ characters must be backslash-escaped.

        right n "leftborder" "rightborder": Renders  a	 textual  value	 in  a
	 block	of  width  n, aligned to the right, and	has no effect on other
	 values.

        center	n "leftborder" "rightborder": Renders a	 textual  value	 in  a
	 block	of  width n, aligned to	the center, and	has no effect on other
	 values.

   Variables
   Metadata variables
       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, which allows for multiple authors,
	      or through a YAML	metadata block:

		     ---
		     author:
		     - Aristotle
		     - Peter Abelard
		     ...
		     Note  that	 if you	just want to set PDF or	HTML metadata,
		     without including a title block in	the  document  itself,
		     you  can  set  the	title-meta, author-meta, and date-meta
		     variables.	 (By  default  these  are  set	automatically,
		     based  on	title,	author,	 and date.)  The page title in
		     HTML is set by pagetitle, which is	equal to title by  de-
		     fault.

       subtitle
	      document	subtitle,  included in HTML, EPUB, LaTeX, ConTeXt, and
	      docx documents

       abstract
	      document summary,	included in HTML,  LaTeX,  ConTeXt,  AsciiDoc,
	      and docx documents

       abstract-title
	      title  of	abstract, currently used only in HTML, EPUB, docx, and
	      Typst.  This will	be set automatically to	a localized value, de-
	      pending on lang, but can be manually overridden.

       keywords
	      list of keywords to be included in HTML, PDF,  ODT,  pptx,  docx
	      and AsciiDoc metadata; repeat as for author, above

       subject
	      document	subject,  included  in	ODT, PDF, docx,	EPUB, and pptx
	      metadata

       description
	      document description, included in	ODT, docx and  pptx  metadata.
	      Some applications	show this as Comments metadata.

       category
	      document category, included in docx and pptx metadata

       Additionally, any root-level string metadata, not included in ODT, docx
       or  pptx	 metadata  is  added as	a custom property.  The	following YAML
       metadata	block for instance:

	      ---
	      title:  'This is the title'
	      subtitle:	"This is the subtitle"
	      author:
	      -	Author One
	      -	Author Two
	      description: |
		  This is a long
		  description.

		  It consists of two paragraphs
	      ...

       will include title, author and description as standard document proper-
       ties and	subtitle as a custom property when converting to docx, ODT  or
       pptx.

   Language variables
       lang   identifies the main language of the document using IETF language
	      tags  (following the BCP 47 standard), such as en	or en-GB.  The
	      Language subtag lookup tool can look up or  verify  these	 tags.
	      This  affects most formats, and controls hyphenation in PDF out-
	      put when using LaTeX (through babel and polyglossia) or ConTeXt.
	      Use native pandoc	Divs and Spans	with  the  lang	 attribute  to
	      switch the language:

		     ---
		     lang: en-GB
		     ...

		     Text in the main document language	(British English).

		     ::: {lang=fr-CA}
		     > Cette citation est crite	en franais canadien.
		     :::

		     More text in English. ['Zitat auf Deutsch.']{lang=de}

       dir    the  base	 script	 direction,  either rtl	(right-to-left)	or ltr
	      (left-to-right).
	      For bidirectional	documents, native pandoc spans and  divs  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 generat-
	      ing HTML)	supports the Unicode  Bidirectional  Algorithm.	  When
	      using LaTeX for bidirectional documents, only the	xelatex	engine
	      is fully supported (use --pdf-engine=xelatex).

   Variables for HTML
       document-css
	      Enables  inclusion of most of the	CSS in the styles.html partial
	      (have  a	 look	with   pandoc	--print-default-data-file=tem-
	      plates/styles.html).  Unless you use --css, this variable	is set
	      to true by default.  You can disable it with e.g.	pandoc -M doc-
	      ument-css=false.

       mainfont
	      sets the CSS font-family property	on the html element.

       fontsize
	      sets  the	 base  CSS  font-size,	which  you'd  usually  set  to
	      e.g. 20px,  but  it  also	 accepts  pt  (12pt  =	16px  in  most
	      browsers).

       fontcolor
	      sets the CSS color property on the html element.

       linkcolor
	      sets the CSS color property on all links.

       monofont
	      sets the CSS font-family property	on code	elements.

       monobackgroundcolor
	      sets the CSS background-color property on	code elements and adds
	      extra padding.

       linestretch
	      sets  the	CSS line-height	property on the	html element, which is
	      preferred	to be unitless.

       maxwidth
	      sets the CSS max-width property (default is 36em).

       backgroundcolor
	      sets the CSS background-color property on	the html element.

       margin-left, margin-right, margin-top, margin-bottom
	      sets the corresponding CSS padding properties on the  body  ele-
	      ment.

       To override or extend some CSS for just one document, include for exam-
       ple:

	      ---
	      header-includes: |
		<style>
		blockquote {
		  font-style: italic;
		}
		tr.even	{
		  background-color: #f0f0f0;
		}
		td, th {
		  padding: 0.5em 2em 0.5em 0.5em;
		}
		tbody {
		  border-bottom: none;
		}
		</style>
	      ---

   Variables for HTML math
       classoption
	      when  using --katex, you can render display math equations flush
	      left using YAML metadata or with -M classoption=fleqn.

   Variables for HTML slides
       These affect HTML output	when producing slide shows with	pandoc.

       institute
	      author affiliations: can be a list when there are	 multiple  au-
	      thors

       revealjs-url
	      base     URL    for    reveal.js	  documents    (defaults    to
	      https://unpkg.com/reveal.js@^5)

       s5-url base URL for S5 documents	(defaults to s5/default)

       slidy-url
	      base    URL     for     Slidy	documents     (defaults	    to
	      https://www.w3.org/Talks/Tools/Slidy2)

       slideous-url
	      base URL for Slideous documents (defaults	to slideous)

       title-slide-attributes
	      additional  attributes  for  the	title slide of reveal.js slide
	      shows.  See background in	reveal.js, beamer, and pptx for	an ex-
	      ample.

       highlightjs-theme
	      highlight.js theme  for  code  highlighting  when	 using	--syn-
	      tax-highlighting=idiomatic with reveal.js	(defaults to monokai).
	      See the highlight.js demo	page for available themes.

       All  reveal.js  configuration  options  are available as	variables.  To
       turn off	boolean	flags that default to true in reveal.js, use 0.

   Variables for Beamer	slides
       These variables change the appearance of	PDF slides using beamer.

       aspectratio
	      slide aspect ratio (43 for 4:3 [default],	169 for	16:9, 1610 for
	      16:10, 149 for 14:9, 141 for 1.41:1, 54 for 5:4, 32 for 3:2)

       beameroption
	      add extra	beamer option with \setbeameroption{}

       institute
	      author affiliations: can be a list when there are	 multiple  au-
	      thors

       logo   logo image for slides

       logooptions
	      options for logo image (e.g., width, height)

       navigation
	      controls	navigation symbols (default is empty for no navigation
	      symbols; other valid values are frame, vertical, and horizontal)

       section-titles
	      enables "title pages" for	new sections (default is true)

       theme, colortheme, fonttheme, innertheme, outertheme
	      beamer themes

       themeoptions, colorthemeoptions,	fontthemeoptions, innerthemeoptions,
       outerthemeoptions
	      options for LaTeX	beamer themes (lists)

       titlegraphic
	      image for	title slide: can be a list

       titlegraphicoptions
	      options for title	slide image (e.g., width, height)

       shorttitle, shortsubtitle, shortauthor, shortinstitute, shortdate
	      some beamer themes use short versions of	the  title,  subtitle,
	      author, institute, date

   Variables for PowerPoint
       These variables control the visual aspects of a slide show that are not
       easily controlled via templates.

       monofont
	      font to use for code.

   Variables for LaTeX
       Pandoc uses these variables when	creating a PDF with a LaTeX engine.

   Layout
       block-headings
	      make \paragraph and \subparagraph	(fourth- and fifth-level head-
	      ings, or fifth- and sixth-level with book	classes) free-standing
	      rather  than  run-in; requires further formatting	to distinguish
	      from \subsubsection (third- or fourth-level headings).   Instead
	      of  using	 this option, KOMA-Script can adjust headings more ex-
	      tensively:

		     ---
		     documentclass: scrartcl
		     header-includes: |
		       \RedeclareSectionCommand[
			 beforeskip=-10pt plus -2pt minus -1pt,
			 afterskip=1sp plus -1sp minus 1sp,
			 font=\normalfont\itshape]{paragraph}
		       \RedeclareSectionCommand[
			 beforeskip=-10pt plus -2pt minus -1pt,
			 afterskip=1sp plus -1sp minus 1sp,
			 font=\normalfont\scshape,
			 indent=0pt]{subparagraph}
		     ...

       classoption
	      option for document class, e.g. oneside; repeat for multiple op-
	      tions:

		     ---
		     classoption:
		     - twocolumn
		     - landscape
		     ...

       documentclass
	      document class: usually one of the  standard  classes,  article,
	      book,  and  report;  the KOMA-Script equivalents,	scrartcl, scr-
	      book, and	scrreprt, which	default	to smaller margins; or memoir

       geometry
	      option for geometry package, e.g.	margin=1in; repeat for	multi-
	      ple options:

		     ---
		     geometry:
		     - top=30mm
		     - left=20mm
		     - heightrounded
		     ...

       shorthands
	      Enable language-specific shorthands when loading babel.  (By de-
	      fault,  pandoc  includes shorthands=off when loading babel, dis-
	      abling language-specific shorthands.)

       hyperrefoptions
	      option for hyperref package, e.g.	linktoc=all; repeat for	multi-
	      ple options:

		     ---
		     hyperrefoptions:
		     - linktoc=all
		     - pdfwindowui
		     - pdfpagemode=FullScreen
		     ...

       indent if true, pandoc will use document	class settings for indentation
	      (the default LaTeX template otherwise  removes  indentation  and
	      adds space between paragraphs)

       linestretch
	      adjusts line spacing using the setspace package, e.g. 1.25, 1.5

       margin-left, margin-right, margin-top, margin-bottom
	      sets  margins  if	geometry is not	used (otherwise	geometry over-
	      rides these)

       pagestyle
	      control \pagestyle{}: the	default	article	class  supports	 plain
	      (default),  empty	 (no running heads or page numbers), and head-
	      ings (section titles in running heads)

       papersize
	      paper size, e.g. letter, a4

       secnumdepth
	      numbering	depth for sections (with --number-sections  option  or
	      numbersections variable)

       beamerarticle
	      produce  an  article  from Beamer	slides.	 Note: if you set this
	      variable,	you must specify the beamer writer but use the default
	      LaTeX template: for example, pandoc  -Vbeamerarticle  -t	beamer
	      --template default.latex.

       handout
	      produce  a  handout version of Beamer slides (with overlays con-
	      densed into single slides)

       csquotes
	      load csquotes package and	use \enquote or	\enquote*  for	quoted
	      text.

       csquotesoptions
	      options  to  use	for  csquotes package (repeat for multiple op-
	      tions).

       babeloptions
	      options to pass to the babel package (may	be repeated for	multi-
	      ple options).  This defaults to provide=*	if the	main  language
	      isn't  a European	language written with Latin or Cyrillic	script
	      or Vietnamese.  Most users will not need to adjust  the  default
	      setting.

   Fonts
       fontenc
	      allows  font  encoding  to  be specified through fontenc package
	      (with pdflatex); default is T1 (see LaTeX	font encodings guide)

       fontfamily
	      font package for use with	pdflatex: TeX Live includes  many  op-
	      tions,  documented  in the LaTeX Font Catalogue.	The default is
	      Latin Modern.

       fontfamilyoptions
	      options for package used as fontfamily; repeat for multiple  op-
	      tions.  For example, to use the Libertine	font with proportional
	      lowercase	(old-style) figures through the	libertinus package:

		     ---
		     fontfamily: libertinus
		     fontfamilyoptions:
		     - osf
		     - p
		     ...

       fontsize
	      font size	for body text.	The standard classes allow 10pt, 11pt,
	      and  12pt.  To use another size, set documentclass to one	of the
	      KOMA-Script classes, such	as scrartcl or scrbook.

       mainfont, sansfont, monofont, mathfont, CJKmainfont, CJKsansfont, CJK-
       monofont
	      font families for	use with xelatex or lualatex: take the name of
	      any system font, using the fontspec package.   CJKmainfont  uses
	      the xecjk	package	if xelatex is used, or the luatexja package if
	      lualatex is used.

       mainfontoptions,	sansfontoptions, monofontoptions, mathfontoptions,
       CJKoptions, luatexjapresetoptions
	      options to use with mainfont, sansfont, monofont,	mathfont, CJK-
	      mainfont	in xelatex and lualatex.  Allow	for any	choices	avail-
	      able through fontspec; repeat for	multiple options.   For	 exam-
	      ple, to use the TeX Gyre version of Palatino with	lowercase fig-
	      ures:

		     ---
		     mainfont: TeX Gyre	Pagella
		     mainfontoptions:
		     - Numbers=Lowercase
		     - Numbers=Proportional
		     ...

       mainfontfallback, sansfontfallback, monofontfallback
	      fonts  to	 try  if a glyph isn't found in	mainfont, sansfont, or
	      monofont respectively.  These are	lists.	The font name must  be
	      followed	by  a colon and	optionally a set of options, for exam-
	      ple:

		     ---
		     mainfontfallback:
		       - "FreeSans:"
		       - "NotoColorEmoji:mode=harf"
		     ...
		     Font fallbacks currently only work	with lualatex.

       babelfonts
	      a	map of Babel language names (e.g. chinese) to the font	to  be
	      used with	the language:

		     ---
		     babelfonts:
		       chinese-hant: "Noto Serif CJK TC"
		       russian:	"Noto Serif"
		     ...

       microtypeoptions
	      options to pass to the microtype package

   Links
       colorlinks
	      add  color  to  link text; automatically enabled if any of link-
	      color, filecolor,	citecolor, urlcolor, or	toccolor are set

       boxlinks
	      add visible box around links (has	no  effect  if	colorlinks  is
	      set)

       linkcolor, filecolor, citecolor,	urlcolor, toccolor
	      color for	internal links,	external links,	citation links,	linked
	      URLs, and	links in table of contents, respectively: uses options
	      allowed  by  xcolor,  including  the  dvipsnames,	 svgnames, and
	      x11names lists

       links-as-notes
	      causes links to be printed as footnotes

       urlstyle
	      style for	URLs (e.g., tt,	rm, sf,	and, the default, same)

   Front matter
       lof, lot
	      include list of figures, list of tables (can also	be  set	 using
	      --lof/--list-of-figures, --lot/--list-of-tables)

       thanks contents of acknowledgments footnote after document title

       toc    include  table  of  contents  (can also be set using --toc/--ta-
	      ble-of-contents)

       toc-depth
	      level of section to include in table of contents

   BibLaTeX Bibliographies
       These variables function	when using BibLaTeX for	citation rendering.

       biblatexoptions
	      list of options for biblatex

       biblio-style
	      bibliography style, when used with --natbib and --biblatex

       biblio-title
	      bibliography title, when used with --natbib and --biblatex

       bibliography
	      bibliography to use for resolving	references

       natbiboptions
	      list of options for natbib

   Other
       pdf-trailer-id
	      the PDF trailer ID; must be two PDF byte strings if set, conven-
	      tionally with 16 bytes each.  E.g.,  <00112233445566778899aabbc-
	      cddeeff> <00112233445566778899aabbccddeeff>.
	      See the section on reproducible builds.

       pdfstandard
	      PDF  standard(s)	for  the  document, e.g. ua-2, a-4f.  Supports
	      PDF/A, PDF/X, and	PDF/UA variants.  Requires LuaLaTeX and	 LaTeX
	      2023+.  Repeat for multiple standards:

		     ---
		     pdfstandard:
		     - ua-2
		     - a-4f
		     ...

   Variables for ConTeXt
       Pandoc uses these variables when	creating a PDF with ConTeXt.

       fontsize
	      font size	for body text (e.g. 10pt, 12pt)

       headertext, footertext
	      text to be placed	in running header or footer (see ConTeXt Head-
	      ers  and	Footers); repeat up to four times for different	place-
	      ment

       indenting
	      controls indentation  of	paragraphs,  e.g. yes,small,next  (see
	      ConTeXt Indentation); repeat for multiple	options

       interlinespace
	      adjusts  line spacing, e.g. 4ex (using setupinterlinespace); re-
	      peat for multiple	options

       layout options for page margins and text	arrangement (see ConTeXt  Lay-
	      out); repeat for multiple	options

       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,	 bold-
	      slanted, type, cap, small

       lof, lot
	      include list of figures, list of tables

       mainfont, sansfont, monofont, mathfont
	      font  families:  take  the  name of any system font (see ConTeXt
	      Font Switching)

       mainfontfallback, sansfontfallback, monofontfallback
	      list of fonts to try, in order, if a glyph is not	found  in  the
	      main  font.  Use \definefallbackfamily-compatible	font name syn-
	      tax.  Emoji fonts	are unsupported.

       margin-left, margin-right, margin-top, margin-bottom
	      sets margins, if layout is not used (otherwise layout  overrides
	      these)

       pagenumbering
	      page  number  style and location (using setuppagenumbering); re-
	      peat for multiple	options

       papersize
	      paper  size,  e.g. letter,  A4,  landscape  (see	ConTeXt	 Paper
	      Setup); repeat for multiple options

       pdfa   adds  to	the  preamble the setup	necessary to generate PDF/A of
	      the type specified, e.g. 1a:2005,	2a.  If	no type	 is  specified
	      (i.e. the	 value	is  set	 to  True, by e.g.  --metadata=pdfa or
	      pdfa: true in a YAML metadata block), 1b:2005 will  be  used  as
	      default,	for reasons of backwards compatibility.	 Using --vari-
	      able=pdfa	without	specified value	is not supported.  To success-
	      fully generate PDF/A the required	ICC color profiles have	to  be
	      available	 and  the  content and all included files (such	as im-
	      ages) have to be standard-conforming.  The ICC profiles and out-
	      put intent may be	specified using	the  variables	pdfaiccprofile
	      and pdfaintent.  See also	ConTeXt	PDFA for more details.

       pdfaiccprofile
	      when used	in conjunction with pdfa, specifies the	ICC profile to
	      use   in	the  PDF,  e.g.	default.cmyk.	If  left  unspecified,
	      sRGB.icc is used as default.  May	be repeated to include	multi-
	      ple  profiles.   Note  that the profiles have to be available on
	      the system.  They	can be obtained	from ConTeXt ICC Profiles.

       pdfaintent
	      when used	in conjunction with pdfa, specifies the	output	intent
	      for the colors, e.g. ISO coated v2 300\letterpercent\space (ECI)
	      If left unspecified, sRGB	IEC61966-2.1 is	used as	default.

       toc    include  table  of  contents  (can also be set using --toc/--ta-
	      ble-of-contents)

       urlstyle
	      typeface style for links without link text,  e.g.	normal,	 bold,
	      slanted, boldslanted, type, cap, small

       whitespace
	      spacing  between paragraphs, e.g.	none, small (using setupwhite-
	      space)

       includesource
	      include all source documents as file attachments in the PDF file

   Variables for wkhtmltopdf
       Pandoc uses these variables when	creating a PDF with wkhtmltopdf.   The
       --css option also affects the output.

       footer-html, header-html
	      add information to the header and	footer

       margin-left, margin-right, margin-top, margin-bottom
	      set the page margins

       papersize
	      sets the PDF paper size

   Variables for man pages
       adjusting
	      adjusts  text  to	 left  (l), right (r), center (c), or both (b)
	      margins

       footer footer in	man pages

       header header in	man pages

       section
	      section number in	man pages

   Variables for Texinfo
       version
	      version of software (used	in title and title page)

       filename
	      name of info file	to be generated	(defaults to a name  based  on
	      the texi filename)

   Variables for Typst
       template
	      Typst template to	use (relative path only).

       margin A	dictionary with	the fields defined in the Typst	documentation:
	      x, y, top, bottom, left, right.

       papersize
	      Paper size: a4, us-letter, etc.

       mainfont
	      Name of system font to use for the main font.

       fontsize
	      Font size	(e.g., 12pt).

       section-numbering
	      Schema to	use for	numbering sections, e.g. 1.A.1.

       page-numbering
	      Schema  to  use  for  numbering  pages, e.g. 1 or	i, or an empty
	      string to	omit page numbering.

       columns
	      Number of	columns	for body text.

       thanks contents of acknowledgments footnote after document title

       mathfont, codefont
	      Name of system font to use for math and code, respectively.

       linestretch
	      adjusts line spacing, e.g. 1.25, 1.5

       linkcolor, filecolor, citecolor
	      color for	external links,	internal links,	 and  citation	links,
	      respectively: expects a hexadecimal color	code

   Variables for ms
       fontfamily
	      A	 (Avant	Garde),	B (Bookman), C (Helvetica), HN (Helvetica Nar-
	      row), P (Palatino), or T (Times New Roman).  This	 setting  does
	      not  affect  source  code, which is always displayed using mono-
	      space Courier.  These built-in fonts are limited in their	cover-
	      age of characters.  Additional fonts may be installed using  the
	      script  install-font.sh  provided	 by  Peter Schaffter and docu-
	      mented in	detail on his web site.

       indent paragraph	indent (e.g. 2m)

       lineheight
	      line height (e.g.	12p)

       pointsize
	      point size (e.g. 10p)

   Variables set automatically
       Pandoc sets these variables automatically in  response  to  options  or
       document	contents; users	can also modify	them.  These vary depending on
       the output format, and include the following:

       body   body of document

       date-meta
	      the  date	variable converted to ISO 8601 YYYY-MM-DD, included in
	      all HTML based formats (dzslides,	epub, html, html4, html5,  re-
	      vealjs,  s5,  slideous, slidy).  The recognized formats for date
	      are: mm/dd/yyyy, mm/dd/yy, yyyy-mm-dd (ISO  8601),  dd  MM  yyyy
	      (e.g. either  02	Apr  2018  or  02  April  2018),  MM  dd, yyyy
	      (e.g. Apr.       02,	 2018	    or	      April	   02,
	      2018),yyyy[mm[dd]](e.g.20180402, 201804 or 2018).

       header-includes
	      contents	specified by -H/--include-in-header (may have multiple
	      values)

       include-before
	      contents specified by -B/--include-before-body (may have	multi-
	      ple values)

       include-after
	      contents specified by -A/--include-after-body (may have multiple
	      values)

       meta-json
	      JSON  representation  of	all of the document's metadata.	 Field
	      values are transformed to	the selected output format.

       numbersections
	      non-null value if	-N/--number-sections was specified

       sourcefile, outputfile
	      source and destination filenames,	as given on the	command	 line.
	      sourcefile  can  also  be	 a  list  if input comes from multiple
	      files, or	empty if input is from stdin.  You can use the follow-
	      ing snippet in your template to distinguish them:

		     $if(sourcefile)$
		     $for(sourcefile)$
		     $sourcefile$
		     $endfor$
		     $else$
		     (stdin)
		     $endif$
		     Similarly,	outputfile can be - if output goes to the ter-
		     minal.   If  you  need  absolute  paths,  use  e.g. $cur-
		     dir$/$sourcefile$.

       pdf-engine
	      name  of	PDF  engine if provided	using --pdf-engine, or the de-
	      fault engine for the format if PDF output	is requested.

       curdir working directory	from which pandoc is run.

       pandoc-version
	      pandoc version.

       toc    non-null value if	--toc/--table-of-contents was specified

       toc-title
	      title of table of	contents (works	 only  with  EPUB,  HTML,  re-
	      vealjs,  opendocument,  odt,  docx,  pptx, beamer, LaTeX).  Note
	      that in docx and pptx a custom toc-title will be picked up  from
	      metadata,	but cannot be set as a variable.

EXTENSIONS
       The  behavior of	some of	the readers and	writers	can be adjusted	by en-
       abling or disabling various extensions.

       An extension can	be enabled by adding +EXTENSION	to the format name and
       disabled	  by   adding	-EXTENSION.    For   example,	--from	 mark-
       down_strict+footnotes  is strict	Markdown with footnotes	enabled, while
       --from  markdown-footnotes-pipe_tables  is  pandoc's  Markdown  without
       footnotes or pipe tables.

       The  Markdown reader and	writer make by far the most use	of extensions.
       Extensions only used by them are	therefore covered in the section  Pan-
       doc's  Markdown	below  (see Markdown variants for commonmark and gfm).
       In the following, extensions that also work for other formats are  cov-
       ered.

       Note that Markdown extensions added to the ipynb	format affect Markdown
       cells  in  Jupyter  notebooks  (as do command-line options like --mark-
       down-headings).

   Typography
   Extension: smart
       Interpret straight quotes as curly quotes,  ---	as  em-dashes,	--  as
       en-dashes,  and ... as ellipses.	 Nonbreaking spaces are	inserted after
       certain abbreviations, such as "Mr."

       This extension can be enabled/disabled for the following	formats:

       input formats
	      markdown,	commonmark, latex, mediawiki, org, rst,	twiki, html

       output formats
	      markdown,	latex, context,	org, rst

       enabled by default in
	      markdown,	latex, context (both input and output)

       Note: If	you are	writing	Markdown, then the smart extension has the re-
       verse effect: what would	have been curly	quotes comes out straight.

       In LaTeX, smart means to	use the	standard TeX ligatures	for  quotation
       marks  (``  and	''  for	 double	quotes,	` and '	for single quotes) and
       dashes (-- for en-dash and --- for em-dash).   If  smart	 is  disabled,
       then in reading LaTeX pandoc will parse these characters	literally.  In
       writing	LaTeX,	enabling  smart	tells pandoc to	use the	ligatures when
       possible; if smart is disabled pandoc will use unicode  quotation  mark
       and dash	characters.

   Headings and	sections
   Extension: auto_identifiers
       A  heading without an explicitly	specified identifier will be automati-
       cally assigned a	unique identifier based	on the heading text.

       This extension can be enabled/disabled for the following	formats:

       input formats
	      markdown,	latex, rst, mediawiki, textile

       output formats
	      markdown,	muse

       enabled by default in
	      markdown,	muse

       The default algorithm used to derive the	identifier  from  the  heading
       text is:

        Remove	all formatting,	links, etc.

        Remove	all footnotes.

        Remove	 all non-alphanumeric characters, 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,

  Heading			Identifier
  -----------------------------	-----------------------------
  Heading identifiers in HTML	heading-identifiers-in-html
  Matre	d'htel		      matre-dhtel
  *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 identi-
       fier from the heading text.  The	exception  is  when  several  headings
       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  ap-
       pended; the third with -2; and so on.

       (However,  a different algorithm	is used	if gfm_auto_identifiers	is en-
       abled; see below.)

       These identifiers are used to provide link targets in the table of con-
       tents generated by the  --toc|--table-of-contents  option.   They  also
       make  it	 easy  to  provide links from one section of a document	to an-
       other.  A link to this section, for example, might look like this:

	      See the section on
	      [heading identifiers](#heading-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 section (or	a div, if html4	was specified),	and the	 iden-
       tifier  will  be	 attached  to  the  enclosing <section>	(or <div>) tag
       rather than the heading itself.	This allows entire sections to be  ma-
       nipulated using JavaScript or treated differently in CSS.

   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  let-
       ters are	omitted.

   Extension: gfm_auto_identifiers
       Changes	the  algorithm used by auto_identifiers	to conform to GitHub's
       method.	Spaces are converted to	dashes (-),  uppercase	characters  to
       lowercase characters, and punctuation characters	other than - and _ are
       removed.	 Emojis	are replaced by	their names.

   Math	Input
       The  extensions	tex_math_dollars,  tex_math_gfm, tex_math_single_back-
       slash, and tex_math_double_backslash are	described in the section about
       Pandoc's	Markdown.

       However,	they can also be used with HTML	 input.	  This	is  handy  for
       reading web pages formatted using MathJax, for example.

   Raw HTML/TeX
       The  following extensions are described in more detail in their respec-
       tive sections of	Pandoc's Markdown:

        raw_html allows HTML elements which are not representable in pandoc's
	 AST to	be parsed as raw HTML.	By default, this is disabled for  HTML
	 input.

        raw_tex  allows raw LaTeX, TeX, and ConTeXt to	be included in a docu-
	 ment.	This extension can be enabled/disabled for the following  for-
	 mats (in addition to markdown):

	 input formats
		latex,	textile,  html	(environments, \ref, and \eqref	only),
		ipynb

	 output	formats
		textile, commonmark

	 Note: as applied to ipynb, raw_html and raw_tex affect	not  only  raw
	 TeX  in  Markdown  cells, but data with mime type text/html in	output
	 cells.	 Since the ipynb reader	attempts to preserve the richest  pos-
	 sible	outputs	 when several options are given, you will get best re-
	 sults if you disable raw_html and raw_tex when	converting to  formats
	 like docx which don't allow raw html or tex.

        native_divs  causes  HTML  div	elements to be parsed as native	pandoc
	 Div blocks.  If you want them to  be  parsed  as  raw	HTML,  use  -f
	 html-native_divs+raw_html.

        native_spans  causes HTML span	elements to be parsed as native	pandoc
	 Span inlines.	If you want them to be parsed  as  raw	HTML,  use  -f
	 html-native_spans+raw_html.   If  you want to drop all	divs and spans
	 when converting HTML to Markdown, you	can  use  pandoc  -f  html-na-
	 tive_divs-native_spans	-t markdown.

   Literate Haskell support
   Extension: literate_haskell
       Treat the document as literate Haskell source.

       This extension can be enabled/disabled for the following	formats:

       input formats
	      markdown,	rst, latex

       output formats
	      markdown,	rst, latex, html

       If  you append +lhs (or +literate_haskell) to one of the	formats	above,
       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 head-
	 ings 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  in-
	 dented	 one  space,  so they will not be treated as Haskell code.  In
	 addition, headings 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 in-
	 side 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.

       Note  that GHC expects the bird tracks in the first column, so indented
       literate	code blocks (e.g. inside an itemized environment) will not  be
       picked up by the	Haskell	compiler.

   Other extensions
   Extension: empty_paragraphs
       Allows empty paragraphs.	 By default empty paragraphs are omitted.

       This extension can be enabled/disabled for the following	formats:

       input formats
	      docx, html

       output formats
	      docx, odt, opendocument, html, latex

   Extension: native_numbering
       Enables	native numbering of figures and	tables.	 Enumeration starts at
       1.

       This extension can be enabled/disabled for the following	formats:

       output formats
	      odt, opendocument, docx

   Extension: xrefs_name
       Links to	headings, figures and tables inside the	document  are  substi-
       tuted  with  cross-references  that will	use the	name or	caption	of the
       referenced item.	 The original link text	is replaced once the generated
       document	is refreshed.  This extension can be combined with  xrefs_num-
       ber in which case numbers will appear before the	name.

       Text  in	 cross-references  is only made	consistent with	the referenced
       item once the document has been refreshed.

       This extension can be enabled/disabled for the following	formats:

       output formats
	      odt, opendocument

   Extension: xrefs_number
       Links to	headings, figures and tables inside the	document  are  substi-
       tuted  with cross-references that will use the number of	the referenced
       item.  The original link	text is	discarded.  This extension can be com-
       bined with xrefs_name in	which case the name or	caption	 numbers  will
       appear after the	number.

       For  the	 xrefs_number  to be useful heading numbers must be enabled in
       the generated document, also table and figure captions must be  enabled
       using for example the native_numbering extension.

       Numbers in cross-references are only visible in the final document once
       it has been refreshed.

       This extension can be enabled/disabled for the following	formats:

       output formats
	      odt, opendocument

   Extension: styles
       When  converting	 from  docx, add custom-styles attributes for all docx
       styles, regardless of whether pandoc understands	the meanings of	 these
       styles.	 Because  attributes cannot be added directly to paragraphs or
       text in the pandoc AST, paragraph styles	will cause Divs	to be  created
       and character styles will cause Spans to	be created to hold the attrib-
       utes.   (Table  styles  will  be	added to the Table elements directly.)
       This extension can be used with docx custom styles.

       input formats
	      docx

   Extension: amuse
       In the muse input format, this enables Text::Amuse extensions to	 Emacs
       Muse markup.

   Extension: raw_markdown
       In the ipynb input format, this causes Markdown cells to	be included as
       raw  Markdown blocks (allowing lossless round-tripping) rather than be-
       ing parsed.  Use	this only when you are	targeting  ipynb  or  a	 Mark-
       down-based output format.

   Extension: citations	(typst)
       When the	citations extension is enabled in typst	(as it is by default),
       typst  citations	 will be parsed	as native pandoc citations, and	native
       pandoc citations	will be	rendered as typst citations.

   Extension: citations	(org)
       When the	citations extension is enabled in org,	org-cite  and  org-ref
       style citations will be parsed as native	pandoc citations, and org-cite
       citations will be used to render	native pandoc citations.

   Extension: citations	(docx)
       When  citations	is  enabled  in	 docx, citations inserted by Zotero or
       Mendeley	or EndNote plugins will	be parsed as native pandoc  citations.
       (Otherwise,  the	 formatted  citations  generated  by the bibliographic
       software	will be	parsed as regular text.)

   Extension: fancy_lists (org)
       Some aspects of Pandoc's	Markdown fancy lists are also accepted in  org
       input,  mimicking  the option org-list-allow-alphabetical in Emacs.  As
       in Org Mode, enabling this extension allows lowercase and uppercase al-
       phabetical markers for ordered lists to be parsed in addition to	arabic
       ones.  Note that	for Org, this does not include roman numerals or the #
       placeholder that	are enabled by the extension in	Pandoc's Markdown.

   Extension: element_citations
       In the jats output formats, this	causes reference items to be  replaced
       with <element-citation> elements.  These	elements are not influenced by
       CSL styles, but all information on the item is included in tags.

   Extension: ntb
       In  the	context	 output	 format	this enables the use of	Natural	Tables
       (TABLE) instead of the default Extreme Tables (xtables).	  Natural  ta-
       bles allow more fine-grained global customization but come at a perfor-
       mance penalty compared to extreme tables.

   Extension: smart_quotes (org)
       Interpret straight quotes as curly quotes during	parsing.  When writing
       Org, then the smart_quotes extension has	the reverse effect: what would
       have been curly quotes comes out	straight.

       This extension is implied if smart is enabled.

   Extension: special_strings (org)
       Interpret  --- as em-dashes, -- as en-dashes, \-	as shy hyphen, and ...
       as ellipses.

       This extension is implied if smart is enabled.

   Extension: tagging
       Enabling	this extension with context output will	produce	 markup	 suit-
       able for	the production of tagged PDFs.	This includes additional mark-
       ers for paragraphs and alternative markup for emphasized	text.  The em-
       phasis-command template variable	is set if the extension	is enabled.

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 original Markdown.  Except where noted, these differ-
       ences can be suppressed by using	the markdown_strict format instead  of
       markdown.   Extensions can be enabled or	disabled to specify the	behav-
       ior more	granularly.  They are described	in the	following.   See  also
       Extensions above, for extensions	that work also on other	formats.

   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

       This principle has guided pandoc's decisions in finding syntax for  ta-
       bles, 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	 para-
       graphs  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.

   Headings
       There are two kinds of headings:	Setext and ATX.

   Setext-style	headings
       A setext-style heading is a line	of text	"underlined" with a row	 of  =
       signs (for a level-one heading) or - signs (for a level-two heading):

	      A	level-one heading
	      ===================

	      A	level-two heading
	      -------------------

       The  heading  text can contain inline formatting, such as emphasis (see
       Inline formatting, below).

   ATX-style headings
       An ATX-style heading 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	heading	level:

	      ## A level-two heading

	      ### A level-three	heading	###

       As with setext-style headings, the heading text can contain formatting:

	      #	A level-one heading with a [link](/url)	and *emphasis*

   Extension: blank_before_header
       Original	Markdown syntax	does not require a blank line before  a	 head-
       ing.   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.

   Extension: space_in_atx_header
       Many Markdown implementations do	not require a space between the	 open-
       ing  #s	of  an	ATX  heading and the heading text, so that #5 bolt and
       #hashtag	count as headings.  With this extension, pandoc	 does  require
       the space.

   Heading identifiers
       See also	the auto_identifiers extension above.

   Extension: header_attributes
       Headings	can be assigned	attributes using this syntax at	the end	of the
       line containing the heading text:

	      {#identifier .class .class key=value key=value}

       Thus,  for  example,  the  following  headings will all be assigned the
       identifier foo:

	      #	My heading {#foo}

	      ## My heading ##	  {#foo}

	      My other heading	 {#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 informa-
       tion.  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,  Jira
       markup, and AsciiDoc writers.

       Headings	with the class unnumbered will not be numbered,	even if	--num-
       ber-sections is specified.  A single hyphen (-) in an attribute context
       is  equivalent to .unnumbered, and preferable in	non-English documents.
       So,

	      #	My heading {-}

       is just the same	as

	      #	My heading {.unnumbered}

       If the unlisted class is	present	in addition to unnumbered, the heading
       will not	be included in a table of contents.  (Currently	 this  feature
       is only implemented for certain formats:	those based on LaTeX and HTML,
       PowerPoint, and RTF.)

   Extension: implicit_header_references
       Pandoc  behaves	as if reference	links have been	defined	for each head-
       ing.  So, to link to a heading

	      #	Heading	identifiers in HTML

       you can simply write

	      [Heading identifiers in HTML]

       or

	      [Heading identifiers in HTML][]

       or

	      [the section on heading identifiers][heading identifiers in
	      HTML]

       instead of giving the identifier	explicitly:

	      [Heading identifiers in HTML](#heading-identifiers-in-html)

       If there	are multiple headings with identical text,  the	 corresponding
       reference will link to the first	one only, and you will need to use ex-
       plicit 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
       heading 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	headings), with	each line preceded by a	> character and	an op-
       tional  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 indenta-
       tion 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
       Original	 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.
	      >> Not nested, since `blank_before_blockquote` is	enabled	by default

   Verbatim (code) blocks
   Indented code blocks
       A block of text indented	four spaces (or	one tab) is treated as	verba-
       tim  text:  that	 is, special characters	do not trigger special format-
       ting, 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  indenta-
       tion 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 use	this information are HTML, LaTeX, Docx,	Ms, and	Power-
       Point.	If  highlighting  is supported for your	output format and lan-
       guage, then the code block above	will appear highlighted, with numbered
       lines.  (To see which languages are supported, type pandoc --list-high-
       light-languages.)  Otherwise, the code block above will appear as  fol-
       lows:

	      <pre id="mycode" class="haskell numberLines" startFrom="100">
		<code>
		...
		</code>
	      </pre>

       The  numberLines	 (or  number-lines)  class will	cause the lines	of the
       code block to be	numbered, starting with	1 or the value of  the	start-
       From attribute.	The lineAnchors	(or line-anchors) class	will cause the
       lines to	be clickable anchors in	HTML output.

       A  shortcut  form  can  also be used for	specifying the language	of the
       code block:

	      ```haskell
	      qsort [] = []
	      ```

       This is equivalent to:

	      ``` {.haskell}
	      qsort [] = []
	      ```

       This shortcut form may be combined with attributes:

	      ```haskell {.numberLines}
	      qsort [] = []
	      ```

       Which is	equivalent to:

	      ``` {.haskell .numberLines}
	      qsort [] = []
	      ```

       If the fenced_code_attributes extension is disabled, but	input contains
       class attribute(s) for the code block, the first	class  attribute  will
       be printed after	the opening fence as a bare word.

       To prevent all highlighting, use	the --syntax-highlighting=none option.
       To  set	the  highlighting  style or method, use	--syntax-highlighting.
       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  for-
       matted 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

       Inline  formatting (such	as emphasis) is	allowed	in the content (though
       it can't	cross line boundaries).	 Block-level formatting	(such as block
       quotes or lists)	is not recognized.

       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 in-
       dented 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.

   Block content in list items
       A list item may contain multiple	paragraphs and other block-level  con-
       tent.   However,	subsequent paragraphs must be preceded by a blank line
       and indented to line up with the	first non-space	content	after the list
       marker.

		* First	paragraph.

		  Continued.

		* Second paragraph. With a code	block, which must be indented
		  eight	spaces:

		      {	code }

       Exception: if the list marker is	followed by an	indented  code	block,
       which  must begin 5 spaces after	the list marker, then subsequent para-
       graphs must begin two columns after the	last  character	 of  the  list
       marker:

	      *	    code

		continuation paragraph

       List  items  may	include	other lists.  In this case the preceding blank
       line is optional.  The nested list must be indented to line up with the
       first non-space character after the list	marker of the containing  list
       item.

	      *	fruits
		+ apples
		  - macintosh
		  - red	delicious
		+ pears
		+ peaches
	      *	vegetables
		+ broccoli
		+ chard

       As  noted  above, Markdown allows you to	write list items "lazily," in-
       stead 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.

   Ordered lists
       Ordered lists work just like bulleted lists, except that	the items  be-
       gin with	enumerators rather than	bullets.

       In original Markdown, enumerators are decimal numbers followed by a pe-
       riod  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 original 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  fol-
       lowed  by a single right-parenthesis 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.

       The fancy_lists extension also allows `#' to be used as an ordered list
       marker in place of a numeral:

	      #. one
	      #. two

       Note: the `#' ordered list marker doesn't work with commonmark.

   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

   Extension: task_lists
       Pandoc  supports	 task lists, using the syntax of GitHub-Flavored Mark-
       down.

	      -	[ ] an unchecked task list item
	      -	[x] checked item

   Definition lists
   Extension: definition_lists
       Pandoc supports definition lists, using the syntax of PHP Markdown  Ex-
       tra with	some extensions.

	      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 defini-
       tion 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  (not
       including  the first line) 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 defini-
       tion:

	      Term 1
		~ Definition 1

	      Term 2
		~ Definition 2a
		~ Definition 2b

       Note that space between items in	a definition list is required.

   Numbered example lists
   Extension: example_lists
       The special list	marker @ can be	used for sequentially  numbered	 exam-
       ples.   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 docu-
       ment:

	      (@good)  This is a good example.

	      As (@good) illustrates, ...

       The label can be	any string of alphanumeric characters, underscores, or
       hyphens.

       Continuation paragraphs in example lists	must always be	indented  four
       spaces,	regardless of the length of the	list marker.  That is, example
       lists always behave as if the four_space_rule extension is  set.	  This
       is because example labels tend to be long, and indenting	content	to the
       first non-space character after the label would be awkward.

       You can repeat an earlier numbered example by re-using its label:

	      (@foo) Sample sentence.

	      Intervening text...

	      This theory can explain the case we saw earlier (repeated):

	      (@foo) Sample sentence.

       This  only works	reliably, though, if the repeated item is in a list by
       itself, because each numbered example list will	be  numbered  continu-
       ously from its starting number.

   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 (option-
       ally separated by spaces) produces a horizontal rule:

	      *	 *  *  *

	      ---------------

       We strongly recommend that horizontal rules be separated	from surround-
       ing  text  by  blank  lines.  If	a horizontal rule is not followed by a
       blank line, pandoc may try to interpret the lines that follow as	a YAML
       metadata	block or a table.

   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 il-
       lustrated  in  the examples below).  A caption is a paragraph beginning
       with the	string Table: (or 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 header 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:

        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).

       The table must end with a blank line, or	a line of dashes followed by a
       blank line.

       The column header row 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 the	header row is 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,  respec-
       tively.

   Extension: multiline_tables
       Multiline  tables allow header 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 header row	is 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.

       The header 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 a header.

       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.).

       Cells can span multiple columns or rows:

	      +---------------------+----------+
	      |	Property	    | Earth    |
	      +=============+=======+==========+
	      |		    | min   | -89.2 C |
	      |	Temperature +-------+----------+
	      |	1961-1990   | mean  | 14 C    |
	      |		    +-------+----------+
	      |		    | max   | 56.7 C  |
	      +-------------+-------+----------+

       A table header may contain more than one	row:

	      +---------------------+-----------------------+
	      |	Location	    | Temperature 1961-1990 |
	      |			    | in degree	Celsius	    |
	      |			    +-------+-------+-------+
	      |			    | min   | mean  | max   |
	      +=====================+=======+=======+=======+
	      |	Antarctica	    | -89.2 | N/A   | 19.8  |
	      +---------------------+-------+-------+-------+
	      |	Earth		    | -89.2 | 14    | 56.7  |
	      +---------------------+-------+-------+-------+

       Alignments  can	be specified as	with pipe tables, by putting colons at
       the boundaries of the separator line after the header:

	      +---------------+---------------+--------------------+
	      |	Right	      |	Left	      |	Centered	   |
	      +==============:+:==============+:==================:+
	      |	Bananas	      |	$1.34	      |	built-in wrapper   |
	      +---------------+---------------+--------------------+

       For headerless tables, the colons go on the top line instead:

	      +--------------:+:--------------+:------------------:+
	      |	Right	      |	Left	      |	Centered	   |
	      +---------------+---------------+--------------------+

       A table foot can	be defined by enclosing	it with	separator  lines  that
       use = instead of	-:

	       +---------------+---------------+
	       | Fruit	       | Price	       |
	       +===============+===============+
	       | Bananas       | $1.34	       |
	       +---------------+---------------+
	       | Oranges       | $2.10	       |
	       +===============+===============+
	       | Sum	       | $3.44	       |
	       +===============+===============+

       The foot	must always be placed at the very bottom of the	table.

       Grid  tables  can  be  created  easily using Emacs' table-mode (M-x ta-
       ble-insert).

   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	verti-
       cally aligned, as they are in the above example.	 So, this  is  a  per-
       fectly 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 any line of the Markdown
       source is longer	than the column	width (see --columns), then the	 table
       will  take up the full text width and the cell contents will wrap, with
       the relative cell widths	determined by the number of dashes in the line
       separating the table header from	the table body.	  (For	example	 ---|-
       would  make  the	first column 3/4 and the second	column 1/4 of the full
       text width.)  On	the other hand,	if no  lines  are  wider  than	column
       width,  then  cell  contents will not be	wrapped, and the cells will be
       sized to	their contents.

       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.

   Extension: table_attributes
       Attributes may be attached to tables by including them at  the  end  of
       the caption.  (For the syntax, see header_attributes.)

		: Here's the caption. {#ident .class key="value"}

   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	date 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	(ital-
       ics, 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,  ti-
       tles  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	speci-
       fied with -T and	no title block appears in the document,	the title pre-
       fix 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.	The initial line --- must not be  fol-
       lowed by	a blank	line.  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 JSON may	be used	as well,  because  JSON	 is  a
       subset of YAML.)

       Note that, because of the way pandoc concatenates input files when sev-
       eral  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
       ....  Alternatively, you	can use	 the  --metadata-file  option.	 Using
       that  approach  however,	 you cannot reference content (like footnotes)
       from the	main Markdown input document.

       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.)	 Field
       names  must not be interpretable	as YAML	numbers	or boolean values (so,
       for example, yes, True, and 15 cannot be	used as	field names).

       A document may contain  multiple	 metadata  blocks.   If	 two  metadata
       blocks  attempt	to set the same	field, the value from the second block
       will be taken.

       Each metadata block is handled internally as an independent YAML	 docu-
       ment.   This  means,  for  example,  that any YAML anchors defined in a
       block cannot be referenced in another block.

       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 be-
       ginning of the document.

       Note that YAML escaping rules must be followed.	Thus, for example,  if
       a title contains	a colon, it must be quoted, and	if it contains a back-
       slash  escape, then it must be ensured that it is not treated as	a YAML
       escape sequence.	 The pipe character (|)	can be used to	begin  an  in-
       dented  block  that will	be interpreted literally, without need for es-
       caping.	This form is necessary when the	field contains blank lines  or
       block-level formatting:

	      ---
	      title:  'This is the title: it contains a	colon'
	      author:
	      -	Author One
	      -	Author Two
	      keywords:	[nothing, nothingness]
	      abstract:	|
		This is	the abstract.

		It consists of two paragraphs.
	      ...

       The  literal  block  after  the | must be indented relative to the line
       containing the |.  If it	is not,	the YAML will be  invalid  and	pandoc
       will  not  interpret  it	 as  metadata.	For an overview	of the complex
       rules governing YAML, see the Wikipedia entry on	YAML syntax.

       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>

       Variables can contain arbitrary YAML structures,	but the	template  must
       match this structure.  The author variable in the default templates ex-
       pects  a	simple list or string, but can be changed to support more com-
       plicated	structures.  The following combination,	for example, would add
       an affiliation to the author if one is given:

	      ---
	      title: The document title
	      author:
	      -	name: Author One
		affiliation: University	of Somewhere
	      -	name: Author Two
		affiliation: University	of Nowhere
	      ...

       To use the structured authors in	the example above, you	would  need  a
       custom template:

	      $for(author)$
	      $if(author.name)$
	      $author.name$$if(author.affiliation)$ ($author.affiliation$)$endif$
	      $else$
	      $author$
	      $endif$
	      $endfor$

       Raw  content to include in the document's header	may be specified using
       header-includes;	however, it is important to mark up  this  content  as
       raw code	for a particular output	format,	using the raw_attribute	exten-
       sion, or	it will	be interpreted as Markdown.  For example:

	      header-includes:
	      -	|
		```{=latex}
		\let\oldsection\section
		\renewcommand{\section}[1]{\clearpage\oldsection{#1}}
		```

       Note:  the  yaml_metadata_block extension works with commonmark as well
       as markdown (and	it is enabled by default  in  gfm  and	commonmark_x).
       However,	in these formats the following restrictions apply:

        The  YAML  metadata block must	occur at the beginning of the document
	 (and there can	be only	one).  If multiple files are  given  as	 argu-
	 ments to pandoc, only the first can be	a YAML metadata	block.

        The  leaf  nodes  of  the YAML	structure are parsed in	isolation from
	 each other and	from the rest of the document.	So, for	 example,  you
	 can't	use  a reference link in these contexts	if the link definition
	 is somewhere else in the document.

   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 original	Markdown's rule, which
       allows only the following characters to be backslash-escaped:

	      \`*_{}[]()>#+-.!

       (However, if the	markdown_strict	format is used,	the original  Markdown
       rule will be used.)

       A  backslash-escaped  space  is	parsed as a nonbreaking	space.	In TeX
       output, it will appear as ~.  In	HTML and XML output, it	will appear as
       a literal unicode nonbreaking space character (note that	it  will  thus
       actually	 look  "invisible" in the generated HTML source; you can still
       use the --ascii command-line option to make it appear  as  an  explicit
       entity).

       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.

   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 strike out 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.

       The text	between	^...^ or ~...~ may not contain spaces or newlines.  If
       the  superscripted  or  subscripted  text contains spaces, these	spaces
       must be escaped with backslashes.  (This	is to prevent  accidental  su-
       perscripting  and subscripting through the ordinary use of ~ and	^, and
       also bad	interactions with footnotes.)  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 back-
       ticks will be ignored.)

       The general rule	is that	a verbatim span	starts with a string  of  con-
       secutive	 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}

   Underline
       To underline text, use the underline class:

	      [Underline]{.underline}

       Or, without the bracketed_spans extension (but with native_spans):

	      <span class="underline">Underline</span>

       This will work in all output formats that support underline.

   Small caps
       To write	small caps, use	the smallcaps class:

	      [Small caps]{.smallcaps}

       Or, without the bracketed_spans extension:

	      <span class="smallcaps">Small caps</span>

       For compatibility with other Markdown flavors, CSS is also supported:

	      <span style="font-variant:small-caps;">Small caps</span>

       This will work in all output formats that support small caps.

   Highlighting
       To highlight text, use the mark class:

	      [Mark]{.mark}

       Or, without the bracketed_spans extension (but with native_spans):

	      <span class="mark">Mark</span>

       This will work in all output formats that support highlighting.

   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  en-
       close  text  in	literal	 $  characters,	backslash-escape them and they
       won't be	treated	as math	delimiters.

       For display math, use $$	delimiters.  (In this case, the	delimiters may
       be separated from the formula by	whitespace.  However, there can	be  no
       blank lines between the opening and closing $$ delimiters.)

       TeX math	will be	printed	in all output formats.	How it is rendered de-
       pends on	the output format:

       LaTeX  It  will appear verbatim surrounded by \(...\) (for inline math)
	      or \[...\] (for display math).

       Markdown, Emacs Org mode, ConTeXt, ZimWiki
	      It will appear verbatim surrounded by $...$ (for inline math) or
	      $$...$$ (for display math).

       XWiki  It will appear verbatim surrounded by {{formula}}..{{/formula}}.

       reStructuredText
	      It will be rendered using	an interpreted text role :math:.

       AsciiDoc
	      For AsciiDoc output math will appear verbatim surrounded by  la-
	      texmath:[...].   For asciidoc_legacy the bracketed material will
	      also include inline or display math delimiters.

       Texinfo
	      It will be rendered inside a @math command.

       roff man, Jira markup
	      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
	      It will be rendered, if possible,	using Unicode characters,  and
	      will otherwise appear verbatim.

       ODT    It will be rendered, if possible,	using MathML.

       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 and	PowerPoint
	      It will be rendered using	OMML math markup.

       FictionBook2
	      If the --webtex option is	used, formulas are rendered as	images
	      using  CodeCogs  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.	 Therefore see Math rendering in HTML above.

   Raw HTML
   Extension: raw_html
       Markdown	allows you to insert raw HTML (or DocBook) anywhere in a docu-
       ment (except verbatim contexts, where <,	>, and & are interpreted  lit-
       erally).	  (Technically	this is	not an extension, since	standard Mark-
       down 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, CommonMark, Emacs Org mode, and Textile  out-
       put, and	suppressed in other formats.

       For  a  more explicit way of including raw HTML in a Markdown document,
       see the raw_attribute extension.

       In the CommonMark format, if raw_html is	 enabled,  superscripts,  sub-
       scripts,	 strikeouts  and  small	 capitals will be represented as HTML.
       Otherwise, plain-text fallbacks	will  be  used.	  Note	that  even  if
       raw_html	 is disabled, tables will be rendered with HTML	syntax if they
       cannot use pipe syntax.

   Extension: markdown_in_html_blocks
       Original	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	 exam-
       ple), * 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 Mark-
       down.  Thus, for	example, pandoc	will turn

	      <table>
	      <tr>
	      <td>*one*</td>
	      <td>[a link](https://google.com)</td>
	      </tr>
	      </table>

       into

	      <table>
	      <tr>
	      <td><em>one</em></td>
	      <td><a href="https://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>,  <style>,
       <pre>, and <textarea> tags is not interpreted as	Markdown.

       This  departure	from  original	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.

   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.

       For a more explicit and flexible	way of including raw TeX in a Markdown
       document, see the raw_attribute extension.

       Inline  LaTeX  is ignored in output formats other than Markdown,	LaTeX,
       Emacs Org mode, and ConTeXt.

   Generic raw attribute
   Extension: raw_attribute
       Inline spans and	fenced code blocks with	a special  kind	 of  attribute
       will be parsed as raw content with the designated format.  For example,
       the following produces a	raw roff ms block:

	      ```{=ms}
	      .MYMACRO
	      blah blah
	      ```

       And the following produces a raw	html inline element:

	      This is `<a>html</a>`{=html}

       This can	be useful to insert raw	xml into docx documents, e.g.  a page-
       break:

	      ```{=openxml}
	      <w:p>
		<w:r>
		  <w:br	w:type="page"/>
		</w:r>
	      </w:p>
	      ```

       The  format  name  should  match	 the  target format name (see -t/--to,
       above, for a list, or use pandoc	--list-output-formats).	  Use  openxml
       for  docx  output, opendocument for odt output, html5 for epub3 output,
       html4 for epub2 output, and latex, beamer, ms, or html5 for pdf	output
       (depending on what you use for --pdf-engine).

       This  extension	presupposes  that  the relevant	kind of	inline code or
       fenced code block is enabled.  Thus, for	example,  to  use  a  raw  at-
       tribute	with  a	 backtick code block, backtick_code_blocks must	be en-
       abled.

       The raw attribute cannot	be combined with regular attributes.

   LaTeX macros
   Extension: latex_macros
       When this extension is enabled, pandoc will parse LaTeX	macro  defini-
       tions  and  apply the resulting macros to all LaTeX math	and raw	LaTeX.
       So, for example,	the following will work	in  all	 output	 formats,  not
       just LaTeX:

	      \newcommand{\tuple}[1]{\langle #1	\rangle}

	      $\tuple{a, b, c}$

       Note  that  LaTeX macros	will not be applied if they occur inside a raw
       span or block marked with the raw_attribute extension.

       When latex_macros is disabled, the raw LaTeX and	 math  will  not  have
       macros applied.	This is	usually	a better approach when you are target-
       ing LaTeX or PDF.

       Macro  definitions in LaTeX will	be passed through as raw LaTeX only if
       latex_macros is not enabled.  Macro definitions in Markdown source  (or
       other  formats  allowing	 raw_tex) will be passed through regardless of
       whether latex_macros is enabled.

   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  be-
       come a link:

	      <https://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](https://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 cannot be space between the	two unless the
       spaced_reference_links extension	is enabled.)  The link definition con-
       sists 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 cita-
       tion (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]: https://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]: https://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  restric-
       tion.  So the following is fine in pandoc, though not in	most other im-
       plementations:

	      >	My block [quote].
	      >
	      >	[quote]: /foo

   Extension: shortcut_reference_links
       In  a shortcut reference	link, the second pair of brackets may be omit-
       ted 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 Heading 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	with nonempty alt text,	occurring by itself  in	 a  paragraph,
       will  be	 rendered as a figure with a caption.  The image's description
       will be used as the caption.

	      ![This is	the caption.](image.png)

       How this	is rendered depends on the output format.  Some	output formats
       (e.g. RTF) do not yet support figures.  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  non-
       breaking	space after the	image:

	      ![This image won't be a figure](image.png)\

       Note  that  in reveal.js	slide shows, an	image in a paragraph by	itself
       that has	the r-stretch class will fill the screen, and the caption  and
       figure tags will	be omitted.

       To  specify  an	alt text for the image that is different from the cap-
       tion, you can use an explicit attribute (assuming  the  link_attributes
       extension is set):

	      ![The caption.](image.png){alt="description of image"}

       For  LaTeX output, you can specify a figure's positioning by adding the
       latex-placement attribute.

	      ![The caption.](image.png){latex-placement="ht"}

   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	known HTML5 attributes except width and	height
       (but including srcset and sizes)	are passed through as is.  Unknown at-
       tributes	are passed through as custom attributes, with data- prepended.
       The other writers ignore	attributes that	are not	specifically 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 ex-
       ample:

	      ![](file.jpg){ width=50% }

        Dimensions may	be converted to	a form that  is	 compatible  with  the
	 output	 format	 (for example, dimensions given	in pixels will be con-
	 verted	to inches when converting HTML to LaTeX).  Conversion  between
	 pixels	 and physical measurements is affected by the --dpi option (by
	 default, 96 dpi is assumed, unless the	image itself contains dpi  in-
	 formation).

        The  %	unit is	generally relative to some available space.  For exam-
	 ple the above example will render to the following.

	  HTML: <img href="file.jpg" style="width: 50%;" />

	  LaTeX:	     \includegraphics[width=0.5\textwidth,height=\tex-
	   theight]{file.jpg}  (If you're using	a custom template, you need to
	   configure graphicx as in the	default	template.)

	  ConTeXt: \externalfigure[file.jpg][width=0.5\textwidth]

        Some output formats have a notion of a	class (ConTeXt)	 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 im-
	 age file.

   Divs	and Spans
       Using the native_divs and native_spans  extensions  (see	 above),  HTML
       syntax  can  be	used as	part of	Markdown to create native Div and Span
       elements	in the pandoc AST (as opposed to raw HTML).  However, there is
       also nicer syntax available:

   Extension: fenced_divs
       Allow special fenced syntax for native Div blocks.  A Div starts	with a
       fence containing	at least three consecutive colons  plus	 some  attrib-
       utes.   The  attributes may optionally be followed by another string of
       consecutive colons.

       Note: the commonmark parser doesn't permit colons after the attributes.

       The attribute syntax is exactly as in fenced code  blocks  (see	Exten-
       sion: fenced_code_attributes).  As with fenced code blocks, one can use
       either attributes in curly braces or a single unbraced word, which will
       be  treated as a	class name.  The Div ends with another line containing
       a string	of at least three consecutive colons.  The fenced  Div	should
       be separated by blank lines from	preceding and following	blocks.

       Example:

	      ::::: {#special .sidebar}
	      Here is a	paragraph.

	      And another.
	      :::::

       Fenced  divs  can  be nested.  Opening fences are distinguished because
       they must have attributes:

	      ::: Warning ::::::
	      This is a	warning.

	      ::: Danger
	      This is a	warning	within a warning.
	      :::
	      ::::::::::::::::::

       Fences without attributes  are  always  closing	fences.	  Unlike  with
       fenced  code blocks, the	number of colons in the	closing	fence need not
       match the number	in the opening fence.  However,	it can be helpful  for
       visual clarity to use fences of different lengths to distinguish	nested
       divs from their parents.

   Extension: bracketed_spans
       A bracketed sequence of inlines,	as one would use to begin a link, will
       be  treated  as a Span with attributes if it is followed	immediately by
       attributes:

	      [This is *some text*]{.class key="val"}

   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,
       newlines,  or  the  characters  ^, [, or	].  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.).  Each footnote should  be  separated  from
       surrounding content (including other footnotes) by blank	lines.

   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.^[Inline 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.

   Citation syntax
   Extension: citations
       To cite a bibliographic item with an identifier	foo,  use  the	syntax
       @foo.   Normal  citations  should  be included in square	brackets, with
       semicolons separating distinct items:

	      Blah blah	[@doe99; @smith2000; @smith2004].

       How this	is rendered depends on the citation style.  In an  author-date
       style, it might render as

	      Blah blah	(Doe 1999, Smith 2000, 2004).

       In a footnote style, it might render as

	      Blah blah.[^1]

	      [^1]:  John Doe, "Frogs,"	*Journal of Amphibians*	44 (1999);
	      Susan Smith, "Flies," *Journal of	Insects* (2000);
	      Susan Smith, "Bees," *Journal of Insects*	(2004).

       See  the	 CSL  user documentation for more information about CSL	styles
       and how they affect rendering.

       Unless a	citation key starts with a letter, digit, or _,	 and  contains
       only   alphanumerics   and   single   internal  punctuation  characters
       (:.#$%&-+?<>~/),	it must	be surrounded by curly braces, which  are  not
       considered  part	 of the	key.  In @Foo_bar.baz.,	the key	is Foo_bar.baz
       because the final period	is not internal	punctuation, so	it is not  in-
       cluded  in  the	key.  In @{Foo_bar.baz.}, the key is Foo_bar.baz., in-
       cluding the final period.  In @Foo_bar--baz, the	key is Foo_bar because
       the repeated internal punctuation characters terminate  the  key.   The
       curly  braces are recommended if	you use	URLs as	keys: [@{https://exam-
       ple.com/bib?name=foobar&date=2000}, p.  33].

       Citation	items may optionally include a prefix, a locator, and  a  suf-
       fix.  In

	      Blah blah	[see @doe99, pp. 33-35 and *passim*; @smith04, chap. 1].

       the  first  item	(doe99)	has prefix see,	locator	pp.  33-35, and	suffix
       and *passim*.  The second item (smith04)	has locator  chap.  1  and  no
       prefix or suffix.

       Pandoc  uses  some  heuristics to separate the locator from the rest of
       the subject.  It	is sensitive to	the locator terms defined 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.

       In complex cases, you can force something to be treated as a locator by
       enclosing  it  in curly braces or prevent parsing the suffix as locator
       by prepending curly braces:

	      [@smith{ii, A, D-Z}, with	a suffix]
	      [@smith, {pp. iv,	vi-xi, (xv)-(xvii)} with suffix	here]
	      [@smith{}, 99 years later]

       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 author-in-text citation, by omitting  the	square
       brackets:

	      @smith04 says blah.

	      @smith04 [p. 33] says blah.

       This  will cause	the author's name to be	rendered, followed by the bib-
       liographical details.  Use this form when you want to make the citation
       the subject of a	sentence.

       When you	are using a note style,	it is usually better to	 let  citeproc
       create  the  footnotes  from  citations rather than writing an explicit
       note.  If you do	write an explicit note that contains a citation,  note
       that  normal citations will be put in parentheses, while	author-in-text
       citations will not.  For	this reason, it	is sometimes preferable	to use
       the author-in-text style	inside notes when using	a note style.

       Many CSL	styles will format citations differently when the same	source
       has  been cited earlier.	 In documents with chapters, it	is usually de-
       sirable to reset	this position information at the  beginning  of	 every
       chapter.	  To  do  this,	 add the class reset-citation-positions	to the
       heading for each	chapter:

	      #	The Beginning {.reset-citation-positions}

       Note that this class only has an	effect when placed on top-level	 head-
       ings; it	is ignored in nested blocks.

   Non-default 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, mark-
       down+hard_line_breaks is	Markdown with hard line	breaks.

   Extension: rebase_relative_paths
       Rewrite	relative paths for Markdown links and images, depending	on the
       path of the file	containing the link or image link.  For	each  link  or
       image,  pandoc will compute the directory of the	containing file, rela-
       tive to the working directory, and prepend the resulting	 path  to  the
       link or image path.

       The  use	 of this extension is best understood by example.  Suppose you
       have a subdirectory for each chapter of a book,	chap1,	chap2,	chap3.
       Each  contains  a file text.md and a number of images used in the chap-
       ter.  You would like to have ![image](spider.jpg) in chap1/text.md  re-
       fer to chap1/spider.jpg and ![image](spider.jpg)	in chap2/text.md refer
       to chap2/spider.jpg.  To	do this, use

	      pandoc chap*/*.md	-f markdown+rebase_relative_paths

       Without	this  extension,  you  would  have  to use ![image](chap1/spi-
       der.jpg)	  in   chap1/text.md   and    ![image](chap2/spider.jpg)    in
       chap2/text.md.  Links with relative paths will be rewritten in the same
       way as images.

       Absolute	 paths	and  URLs are not changed.  Neither are	empty paths or
       paths consisting	entirely of a fragment,	e.g., #foo.

       Note that relative paths	in reference links and images will be  rewrit-
       ten  relative to	the file containing the	link reference definition, not
       the file	containing the reference link or image itself, if  these  dif-
       fer.

   Extension: mark
       To  highlight  out  a  section  of text,	begin and end it with with ==.
       Thus, for example,

	      This ==is	deleted	text.==

   Extension: attributes
       Allows attributes to be attached	to any inline or  block-level  element
       when  parsing commonmark.  The syntax for the attributes	is the same as
       that used in header_attributes.

        Attributes that occur immediately after an inline element affect that
	 element.  If they follow a space, then	 they  belong  to  the	space.
	 (Hence,  this option subsumes inline_code_attributes and link_attrib-
	 utes.)

        Attributes that occur immediately before a block element, on  a  line
	 by themselves,	affect that element.

        Consecutive  attribute	 specifiers  may be used, either for blocks or
	 for inlines.  Their attributes	will be	combined.

        Attributes that occur at the end of the text of a Setext or ATX head-
	 ing (separated	by whitespace from the text) affect the	 heading  ele-
	 ment.	(Hence,	this option subsumes header_attributes.)

        Attributes  that occur	after the opening fence	in a fenced code block
	 affect	 the  code  block  element.   (Hence,  this  option   subsumes
	 fenced_code_attributes.)

        Attributes  that  occur at the	end of a reference link	definition af-
	 fect links that refer to that definition.

       Note that pandoc's AST does not currently allow attributes  to  be  at-
       tached  to  arbitrary  elements.	 Hence a Span or Div container will be
       added if	needed.

   Extension: old_dashes
       Selects the pandoc <= 1.8.2.1 behavior for parsing smart	dashes:	-  be-
       fore  a	numeral	is an en-dash, and -- is an em-dash.  This option only
       has an effect if	smart is enabled.  It is  selected  automatically  for
       textile input.

   Extension: angle_brackets_escapable
       Allow  <	 and  >	to be backslash-escaped, as they can be	in GitHub fla-
       vored Markdown but not original Markdown.  This is implied by  pandoc's
       default all_symbols_escapable.

   Extension: lists_without_preceding_blankline
       Allow  a	 list  to  occur  right	after a	paragraph, with	no intervening
       blank space.

   Extension: four_space_rule
       Selects the pandoc <= 2.0 behavior for  parsing	lists,	so  that  four
       spaces indent are needed	for list item continuation paragraphs.

   Extension: spaced_reference_links
       Allow  whitespace  between  the two components of a reference link, for
       example,

	      [foo] [bar].

   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  ig-
       nore_line_breaks	 for texts that	include	a mix of East Asian wide char-
       acters and other	characters.

   Extension: emoji
       Parses textual emojis like :smile: as Unicode emoticons.

   Extension: tex_math_gfm
       Supports	 two  GitHub-specific  formats	 for   math.	Inline	 math:
       $`e=mc^2`$.

       Display math:

	      ``` math
	      e=mc^2
	      ```

   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 Mark-
       down.  This extension changes the behavior so  that  Markdown  is  only
       parsed  inside  block-level  tags  if the tags have the attribute mark-
       down=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_ti-
       tle_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: alerts
       Supports	GitHub-style Markdown alerts, like

	      >	[!TIP]
	      >	Helpful	advice for doing things	better or more easily.

   Extension: autolink_bare_uris
       Makes  all absolute URIs	into links, even when not surrounded by	pointy
       braces <...>.

   Extension: mmd_link_attributes
       Parses MultiMarkdown-style key-value attributes on link and image  ref-
       erences.	  This	extension should not be	confused with the link_attrib-
       utes extension.

	      This is a	reference ![image][ref]	with MultiMarkdown attributes.

	      [ref]: https://path.to/image "Image title" width=20px height=30px
		     id=myId class="myClass1 myClass2"

   Extension: mmd_header_identifiers
       Parses MultiMarkdown-style heading identifiers (in square brackets, af-
       ter the heading but before any trailing #s in an	ATX heading).

   Extension: gutenberg
       Use Project Gutenberg conventions for plain output: all-caps for	strong
       emphasis, surround by underscores for regular emphasis, add extra blank
       space around headings.

   Extension: sourcepos
       Include source position attributes when parsing commonmark.   For  ele-
       ments that accept attributes, a data-pos	attribute is added; other ele-
       ments  are  placed in a surrounding Div or Span element with a data-pos
       attribute.

   Extension: short_subsuperscripts
       Parse MultiMarkdown-style subscripts and	superscripts, which start with
       a `~' or	`^' character, respectively, and include the alphanumeric  se-
       quence that follows.  For example:

	      x^2 = 4

       or

	      Oxygen is	O~2.

   Extension: wikilinks_title_after_pipe
       Pandoc  supports	 multiple  Markdown  wikilink  syntaxes, regardless of
       whether the title is before or after the	pipe.

       Using --from=markdown+wikilinks_title_after_pipe	results	in

	      [[URL|title]]

       while using --from=markdown+wikilinks_title_before_pipe results in

	      [[title|URL]]

   Markdown variants
       In addition to pandoc's extended	Markdown, the following	Markdown vari-
       ants are	supported:

        markdown_phpextra (PHP	Markdown Extra)

        markdown_github (deprecated GitHub-Flavored Markdown)

        markdown_mmd (MultiMarkdown)

        markdown_strict (Markdown.pl)

        commonmark (CommonMark)

        gfm (Github-Flavored Markdown)

        commonmark_x (CommonMark with many pandoc extensions)

       To see which extensions are supported for a given format, and which are
       enabled by default, you can use the command

	      pandoc --list-extensions=FORMAT

       where FORMAT is replaced	with the name of the format.

       Note that the list of extensions	for commonmark,	gfm, and  commonmark_x
       are  defined  relative  to  default commonmark.	So, for	example, back-
       tick_code_blocks	does not appear	as an extension, since it  is  enabled
       by default and cannot be	disabled.

CITATIONS
       When  the  --citeproc option is used, pandoc can	automatically generate
       citations and a bibliography in a number	of styles.  Basic usage	is

	      pandoc --citeproc	myinput.txt

       To use this feature, you	will need to have

        a document containing citations (see Citation syntax);

        a source of bibliographic data: either	an external bibliography  file
	 or a list of references in the	document's YAML	metadata;

        optionally, a CSL citation style.

   Specifying bibliographic data
       You  can	 specify an external bibliography using	the bibliography meta-
       data field in a YAML metadata section  or  the  --bibliography  command
       line argument.  If you want to use multiple bibliography	files, you can
       supply  multiple	 --bibliography	arguments or set bibliography metadata
       field to	YAML array.  A bibliography may	have any of these formats:

  Format     File extension
  ---------- ----------------
  BibLaTeX   .bib
  BibTeX     .bibtex
  CSL JSON   .json
  CSL YAML   .yaml
  RIS	     .ris

       Note that .bib can be used with both BibTeX and BibLaTeX	files; use the
       extension .bibtex to force interpretation as BibTeX.

       In BibTeX and BibLaTeX databases, pandoc	 parses	 LaTeX	markup	inside
       fields  such  as	 title;	in CSL YAML databases, pandoc Markdown;	and in
       CSL JSON	databases, an HTML-like	markup:

       <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

       As an alternative to specifying a bibliography file using  --bibliogra-
       phy  or the YAML	metadata field bibliography, you can include the cita-
       tion data directly in the references field of the document's YAML meta-
       data.  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: https://www.nature.com/articles/171737a0
		language: en-GB
	      ...

       If  both	an external bibliography and inline (YAML metadata) references
       are provided, both will be used.	 In case of conflicting	ids,  the  in-
       line references will take precedence.

       Note  that  pandoc  can be used to produce such a YAML metadata section
       from a BibTeX, BibLaTeX,	or CSL JSON bibliography:

	      pandoc chem.bib -s -f biblatex -t	markdown
	      pandoc chem.json -s -f csljson -t	markdown

       Indeed, pandoc can convert between any of these citation	formats:

	      pandoc chem.bib -s -f biblatex -t	csljson
	      pandoc chem.yaml -s -f markdown -t biblatex

       Running pandoc on a bibliography	file with the --citeproc  option  will
       create a	formatted bibliography in the format of	your choice:

	      pandoc chem.bib -s --citeproc -o chem.html
	      pandoc chem.bib -s --citeproc -o chem.pdf

   Capitalization in titles
       If  you	are  using a bibtex or biblatex	bibliography, then observe the
       following rules:

        English titles	should be in title case.  Non-English titles should be
	 in sentence case, and the langid field	in biblatex should be  set  to
	 the relevant language.	 (The following	values are treated as English:
	 american,  british, canadian, english,	australian, newzealand,	USeng-
	 lish, or UKenglish.)

        As is standard	with bibtex/biblatex, proper names should be protected
	 with curly braces so that they	won't be  lowercased  in  styles  that
	 call for sentence case.  For example:

		title =	{My Dinner with	{Andre}}

        In addition, words that should	remain lowercase (or camelCase)	should
	 be protected:

		title =	{Spin Wave Dispersion on the {nm} Scale}

	 Though	this is	not necessary in bibtex/biblatex, it is	necessary with
	 citeproc,  which  stores titles internally in sentence	case, and con-
	 verts to title	case in	styles that require it.	 Here we protect  "nm"
	 so that it doesn't get	converted to "Nm" at this stage.

       If you are using	a CSL bibliography (either JSON	or YAML), then observe
       the following rules:

        All titles should be in sentence case.

        Use  the  language field for non-English titles to prevent their con-
	 version to title case in styles that call for this.  (Conversion hap-
	 pens only if language begins with en or is left empty.)

        Protect words that should not be converted to title case  using  this
	 syntax:

		Spin wave dispersion on	the <span class="nocase">nm</span> scale

   Conference Papers, Published	vs. Unpublished
       For  a formally published conference paper, use the biblatex entry type
       inproceedings (which will be mapped to CSL paper-conference).

       For an unpublished manuscript, use the biblatex entry type  unpublished
       without an eventtitle field (this entry type will be mapped to CSL man-
       uscript).

       For  a talk, an unpublished conference paper, or	a poster presentation,
       use the biblatex	entry type unpublished with an eventtitle field	 (this
       entry  type will	be mapped to CSL speech).  Use the biblatex type field
       to indicate the type, e.g. "Paper", or "Poster".	 venue	and  eventdate
       may  be	useful	too, though eventdate will not be rendered by most CSL
       styles.	Note that venue	is for	the  event's  venue,  unlike  location
       which  describes	the publisher's	location; do not use the latter	for an
       unpublished conference paper.

   Specifying a	citation style
       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  (or	 cita-
       tion-style)  metadata  field.   By default, pandoc will use the Chicago
       Manual of Style author-date format.  (You can override this default  by
       copying a CSL style of your choice to default.csl in your user data di-
       rectory.)   The CSL project provides further information	on finding and
       editing styles.

       The  --citation-abbreviations  option  (or  the	citation-abbreviations
       metadata	field) may be used to specify a	JSON file containing abbrevia-
       tions  of journals that should be used in formatted bibliographies when
       form="short" is specified.  The format of the file can  be  illustrated
       with an example:

	      {	"default": {
		  "container-title": {
			  "Lloyd's Law Reports": "Lloyd's Rep",
			  "Estates Gazette": "EG",
			  "Scots Law Times": "SLT"
		  }
		}
	      }

   Citations in	note styles
       Pandoc's	 citation  processing is designed to allow you to move between
       author-date, numerical, and note	styles without modifying the  Markdown
       source.	When you're using a note style,	avoid inserting	footnotes man-
       ually.	Instead,  insert citations just	as you would in	an author-date
       style--for example,

	      Blah blah	[@foo, p. 33].

       The footnote will be created automatically.  Pandoc will	take  care  of
       removing	 the space and moving the note before or after the period, de-
       pending on the setting of notes-after-punctuation, as  described	 below
       in Other	relevant metadata fields.

       In some cases you may need to put a citation inside a regular footnote.
       Normal  citations in footnotes (such as [@foo, p. 33]) will be rendered
       in parentheses.	In-text	citations (such	as @foo	[p. 33]) will be  ren-
       dered  without  parentheses.   (A  comma	will be	added if appropriate.)
       Thus:

	      [^1]:  Some studies [@foo; @bar, p. 33] show that
	      frubulicious zoosnaps are	quantical.  For	a survey
	      of the literature, see @baz [chap. 1].

   Placement of	the bibliography
       If the style calls for a	list of	works cited, it	will be	 placed	 in  a
       div with	id refs, if one	exists:

	      ::: {#refs}
	      :::

       Otherwise, it will be placed at the end of the document.	 Generation of
       the  bibliography  can  be suppressed by	setting	suppress-bibliography:
       true in the YAML	metadata.

       If you wish the bibliography to have a section  heading,	 you  can  set
       reference-section-title	in the metadata, or put	the heading at the be-
       ginning of the div with id refs (if you are using it) or	at the end  of
       your document:

	      last paragraph...

	      #	References

       The  bibliography  will	be inserted after this heading.	 Note that the
       unnumbered class	will be	added to this heading,	so  that  the  section
       will not	be numbered.

       If  you	want to	put the	bibliography into a variable in	your template,
       one way to do that is to	put the	div  with  id  refs  into  a  metadata
       field, e.g.

	      ---
	      refs: |
		 ::: {#refs}
		 :::
	      ...

       You  can	then put the variable $refs$ into your template	where you want
       the bibliography	to be placed.

   Including uncited items in the bibliography
       If you want to include items in the bibliography	without	actually  cit-
       ing 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.

       It is possible to create	a bibliography with all	the citations, whether
       or not they appear in the document, by using a wildcard:

	      ---
	      nocite: |
		@*
	      ...

       For LaTeX output, you can also use natbib or  biblatex  to  render  the
       bibliography.   In  order  to do	so, specify bibliography files as out-
       lined above, and	add --natbib or	--biblatex argument to pandoc  invoca-
       tion.  Bear in mind that	bibliography files have	to be in either	BibTeX
       (for --natbib) or BibLaTeX (for --biblatex) format.

   Other relevant metadata fields
       A few other metadata fields affect bibliography formatting:

       link-citations
	      If true, citations will be hyperlinked to	the corresponding bib-
	      liography	 entries  (for author-date and numerical styles	only).
	      Defaults to false.

       link-bibliography
	      If true, DOIs, PMCIDs, PMID, and URLs in bibliographies will  be
	      rendered	as  hyperlinks.	  (If  an entry	contains a DOI,	PMCID,
	      PMID, or URL, but	none of	 these	fields	are  rendered  by  the
	      style,  then  the	 title,	or in the absence of a title the whole
	      entry, will be hyperlinked.)  Defaults to	true.

       lang   The lang field will affect how the style is localized, for exam-
	      ple in the translation of	labels,	the use	 of  quotation	marks,
	      and the way items	are sorted.  (For backwards compatibility, lo-
	      cale may be used instead of lang,	but this use is	deprecated.)
	      A	 BCP  47 language tag is expected: for example,	en, de,	en-US,
	      fr-CA, ug-Cyrl.  The unicode extension syntax (after -u-)	may be
	      used to specify options for collation (sorting) more  precisely.
	      Here are some examples:

	      	zh-u-co-pinyin:	Chinese	with the Pinyin	collation.

	      	es-u-co-trad:  Spanish with the	traditional collation (with Ch
		sorting	after C).

	      	fr-u-kb: French	with  "backwards"  accent  sorting  (with  cot
		sorting	after cte).

	      	en-US-u-kf-upper:  English  with uppercase letters sorting be-
		fore lower (default is lower before upper).

       notes-after-punctuation
	      If true (the default for note styles), pandoc will put  footnote
	      references  or superscripted numerical citations after following
	      punctuation.  For	example, if  the  source  contains  blah  blah
	      [@jones99].,  the	result will look like blah blah.[^1], with the
	      note moved after the period and the space	collapsed.  If	false,
	      the  space will still be collapsed, but the footnote will	not be
	      moved after the punctuation.  The	option may also	be used	in nu-
	      merical styles that use superscripts for citation	 numbers  (but
	      for these	styles the default is not to move the citation).

SLIDE SHOWS
       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 pro-
       duce a PDF slide	show using LaTeX beamer, or slide shows	 in  Microsoft
       PowerPoint format.

       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  JavaScript  and  CSS
       files,  which  are  assumed to be available at the relative path	s5/de-
       fault (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 HTML slides, above.)   For	DZSlides,  the
       (relatively  short)  JavaScript and CSS are included in the file	by de-
       fault.

       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  dis-
       play 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.

       To produce a PowerPoint slide show, type

	      pandoc habits.txt	-o habits.pptx

   Structuring the slide show
       By default, the slide level is the highest heading level	in the hierar-
       chy that	is followed immediately	by content, and	not  another  heading,
       somewhere  in the document.  In the example above, level-1 headings are
       always followed by level-2 headings, which are followed by content,  so
       the  slide  level  is  2.   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 heading at the slide	level always starts a new slide.

        Headings below	the slide  level  in  the  hierarchy  create  headings
	 within	a slide.  (In beamer, a	"block"	will be	created.  If the head-
	 ing  has the class example, an	exampleblock environment will be used;
	 if it has the class alert, an alertblock will be  used;  otherwise  a
	 regular block will be used.)

        Headings  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.	Non-slide content under	these headings
	 will be included on the title slide (for HTML slide shows)  or	 in  a
	 subsequent slide with the same	title (for beamer).

        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  either  just  use level-1 headings for all
       slides (in that case, level 1 will be the slide level) or you  can  set
       --slide-level=0.

       Note:  in reveal.js slide shows,	if slide level is 2, a two-dimensional
       layout will be produced,	with level-1  headings	building  horizontally
       and  level-2  headings building vertically.  It is not recommended that
       you use deeper nesting of section levels	with reveal.js unless you  set
       --slide-level=0	(which lets reveal.js produce a	one-dimensional	layout
       and only	interprets horizontal rules as slide boundaries).

   PowerPoint layout choice
       When creating slides, the pptx writer chooses from a number of  pre-de-
       fined layouts, based on the content of the slide:

       Title Slide
	      This  layout  is	used for the initial slide, which is generated
	      and filled from the metadata fields date,	author,	and title,  if
	      they are present.

       Section Header
	      This  layout  is used for	what pandoc calls "title slides", i.e.
	      slides which start with a	header which is	above the slide	 level
	      in the hierarchy.

       Two Content
	      This  layout is used for two-column slides, i.e. slides contain-
	      ing a div	with class columns which contains at  least  two  divs
	      with class column.

       Comparison
	      This  layout is used instead of "Two Content" for	any two-column
	      slides in	which at least one column contains  text  followed  by
	      non-text (e.g. an	image or a table).

       Content with Caption
	      This  layout is used for any non-two-column slides which contain
	      text followed by non-text	(e.g. an image or a table).

       Blank  This layout is used for any slides which only contain blank con-
	      tent, e.g. a slide containing only speaker  notes,  or  a	 slide
	      containing only a	non-breaking space.

       Title and Content
	      This layout is used for all slides which do not match the	crite-
	      ria for another layout.

       These  layouts  are chosen from the default pptx	reference doc included
       with pandoc, unless an alternative reference  doc  is  specified	 using
       --reference-doc.

   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 de-
       fault, put it in	a div block with class incremental or  nonincremental.
       So,  for	 example,  using the fenced div	syntax,	the following would be
       incremental regardless of the document default:

	      ::: incremental

	      -	Eat spaghetti
	      -	Drink wine

	      :::

       or

	      ::: nonincremental

	      -	Eat spaghetti
	      -	Drink wine

	      :::

       While using incremental and  nonincremental  divs  is  the  recommended
       method  of  setting  incremental	 lists	on  a per-case basis, an older
       method is also supported: putting lists inside a	blockquote will	depart
       from the	document default (that is, it will display incrementally with-
       out the -i option and all at once with the -i option):

	      >	- Eat spaghetti
	      >	- Drink	wine

       Both methods allow incremental and nonincremental lists to be mixed  in
       a single	document.

       If  you	want  to include a block-quoted	list, you can work around this
       behavior	by putting the list inside a fenced div, so that it is not the
       direct child of the block quote:

	      >	::: wrapper
	      >	- a
	      >	- list in a quote
	      >	:::

   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

       Note: this feature is not yet implemented for PowerPoint	output.

   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 di-
       rectory (see --data-dir,	above).	 The originals may be  found  in  pan-
       doc's  system data directory (generally $CABALDIR/pandoc-VERSION/s5/de-
       fault).	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  heading  attributes	will  turn into	slide attributes (on a
       <div> or	<section>) in HTML slide formats, allowing you to style	 indi-
       vidual  slides.	 In beamer, a number of	heading	classes	and attributes
       are recognized as frame options and will	be passed through  as  options
       to the frame: see Frame attributes in beamer, below.

   Speaker notes
       Speaker notes are supported in reveal.js, PowerPoint (pptx), and	beamer
       output.	You can	add notes to your Markdown document thus:

	      ::: notes

	      This is my note.

	      -	It can contain Markdown
	      -	like this list

	      :::

       To  show	 the notes window in reveal.js,	press s	while viewing the pre-
       sentation.  Speaker notes in PowerPoint will be available, as usual, in
       handouts	and presenter view.

       Notes are not yet supported for other slide formats, but	the notes will
       not appear on the slides	themselves.

   Speaker notes on the	title slide (PowerPoint)
       For PowerPoint output, the title	slide is generated from	the document's
       YAML metadata block.  To	add speaker notes to this slide, use  a	 notes
       field in	the metadata:

	      ---
	      title: My	Presentation
	      author: Jane Doe
	      notes: |
		Welcome	everyone to this presentation.

		Remember to introduce yourself and mention the key topics.
	      ---

       The  notes  field  can contain multiple paragraphs and Markdown format-
       ting.

   Columns
       To put material in side by side columns,	you can	use a native div  con-
       tainer  with  class columns, containing two or more div containers with
       class column and	a width	attribute:

	      :::::::::::::: {.columns}
	      ::: {.column width="40%"}
	      contents...
	      :::
	      ::: {.column width="60%"}
	      contents...
	      :::
	      ::::::::::::::

       Note: Specifying	column widths does not currently work for PowerPoint.

   Additional columns attributes in beamer
       The div containers with classes columns and column can optionally  have
       an align	attribute.  The	class columns can optionally have a totalwidth
       attribute or an onlytextwidth class.

	      :::::::::::::: {.columns align=center totalwidth=8em}
	      ::: {.column width="40%"}
	      contents...
	      :::
	      ::: {.column width="60%" align=bottom}
	      contents...
	      :::
	      ::::::::::::::

       The  align attributes on	columns	and column can be used with the	values
       top, top-baseline, center and bottom to vertically align	 the  columns.
       It defaults to top in columns.

       The  totalwidth	attribute limits the width of the columns to the given
       value.

	      :::::::::::::: {.columns align=top .onlytextwidth}
	      ::: {.column width="40%" align=center}
	      contents...
	      :::
	      ::: {.column width="60%"}
	      contents...
	      :::
	      ::::::::::::::

       The class onlytextwidth sets the	totalwidth to \textwidth.

       See Section 12.7	of the Beamer User's Guide for more details.

   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  heading  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,  allowframe-
       breaks, b, c, s,	t, environment,	label, plain, shrink, standout,	nofra-
       menumbering,  squeeze.	allowframebreaks is recommended	especially for
       bibliographies, as it allows multiple slides to be created if the  con-
       tent overfills the frame:

	      #	References {.allowframebreaks}

       In  addition,  the frameoptions attribute may be	used to	pass arbitrary
       frame options to	a beamer slide:

	      #	Heading	{frameoptions="squeeze,shrink,customoption=foobar"}

   Background in reveal.js, beamer, and	pptx
       Background images can be	added to self-contained	reveal.js slide	shows,
       beamer slide shows, and pptx slide shows.

   On all slides (beamer, reveal.js, pptx)
       With beamer and reveal.js, the  configuration  option  background-image
       can  be	used  either  in  the YAML metadata block or as	a command-line
       variable	to get the same	image on every slide.

       Note that for reveal.js,	the background-image will be used as a	paral-
       laxBackgroundImage (see below).

       For pptx, you can use a --reference-doc in which	background images have
       been set	on the relevant	layouts.

   parallaxBackgroundImage (reveal.js)
       For  reveal.js, there is	also the reveal.js-native option parallaxBack-
       groundImage, which produces a parallax scrolling	background.  You  must
       also  set  parallaxBackgroundSize, and can optionally set parallaxBack-
       groundHorizontal	 and  parallaxBackgroundVertical  to   configure   the
       scrolling  behaviour.  See the reveal.js	documentation for more details
       about the meaning of these options.

       In reveal.js's overview mode, the parallaxBackgroundImage will show  up
       only on the first slide.

   On individual slides	(reveal.js, pptx)
       To  set	an  image for a	particular reveal.js or	pptx slide, add	{back-
       ground-image="/path/to/image"} to the first slide-level heading on  the
       slide (which may	even be	empty).

       As  the	HTML  writers pass unknown attributes through, other reveal.js
       background settings also	work on	 individual  slides,  including	 back-
       ground-size, background-repeat, background-color, transition, and tran-
       sition-speed.  (The data- prefix	will automatically be added.)

       Note:  data-background-image  is	also supported in pptx for consistency
       with reveal.js -	if background-image isn't found, data-background-image
       will be checked.

   On the title	slide (reveal.js, pptx)
       To add a	background image to the	automatically  generated  title	 slide
       for  reveal.js,	use  the  title-slide-attributes  variable in the YAML
       metadata	block.	It must	contain	a map of attribute names  and  values.
       (Note  that  the	data- prefix is	required here, as it isn't added auto-
       matically.)

       For pptx, pass a	--reference-doc	with the background image set  on  the
       "Title Slide" layout.

   Example (reveal.js)
	      ---
	      title: My	Slide Show
	      parallaxBackgroundImage: /path/to/my/background_image.png
	      title-slide-attributes:
		  data-background-image: /path/to/title_image.png
		  data-background-size:	contain
	      ---

	      ## Slide One

	      Slide 1 has background_image.png as its background.

	      ## {background-image="/path/to/special_image.jpg"}

	      Slide 2 has a special image for its background, even though the heading has no content.

EPUBS
   EPUB	Metadata
       There  are  two	ways to	specify	metadata for an	EPUB.  The first is to
       use the --epub-metadata option, which takes as its argument an XML file
       with Dublin Core	elements.

       The second way is to use	YAML, either in	a YAML	metadata  block	 in  a
       Markdown	 document,  or	in a separate YAML file	specified with --meta-
       data-file.  Here	is an example of a YAML	metadata block with EPUB meta-
       data:

	      ---
	      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
	      ibooks:
		version: 1.3.4
	      ...

       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 number,
	      Co-publisher's ISBN-13, ISMN-13, ISBN-A, JP e-code, OLCC number,
	      JP Magazine ID, UPC-12+5,	BNF Control number, ISSN-13, ARK, Dig-
	      ital file	internal version number.

       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  hu-
	      man-readable versions (like "author" and "editor") to the	appro-
	      priate marc relators.

       contributor
	      Same format as creator.

       date   A	 string	 value in YYYY-MM-DD format.  (Only the	year is	neces-
	      sary.)  Pandoc will attempt to convert other  common  date  for-
	      mats.

       lang (or	legacy:	language)
	      A	string value in	BCP 47 format.	Pandoc will default to the lo-
	      cal language if nothing is specified.

       subject
	      Either a string value, or	an object with fields text, authority,
	      and term,	or a list of such objects.  Valid values for authority
	      are  either  a  reserved	authority  value  (currently AAT, BIC,
	      BISAC, CLC, DDC, CLIL, EuroVoc, MEDTOP, LCSH, NDC,  Thema,  UDC,
	      and  WGS)	or an absolute IRI identifying a custom	scheme.	 Valid
	      values for term are defined by the scheme.

       description
	      A	string value.

       type   A	string value.

       format A	string value.

       relation
	      A	string value.

       coverage
	      A	string value.

       rights A	string value.

       belongs-to-collection
	      A	string value.  Identifies the name of a	 collection  to	 which
	      the EPUB Publication belongs.

       group-position
	      The group-position field indicates the numeric position in which
	      the  EPUB	 Publication belongs relative to other works belonging
	      to the same belongs-to-collection	field.

       cover-image
	      A	string value (path to cover image).

       css (or legacy: stylesheet)
	      A	string value (path to CSS stylesheet).

       page-progression-direction
	      Either ltr or rtl.  Specifies the	page-progression-direction at-
	      tribute for the spine element.

       accessModes
	      An array of strings (schema).  Defaults to ["textual"].

       accessModeSufficient
	      An array of strings (schema).  Defaults to ["textual"].

       accessibilityHazards
	      An array of strings (schema).  Defaults to ["none"].

       accessibilityFeatures
	      An array of strings (schema).  Defaults to

		     - "alternativeText"
		     - "readingOrder"
		     - "structuralNavigation"
		     - "tableOfContents"

       accessibilitySummary
	      A	string value.

       ibooks iBooks-specific metadata,	with the following fields:

	      	version: (string)

	      	specified-fonts: true|false (default false)

	      	ipad-orientation-lock: portrait-only|landscape-only

	      	iphone-orientation-lock: portrait-only|landscape-only

	      	binding: true|false (default true)

	      	scroll-axis: vertical|horizontal|default

   The epub:type attribute
       For epub3 output, you can mark up the heading that  corresponds	to  an
       EPUB  chapter  using  the epub:type attribute.  For example, to set the
       attribute to the	value prologue,	use this Markdown:

	      #	My chapter {epub:type=prologue}

       Which will result in:

	      <body epub:type="frontmatter">
		<section epub:type="prologue">
		  <h1>My chapter</h1>

       Pandoc will output <body	epub:type="bodymatter">, unless	you use	one of
       the following values, in	which case either  frontmatter	or  backmatter
       will be output.

  epub:type of first section   epub:type of body
  ---------------------------- -------------------
  prologue		       frontmatter
  abstract		       frontmatter
  acknowledgments	       frontmatter
  copyright-page	       frontmatter
  dedication		       frontmatter
  credits		       frontmatter
  keywords		       frontmatter
  imprint		       frontmatter
  contributors		       frontmatter
  other-credits		       frontmatter
  errata		       frontmatter
  revision-history	       frontmatter
  titlepage		       frontmatter
  halftitlepage		       frontmatter
  seriespage		       frontmatter
  foreword		       frontmatter
  preface		       frontmatter
  frontispiece		       frontmatter
  appendix		       backmatter
  colophon		       backmatter
  bibliography		       backmatter
  index			       backmatter

   Linked media
       By  default, pandoc will	download media referenced from any <img>, <au-
       dio>, <video> or	<source> element present in the	 generated  EPUB,  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="https://example.com/music/toccata.mp3"
			data-external="1" type="audio/mpeg">
		</source>
	      </audio>

       If the input format already is HTML then	data-external="1" will work as
       expected	 for <img> elements.  Similarly, for Markdown, external	images
       can be declared with  ![img](url){external=1}.	Note  that  this  only
       works  for  images; the other media elements have no native representa-
       tion in pandoc's	AST and	require	the use	of raw HTML.

   EPUB	styling
       By default, pandoc will include some basic  styling  contained  in  its
       epub.css	data file.  (To	see this, use pandoc --print-default-data-file
       epub.css.)   To	use  a	different CSS file, just use the --css command
       line option.  A few inline styles are defined in	 addition;  these  are
       essential for correct formatting	of pandoc's HTML output.

       The document-css	variable may be	set if the more	opinionated styling of
       pandoc's	 default HTML templates	is desired (and	in that	case the vari-
       ables defined in	Variables for  HTML  may  be  used  to	fine-tune  the
       style).

CHUNKED	HTML
       pandoc  -t chunkedhtml will produce a zip archive of linked HTML	files,
       one for each section of the original document.  Internal	links will au-
       tomatically be adjusted to point	to the right place, images  linked  to
       under  the working directory will be incorporated, and navigation links
       will be added.  In addition, a JSON file	sitemap.json will be  included
       describing the hierarchical structure of	the files.

       If  an  output  file without an extension is specified, then it will be
       interpreted as a	directory and the zip archive  will  be	 automatically
       unpacked	into it	(unless	it already exists, in which case an error will
       be raised).  Otherwise a	.zip file will be produced.

       The  navigation	links can be customized	by adjusting the template.  By
       default,	a table	of contents is included	only on	the top	page.  To  in-
       clude it	on every page, set the toc variable manually.

JUPYTER	NOTEBOOKS
       When creating a Jupyter notebook, pandoc	will try to infer the notebook
       structure.   Code  blocks  with	the  class  code will be taken as code
       cells, and intervening content will be taken as	Markdown  cells.   At-
       tachments  will	automatically be created for images in Markdown	cells.
       Metadata	will be	taken from the jupyter metadata	field.	For example:

	      ---
	      title: My	notebook
	      jupyter:
		nbformat: 4
		nbformat_minor:	5
		kernelspec:
		   display_name: Python	2
		   language: python
		   name: python2
		language_info:
		   codemirror_mode:
		     name: ipython
		     version: 2
		   file_extension: ".py"
		   mimetype: "text/x-python"
		   name: "python"
		   nbconvert_exporter: "python"
		   pygments_lexer: "ipython2"
		   version: "2.7.15"
	      ---

	      #	Lorem ipsum

	      **Lorem ipsum** dolor sit	amet, consectetur adipiscing elit. Nunc	luctus
	      bibendum felis dictum sodales.

	      ``` code
	      print("hello")
	      ```

	      ## Pyout

	      ``` code
	      from IPython.display import HTML
	      HTML("""
	      <script>
	      console.log("hello");
	      </script>
	      <b>HTML</b>
	      """)
	      ```

	      ## Image

	      This image ![image](myimage.png) will be
	      included as a cell attachment.

       If you want to add cell attributes, group  cells	 differently,  or  add
       output  to  code	 cells,	 then you need to include divs to indicate the
       structure.  You can use either fenced divs or  native  divs  for	 this.
       Here is an example:

	      :::::: {.cell .markdown}
	      #	Lorem

	      **Lorem ipsum** dolor sit	amet, consectetur adipiscing elit. Nunc	luctus
	      bibendum felis dictum sodales.
	      ::::::

	      :::::: {.cell .code execution_count=1}
	      ``` {.python}
	      print("hello")
	      ```

	      ::: {.output .stream .stdout}
	      ```
	      hello
	      ```
	      :::
	      ::::::

	      :::::: {.cell .code execution_count=2}
	      ``` {.python}
	      from IPython.display import HTML
	      HTML("""
	      <script>
	      console.log("hello");
	      </script>
	      <b>HTML</b>
	      """)
	      ```

	      ::: {.output .execute_result execution_count=2}
	      ```{=html}
	      <script>
	      console.log("hello");
	      </script>
	      <b>HTML</b>
	      hello
	      ```
	      :::
	      ::::::

       If  you	include	 raw  HTML  or	TeX in an output cell, use the raw at-
       tribute,	as shown in the	last cell of the example above.	 Although pan-
       doc can process "bare" raw HTML and TeX,	the  result  is	 often	inter-
       spersed raw elements and	normal textual elements, and in	an output cell
       pandoc  expects a single, connected raw block.  To avoid	using raw HTML
       or TeX except when marked explicitly using raw attributes, we recommend
       specifying the extensions -raw_html-raw_tex+raw_attribute  when	trans-
       lating between Markdown and ipynb notebooks.

       Note  that  options  and	 extensions that affect	reading	and writing of
       Markdown	will also affect Markdown cells	in ipynb notebooks.  For exam-
       ple, --wrap=preserve will preserve soft line breaks in Markdown	cells;
       --markdown-headings=setext will cause Setext-style headings to be used;
       and --preserve-tabs will	prevent	tabs from being	turned to spaces.

VIMDOC
       Vimdoc  writer  generates Vim help files	and makes use of the following
       metadata	variables:

	      abstract:	"A short description"
	      author: Author
	      title: Title

	      #	Vimdoc-specific
	      filename:	"definition-lists.txt"
	      vimdoc-prefix: pandoc

       Complete	header requires	abstract, author, title	 and  filename	to  be
       set.   Compiling	 file  with  such metadata produces the	following file
       (assumes	--standalone, see Templates):

	      *definition-lists.txt*  A	short description

					  Title	by Author

					       Type |gO| to see	the table of contents.

	      [...]

	       vim:tw=72:sw=4:ts=4:ft=help:norl:et:

       If vimdoc-prefix	is set,	all non-command	tags  are  prefixed  with  its
       value, it is used to prevent tag	collision: all headers have a tag (ei-
       ther  inferred  or  explicit) and multiple help pages can have the same
       header names, therefore collision is to be expected.  Let our input  be
       the following markdown file:

	      ## Header

	      `:[range]Fnl {expr}`{#:Fnl}
	      :	  Evaluates {expr} or range

	      `vim.b`{#vim.b}
	      :	  Buffer-scoped	(`:h b:`) variables for	the current buffer. Invalid or unset
		  key returns `nil`. Can be indexed with an integer to access variables	for a
		  specific buffer.

	      [Span]{#span}
	      :	  generic inline container for phrasing	content, which does not	inherently
		  represent anything.

       Convert it to vimdoc:

	      ------------------------------------------------------------------------
	      Header								*header*

	      :[range]Fnl {expr}						  *:Fnl*
		  Evaluates {expr} or range
	      `vim.b`								 *vim.b*
		  Buffer-scoped	(|b:|) variables for the current buffer. Invalid or
		  unset	key returns `nil`. Can be indexed with an integer to access
		  variables for	a specific buffer.
	      Span								  *span*
		  generic inline container for phrasing	content, which does not
		  inherently represent anything.

       Convert	it  to	vimdoc	with  metadata variable	set (e.g. with -M vim-
       doc-prefix=pandoc)

	      ------------------------------------------------------------------------
	      Header							 *pandoc-header*

	      :[range]Fnl {expr}						  *:Fnl*
		  Evaluates {expr} or range
	      `vim.b`							  *pandoc-vim.b*
		  Buffer-scoped	(|b:|) variables for the current buffer. Invalid or
		  unset	key returns `nil`. Can be indexed with an integer to access
		  variables for	a specific buffer.
	      Span							   *pandoc-span*
		  generic inline container for phrasing	content, which does not
		  inherently represent anything.

       vim.b and Span got their	prefixes  but  not  :Fnl  because  ex-commands
       (those  starting	 with :) don't get a prefix, since they	are considered
       unique across help pages.

       In both cases :help b: became reference |b:| (also works	with  :h  b:).
       Links	  pointing	to	either	   https://vimhelp.org/	    or
       https://neovim.io/doc/user become references too.

       Vim traditionally  wraps	 at  78,  but  Pandoc  defaults	 to  72.   Use
       --columns 78 to match Vim.

SYNTAX HIGHLIGHTING
       Pandoc  will  automatically highlight syntax in fenced code blocks that
       are marked with a language name.	 The Haskell  library  skylighting  is
       used  for  highlighting.	  Currently highlighting is supported only for
       HTML, EPUB, Docx, Ms, Man, Typst, and LaTeX/PDF output.	To see a  list
       of  language names that pandoc will recognize, type pandoc --list-high-
       light-languages.

       The color scheme	can be selected	using  the  --syntax-highlighting  op-
       tion.  The default color	scheme is pygments, which imitates the default
       color  scheme  used  by the Python library pygments (though pygments is
       not actually used to do the highlighting).  To see a list of  highlight
       styles, type pandoc --list-highlight-styles.

       If  you	are  not  satisfied  with  the	predefined styles, you can use
       --print-highlight-style to generate a JSON .theme  file	which  can  be
       modified	 and  used as the argument to --syntax-highlighting.  To get a
       JSON version of the pygments style, for example:

	      pandoc -o	my.theme --print-highlight-style pygments

       Then edit my.theme and use it like this:

	      pandoc --syntax-highlighting my.theme

       If you are not satisfied	with the built-in highlighting,	or you want to
       highlight a language that isn't supported, you can use the --syntax-de-
       finition	option to load a KDE-style XML syntax definition file.	Before
       writing your own, have a	look at	KDE's  repository  of  syntax  defini-
       tions.

       If  you	receive	 an  error  that  pandoc  "Could not read highlighting
       theme", check that the JSON file	is  encoded  with  UTF-8  and  has  no
       Byte-Order Mark (BOM).

       To disable highlighting,	use --syntax-highlighting=none.

       To  use	a  format's  idiomatic syntax highlighting instead of pandoc's
       built-in	highlighting, use --syntax-highlighting=idiomatic.  Currently,
       idiomatic only affects the following formats:

        In reveal.js, it causes reveal.js's highlighting plugin  to  be  used
	 for source code highlighting.	The style may be customized by setting
	 the highlightjs-theme variable.

        In  Typst, it causes Typst's built-in highlighting to be used.	 (This
	 is also the default for Typst.)

        In LaTeX, it causes the listings package to be	used.  Note that list-
	 ings does not support multi-byte encoding for source code.  To	handle
	 UTF-8 you would need to use a custom template.	 This issue  is	 fully
	 documented here: Encoding issue with the listings package.

        In other formats, idiomatic will have the same	result as default.

CUSTOM STYLES
       Custom styles can be used in the	docx, odt and ICML formats.

   Output
       By default, pandoc's odt, docx and ICML output applies a	predefined set
       of  styles  for	blocks	such  as paragraphs and	block quotes, and uses
       largely default formatting (italics, bold) for inlines.	This will work
       for most	purposes, especially alongside a reference doc file.  However,
       if you need to apply your own styles to blocks, or match	a  preexisting
       set of styles, pandoc allows you	to define custom styles	for blocks and
       text using divs and spans, respectively.

       If  you	define	a Div, Span, or	Table with the attribute custom-style,
       pandoc will apply your specified	style to the contained elements	 (with
       the exception of	elements whose function	depends	on a style, like head-
       ings, code blocks, block	quotes,	or links).  So,	for example, using the
       bracketed_spans syntax,

	      [Get out]{custom-style="Emphatically"}, he said.

       would produce a file with "Get out" styled with character style Emphat-
       ically.	Similarly, using the fenced_divs syntax,

	      Dickinson	starts the poem	simply:

	      ::: {custom-style="Poetry"}
	      |	A Bird came down the Walk---
	      |	He did not know	I saw---
	      :::

       would style the two contained lines with	the Poetry paragraph style.

       Styles  will  be	 defined  in the output	file as	inheriting from	normal
       text (docx) or Default Paragraph	Style (odt), if	the styles are not yet
       in your reference doc.  If they are already defined,  pandoc  will  not
       alter the definition.

       This feature allows for greatest	customization in conjunction with pan-
       doc  filters.   If you want all paragraphs after	block quotes to	be in-
       dented, you can write a filter to apply the styles necessary.   If  you
       want  all  italics  to  be  transformed to the Emphasis character style
       (perhaps	to change their	color),	you can	 write	a  filter  which  will
       transform  all  italicized  inlines  to inlines within an Emphasis cus-
       tom-style span.

       For docx	or odt output, you don't need to  enable  any  extensions  for
       custom styles to	work.

       For icml	output,	you can	also set an object-style in images:

	      ![Image with object style](myImage.jpg){object-style="fixedSizeImage"}

       In InDesign you'll see that object style	given to the image, and	you'll
       be  able	 to  customize	it,  or	load its definition from a template of
       yours.

   Input
       The docx	reader,	by default, only reads those styles that it  can  con-
       vert  into pandoc elements, either by direct conversion or interpreting
       the derivation of the input document's styles.

       By enabling the styles extension	in the docx reader  (-f	 docx+styles),
       you can produce output that maintains the styles	of the input document,
       using  the  custom-style	class.	A custom-style attribute will be added
       for each	style.	Divs will be created to	hold the paragraph styles, and
       Spans to	hold the character styles.  Table styles will be  applied  di-
       rectly to the Table.

       For example, using the custom-style-reference.docx file in the test di-
       rectory,	we have	the following different	outputs:

       Without the +styles extension:

	      $	pandoc test/docx/custom-style-reference.docx -f	docx -t	markdown
	      This is some text.

	      This is text with	an *emphasized*	text style. And	this is	text with a
	      **strengthened** text style.

	      >	Here is	a styled paragraph that	inherits from Block Text.

       And with	the extension:

	      $	pandoc test/docx/custom-style-reference.docx -f	docx+styles -t markdown

	      ::: {custom-style="First Paragraph"}
	      This is some text.
	      :::

	      ::: {custom-style="Body Text"}
	      This is text with	an [emphasized]{custom-style="Emphatic"} text style.
	      And this is text with a [strengthened]{custom-style="Strengthened"}
	      text style.
	      :::

	      ::: {custom-style="My Block Style"}
	      >	Here is	a styled paragraph that	inherits from Block Text.
	      :::

       With  these  custom styles, you can use your input document as a	refer-
       ence-doc	while creating docx output (see	below),	and maintain the  same
       styles in your input and	output files.

CUSTOM READERS AND WRITERS
       Pandoc  can be extended with custom readers and writers written in Lua.
       (Pandoc includes	a Lua interpreter, so Lua need not be installed	 sepa-
       rately.)

       To  use	a  custom reader or writer, simply specify the path to the Lua
       script in place of the input or output format.  For example:

	      pandoc -t	data/sample.lua
	      pandoc -f	my_custom_markup_language.lua -t latex -s

       If the script is	not found relative to the working directory,  it  will
       be  sought  in  the custom subdirectory of the user data	directory (see
       --data-dir).

       A custom	reader is a Lua	script	that  defines  one  function,  Reader,
       which  takes  a	string as input	and returns a Pandoc AST.  See the Lua
       filters documentation for  documentation	 of  the  functions  that  are
       available  for  creating	 pandoc	 AST  elements.	 For parsing, the lpeg
       parsing library is available  by	 default.   To	see  a	sample	custom
       reader:

	      pandoc --print-default-data-file creole.lua

       If  you	want  your  custom  reader  to	have  access to	reader options
       (e.g. the tab stop setting), you	give your Reader function a second op-
       tions parameter.

       A custom	writer is a Lua	script that defines a function that  specifies
       how  to	render	each element in	a Pandoc AST.  See the djot-writer.lua
       for a full-featured example.

       Note that custom	writers	have no	default	template.  If you want to  use
       --standalone  with a custom writer, you will need to specify a template
       manually	using --template or add	a new default template with  the  name
       default.NAME_OF_CUSTOM_WRITER.lua to the	templates subdirectory of your
       user data directory (see	Templates).

REPRODUCIBLE BUILDS
       Some  of	 the  document formats pandoc targets (such as EPUB, docx, and
       ODT) include build timestamps in	the generated  document.   That	 means
       that  the files generated on successive builds will differ, even	if the
       source does not.	 To avoid this,	set the	SOURCE_DATE_EPOCH  environment
       variable,  and  the timestamp will be taken from	it instead of the cur-
       rent time.  SOURCE_DATE_EPOCH should contain an integer unix  timestamp
       (specifying the number of seconds since midnight	UTC January 1, 1970).

       For  reproducible  builds  with	LaTeX,	you  can  either  specify  the
       pdf-trailer-id in the metadata or leave it  undefined,  in  which  case
       pandoc	will   create	a   trailer-id	 based	 on   a	 hash  of  the
       SOURCE_DATE_EPOCH and the document's contents.

       Some document formats also include a unique identifier.	For EPUB, this
       can be set explicitly by	setting	the  identifier	 metadata  field  (see
       EPUB Metadata, above).

ACCESSIBLE PDFS	AND PDF	ARCHIVING STANDARDS
       PDF  is	a  flexible format, and	using PDF in certain contexts requires
       additional conventions.	For example, PDFs are not  accessible  by  de-
       fault;  they define how characters are placed on	a page but do not con-
       tain semantic information on the	content.  However, it is  possible  to
       generate	accessible PDFs, which use tagging to add semantic information
       to the document.

       Pandoc  defaults	 to  LaTeX to generate PDF.  LaTeX's \DocumentMetadata
       interface supports PDF standards	and tagging when using	LuaLaTeX;  set
       the  pdfstandard	 variable to enable this (see below).  For older LaTeX
       installations, alternative engines must be used.

       The PDF standards PDF/A and PDF/UA define further restrictions intended
       to optimize PDFs	for archiving and accessibility.  Tagging is  commonly
       used in combination with	these standards	to ensure best results.

       Note, however, that standard compliance depends on many things, includ-
       ing  the	 colorspace of embedded	images.	 Pandoc	cannot check this, and
       external	programs must be used to ensure	that  generated	 PDFs  are  in
       compliance.

   LaTeX
       Set  the	 pdfstandard  variable	to  produce  tagged PDFs conforming to
       PDF/A, PDF/X, or	PDF/UA standards.  For example:

	      pandoc -V	pdfstandard=ua-2 --pdf-engine=lualatex doc.md -o doc.pdf

       Multiple	standards can be combined:

	      ---
	      pdfstandard:
		- ua-2
		- a-4f
	      ---

       The required PDF	version	is inferred automatically.  This  feature  re-
       quires LuaLaTeX in TeX Live 2025	with LaTeX kernel 2025-06-01 or	newer.

   ConTeXt
       ConTeXt always produces tagged PDFs, but	the quality depends on the in-
       put.   The  default ConTeXt markup generated by pandoc is optimized for
       readability and reuse, not tagging.  Enable the tagging	format	exten-
       sion to force markup that is optimized for tagging.  For	example:

	      pandoc -t	context+tagging	doc.md -o doc.pdf

       A  recent context version should	be used, as older versions contained a
       bug that	lead to	invalid	PDF metadata.

   WeasyPrint
       The HTML-based engine  WeasyPrint  includes  experimental  support  for
       PDF/A and PDF/UA	since version 57.  Tagged PDFs can created with

	      pandoc --pdf-engine=weasyprint \
		     --pdf-engine-opt=--pdf-variant=pdf/ua-1 ...

       The  feature  is	experimental and standard compliance should not	be as-
       sumed.

   Prince XML
       The non-free HTML-to-PDF	converter prince  has  extensive  support  for
       various PDF standards as	well as	tagging.  E.g.:

	      pandoc --pdf-engine=prince \
		     --pdf-engine-opt=--tagged-pdf ...

       See the prince documentation for	more info.

   Typst
       Typst 0.12 can produce PDF/A-2b:

	      pandoc --pdf-engine=typst	--pdf-engine-opt=--pdf-standard=a-2b ...

   Word	Processors
       Word processors like LibreOffice	and MS Word can	also be	used to	gener-
       ate standardized	and tagged PDF output.	Pandoc does not	support	direct
       conversions via these tools.  However, pandoc can convert a document to
       a  docx or odt file, which can then be opened and converted to PDF with
       the respective word processor.  See the documentation for Word and  Li-
       breOffice.

RUNNING	PANDOC AS A WEB	SERVER
       If  you	rename (or symlink) the	pandoc executable to pandoc-server, or
       if you call pandoc with server as the first argument, it	will start  up
       a  web server with a JSON API.  This server exposes most	of the conver-
       sion functionality of pandoc.  For full	documentation,	see  the  pan-
       doc-server man page.

       If  you rename (or symlink) the pandoc executable to pandoc-server.cgi,
       it will function	as a  CGI  program  exposing  the  same	 API  as  pan-
       doc-server.

       pandoc-server  is  designed  to	be maximally secure; it	uses Haskell's
       type system to provide strong guarantees	that no	I/O will be  performed
       on the server during pandoc conversions.

RUNNING	PANDOC AS A LUA	INTERPRETER
       Calling	the pandoc executable under the	name pandoc-lua	or with	lua as
       the first argument will make it function	as  a  standalone  Lua	inter-
       preter.	The behavior is	mostly identical to that of the	standalone lua
       executable,  version  5.4.  All pandoc.*	packages, as well as the pack-
       ages re and lpeg, are available via global variables.  Furthermore, the
       globals PANDOC_VERSION, PANDOC_STATE, and PANDOC_API_VERSION are	set at
       startup.	 For full documentation, see the pandoc-lua man	page.

A NOTE ON SECURITY
       1. Although pandoc itself will not create or  modify  any  files	 other
	  than	those you explicitly ask it create (with the exception of tem-
	  porary files used in producing PDFs),	 a  filter  or	custom	writer
	  could	 in  principle	do anything on your file system.  Please audit
	  filters and custom writers very carefully before using them.

       2. Several input	formats	(including LaTeX, Org, RST, and	Typst) support
	  include directives that allow	the contents of	a file to be  included
	  in  the  output.   An	untrusted attacker could use these to view the
	  contents of files on the file	system.	 (Using	the  --sandbox	option
	  can protect against this threat.)

       3. Several  output  formats  (including RTF, FB2, HTML with --self-con-
	  tained, EPUB,	Docx, and ODT) will embed encoded or raw  images  into
	  the  output  file.  An untrusted attacker could exploit this to view
	  the contents of non-image files on  the  file	 system.   (Using  the
	  --sandbox option can protect against this threat, but	will also pre-
	  vent including images	in these formats.)

       4. In  reading  HTML files, pandoc will attempt to include the contents
	  of iframe elements by	fetching content from the local	 file  or  URL
	  specified  by	src.  If untrusted HTML	is processed on	a server, this
	  has the potential to reveal anything readable	by the process running
	  the server.  Using the -f html+raw_html will mitigate	this threat by
	  causing the whole iframe to be parsed	as a raw  HTML	block.	 Using
	  --sandbox will also protect against the threat.

       5. If  your  application	 uses pandoc as	a Haskell library (rather than
	  shelling out to the executable), it is possible to use it in a  mode
	  that	fully  isolates	 pandoc	 from your file	system,	by running the
	  pandoc operations in the PandocPure monad.  See the  document	 Using
	  the  pandoc  API  for	more details.  (This corresponds to the	use of
	  the --sandbox	option on the command line.)

       6. Pandoc's parsers can exhibit pathological performance	on some	corner
	  cases.  It is	wise to	put any	pandoc operations under	a timeout,  to
	  avoid	 DOS  attacks that exploit these issues.  If you are using the
	  pandoc executable, you can add the command line options +RTS	-M512M
	  -RTS	(for  example) to limit	the heap size to 512MB.	 Note that the
	  commonmark parser (including commonmark_x and	gfm) is	much less vul-
	  nerable to pathological performance than the markdown	parser,	so  it
	  is a better choice when processing untrusted input.

       7. The  HTML  generated	by  pandoc  is	not guaranteed to be safe.  If
	  raw_html is enabled for the Markdown input, users can	 inject	 arbi-
	  trary	HTML.  Even if raw_html	is disabled, users can include danger-
	  ous  content in URLs and attributes.	To be safe, you	should run all
	  HTML generated from untrusted	user input through an HTML sanitizer.

AUTHORS
       Copyright 2006-2024 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.)
       For a full list of contributors,	see the	file AUTHORS.md	in the	pandoc
       source code.

       The   Pandoc   source   code  may  be  downloaded  from	<https://hack-
       age.haskell.org/package/pandoc>	or  <https://github.com/jgm/pandoc/re-
       leases>.	 Further documentation is available at <https://pandoc.org>.

pandoc 3.9.0.2			  2026-03-19			     pandoc(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=pandoc&sektion=1&manpath=FreeBSD+15.1-RELEASE+and+Ports>

home | help