diff --git a/README b/README
--- a/README
+++ b/README
@@ -138,7 +138,7 @@
     `json` (JSON version of native AST), `markdown` (markdown),
     `textile` (Textile), `rst` (reStructuredText), `html` (HTML),
     or `latex` (LaTeX).  If `+lhs` is appended to `markdown`, `rst`,
-    or `latex`, the input will be treated as literate Haskell source:
+    `latex`, the input will be treated as literate Haskell source:
     see [Literate Haskell support](#literate-haskell-support),
     below.
 
@@ -156,8 +156,8 @@
     slide show), or `rtf` (rich text format). Note that `odt` and `epub`
     output will not be directed to *stdout*; an output filename must
     be specified using the `-o/--output` option. If `+lhs` is appended
-    to `markdown`, `rst`, `latex`, `html`, or `html5`, the output will
-    be rendered as literate Haskell source: see [Literate Haskell
+    to `markdown`, `rst`, `latex`, `beamer`, `html`, or `html5`, the output
+    will be rendered as literate Haskell source: see [Literate Haskell
     support](#literate-haskell-support), below.
 
 `-o` *FILE*, `--output=`*FILE*
@@ -256,12 +256,13 @@
     template appropriate for the output format will be used (see
     `-D/--print-default-template`).
 
-`-V` *KEY=VAL*, `--variable=`*KEY:VAL*
+`-V` *KEY[=VAL]*, `--variable=`*KEY[:VAL]*
 :   Set the template variable *KEY* to the value *VAL* when rendering the
     document in standalone mode. This is generally only useful when the
     `--template` option is used to specify a custom template, since
     pandoc automatically sets the variables used in the default
-    templates.
+    templates.  If no *VAL* is specified, the key will be given the
+    value `true`.
 
 `-D` *FORMAT*, `--print-default-template=`*FORMAT*
 :   Print the default template for an output *FORMAT*. (See `-t`
@@ -625,7 +626,11 @@
 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).
+directory (see `--data-dir`, above). *Exceptions:* For `odt` output,
+customize the `default.opendocument` template.  For `pdf` output,
+customize the `default.latex` template. For `epub` output, customize
+the `epub-page.html`, `epub-coverimage.html`, and `epub-titlepage.html`
+templates.
 
 Templates may contain *variables*.  Variable names are sequences of
 alphanumerics, `-`, and `_`, starting with a letter.  A variable name
@@ -668,7 +673,7 @@
     `http://www.w3.org/Talks/Tools/Slidy2`)
 `s5-url`
 :   base URL for S5 documents (defaults to `ui/default`)
-`font-size`
+`fontsize`
 :   font size (10pt, 11pt, 12pt) for LaTeX documents
 `documentclass`
 :   document class for LaTeX documents
@@ -834,7 +839,7 @@
 another. A link to this section, for example, might look like this:
 
     See the section on
-    [header identifiers][#header-identifiers-in-html].
+    [header identifiers](#header-identifiers-in-html).
 
 Note, however, that this method of providing links to sections works
 only in HTML, LaTeX, and ConTeXt formats.
@@ -1534,10 +1539,12 @@
 Smart punctuation
 -----------------
 
+*Pandoc extension*.
+
 If the `--smart` option is specified, pandoc will produce typographically
-correct output, converting straight quotes to curly quotes, `---` and `--`
-to Em-dashes, and `...` to ellipses. Nonbreaking spaces are inserted after
-certain abbreviations, such as "Mr."
+correct output, converting straight quotes to curly quotes, `---` to
+em-dashes, `--` to en-dashes, and `...` to ellipses. Nonbreaking spaces
+are inserted after certain abbreviations, such as "Mr."
 
 Note:  if your LaTeX template uses the `csquotes` package, pandoc will
 detect automatically this and use `\enquote{...}` for quoted text.
@@ -2162,8 +2169,9 @@
 ========================
 
 If you append `+lhs` to an appropriate input or output format (`markdown`,
-`rst`, or `latex` for input or output; `html` or `html5` for output only),
-pandoc will treat the document as literate Haskell source. This means that
+`rst`, or `latex` for input or output; `beamer`, `html` or `html5` for
+output only), pandoc will treat the document as literate Haskell source.
+This means that
 
   - In markdown input, "bird track" sections will be parsed as Haskell
     code rather than block quotations.  Text between `\begin{code}`
diff --git a/Setup.hs b/Setup.hs
--- a/Setup.hs
+++ b/Setup.hs
@@ -8,7 +8,7 @@
 import Distribution.Verbosity ( Verbosity, silent )
 import Distribution.Simple.GHC (ghcPackageDbOptions)
 import Distribution.Simple.InstallDirs (mandir, bindir, CopyDest (NoCopyDest))
-import Distribution.Simple.Utils (copyFiles)
+import Distribution.Simple.Utils (installOrdinaryFiles)
 import Control.Exception ( bracket_ )
 import Control.Monad ( unless )
 import System.Process ( rawSystem, runCommand, waitForProcess )
@@ -86,7 +86,7 @@
 installManpages :: PackageDescription -> LocalBuildInfo
                 -> Verbosity -> CopyDest -> IO ()
 installManpages pkg lbi verbosity copy =
-  copyFiles verbosity (mandir (absoluteInstallDirs pkg lbi copy))
+  installOrdinaryFiles verbosity (mandir (absoluteInstallDirs pkg lbi copy))
              (zip (repeat manDir) manpages)
 
 -- | Returns a list of 'dependencies' that have been modified after 'file'.
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,3 +1,62 @@
+pandoc (1.9.1.2)
+
+  * Added `beamer+lhs` as output format.
+
+  * Don't escape `<` in `<style>` tags with `--self-contained`.
+    This fixes a bug which prevented highlighting from working
+    when using `--self-contained`.
+
+  * PDF: run latex engine three times if `--toc` specified.
+    This fixes page numbers in the table of contents.
+
+  * Docx writer: Added TableNormal style to tables.
+
+  * LaTeX math environment fixes. `aligned` is now used instead of
+    the nonexistent `aligned*`. `multline` instead of the nonexistent
+    `multiline`.
+
+  * LaTeX writer: Use `\textasciitilde` for literal `~`.
+
+  * HTML writer: Don't escape contents of EQ tags with --gladtex.
+    This fixes a regression from 1.8.
+
+  * Use `<q>` tags for Quoted items for HTML5 output.
+    The quote style can be changed by modifying the template
+    or including a css file. A default quote style is included.
+
+  * LaTeX reader: Fixed accents (\~{a}, `\c{c}`).
+    Correctly handle \^{}. Support "minted" as a LaTeX verbatim block.
+
+  * Updated LaTeX template for better language support.
+    Use `polyglossia` instead of `babel` with xetex.
+    Set `lang` as documentclass option.
+    `\setmainlanguage` will use the last of a comma-separated
+    list of languages. Thanks to François Gannaz.
+
+  * Fixed default LaTeX template so `\euro` and `€` work.  The
+    `eurosym` package is needed if you are using pdflatex.
+
+  * Fixed escaping of period in man writer (thanks to Michael Thompson).
+
+  * Fixed list label positions in beamer.
+
+  * Set `mainlang` variable in context writer.
+    This parallels behavior of latex writer.  `mainlang` is the last
+    of a comma-separated list of languages in lang.
+
+  * EPUB language metadat: convert e.g. `en_US` from locale to `en-US`.
+
+  * Changed `-V` so that you can specify a key without a value.
+    Such keys get the value `true`.
+
+  * Fixed permissions on installed man pages - thanks Magnus Therning.
+
+  * Windows installer: require XP or higher.  The installer is
+    now compiled on a Windows 7 machine, which fixes a problem
+    using citation functions on Windows 7.
+
+  * OSX package: Check for 64-bit Intel CPU before installing.
+
 pandoc (1.9.1.1)
 
   * Better handling of raw latex environments in markdown.  Now
diff --git a/man/man1/pandoc.1 b/man/man1/pandoc.1
--- a/man/man1/pandoc.1
+++ b/man/man1/pandoc.1
@@ -1,1255 +0,0 @@
-.TH PANDOC 1 "January 27, 2012" "Pandoc"
-.SH NAME
-pandoc - general markup converter
-.SH SYNOPSIS
-.PP
-pandoc [\f[I]options\f[]] [\f[I]input-file\f[]]...
-.SH DESCRIPTION
-.PP
-Pandoc is a Haskell library for converting from one markup format to
-another, and a command-line tool that uses this library.
-It can read markdown and (subsets of) Textile, reStructuredText, HTML,
-and LaTeX; and it can write plain text, markdown, reStructuredText,
-XHTML, HTML 5, LaTeX (including beamer slide shows), ConTeXt, RTF,
-DocBook XML, OpenDocument XML, ODT, Word docx, GNU Texinfo, MediaWiki
-markup, EPUB, Textile, groff man pages, Emacs Org-Mode, AsciiDoc, and
-Slidy, DZSlides, or S5 HTML slide shows.
-It can also produce PDF output on systems where LaTeX is installed.
-.PP
-Pandoc\[aq]s enhanced version of markdown includes syntax for footnotes,
-tables, flexible ordered lists, definition lists, delimited code blocks,
-superscript, subscript, strikeout, title blocks, automatic tables of
-contents, embedded LaTeX math, citations, and markdown inside HTML block
-elements.
-(These enhancements, described below under Pandoc\[aq]s markdown, can be
-disabled using the \f[C]--strict\f[] option.)
-.PP
-In contrast to most existing tools for converting markdown to HTML,
-which use regex substitutions, Pandoc has a modular design: it consists
-of a set of readers, which parse text in a given format and produce a
-native representation of the document, and a set of writers, which
-convert this native representation into a target format.
-Thus, adding an input or output format requires only adding a reader or
-writer.
-.SS Using \f[C]pandoc\f[]
-.PP
-If no \f[I]input-file\f[] is specified, input is read from
-\f[I]stdin\f[].
-Otherwise, the \f[I]input-files\f[] are concatenated (with a blank line
-between each) and used as input.
-Output goes to \f[I]stdout\f[] by default (though output to
-\f[I]stdout\f[] is disabled for the \f[C]odt\f[], \f[C]docx\f[], and
-\f[C]epub\f[] output formats).
-For output to a file, use the \f[C]-o\f[] option:
-.IP
-.nf
-\f[C]
-pandoc\ -o\ output.html\ input.txt
-\f[]
-.fi
-.PP
-Instead of a file, an absolute URI may be given.
-In this case pandoc will fetch the content using HTTP:
-.IP
-.nf
-\f[C]
-pandoc\ -f\ html\ -t\ markdown\ http://www.fsf.org
-\f[]
-.fi
-.PP
-If multiple input files are given, \f[C]pandoc\f[] will concatenate them
-all (with blank lines between them) before parsing.
-.PP
-The format of the input and output can be specified explicitly using
-command-line options.
-The input format can be specified using the \f[C]-r/--read\f[] or
-\f[C]-f/--from\f[] options, the output format using the
-\f[C]-w/--write\f[] or \f[C]-t/--to\f[] options.
-Thus, to convert \f[C]hello.txt\f[] from markdown to LaTeX, you could
-type:
-.IP
-.nf
-\f[C]
-pandoc\ -f\ markdown\ -t\ latex\ hello.txt
-\f[]
-.fi
-.PP
-To convert \f[C]hello.html\f[] from html to markdown:
-.IP
-.nf
-\f[C]
-pandoc\ -f\ html\ -t\ markdown\ hello.html
-\f[]
-.fi
-.PP
-Supported output formats are listed below under the \f[C]-t/--to\f[]
-option.
-Supported input formats are listed below under the \f[C]-f/--from\f[]
-option.
-Note that the \f[C]rst\f[], \f[C]textile\f[], \f[C]latex\f[], and
-\f[C]html\f[] readers are not complete; there are some constructs that
-they do not parse.
-.PP
-If the input or output format is not specified explicitly,
-\f[C]pandoc\f[] will attempt to guess it from the extensions of the
-input and output filenames.
-Thus, for example,
-.IP
-.nf
-\f[C]
-pandoc\ -o\ hello.tex\ hello.txt
-\f[]
-.fi
-.PP
-will convert \f[C]hello.txt\f[] from markdown to LaTeX.
-If no output file is specified (so that output goes to \f[I]stdout\f[]),
-or if the output file\[aq]s extension is unknown, the output format will
-default to HTML.
-If no input file is specified (so that input comes from \f[I]stdin\f[]),
-or if the input files\[aq] extensions are unknown, the input format will
-be assumed to be markdown unless explicitly specified.
-.PP
-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 \f[C]iconv\f[]:
-.IP
-.nf
-\f[C]
-iconv\ -t\ utf-8\ input.txt\ |\ pandoc\ |\ iconv\ -f\ utf-8
-\f[]
-.fi
-.SS Creating a PDF
-.PP
-Earlier versions of pandoc came with a program, \f[C]markdown2pdf\f[],
-that used pandoc and pdflatex to produce a PDF.
-This is no longer needed, since \f[C]pandoc\f[] can now produce
-\f[C]pdf\f[] output itself.
-To produce a PDF, simply specify an output file with a \f[C].pdf\f[]
-extension.
-Pandoc will create a latex file and use pdflatex (or another engine, see
-\f[C]--latex-engine\f[]) to convert it to PDF:
-.IP
-.nf
-\f[C]
-pandoc\ test.txt\ -o\ test.pdf
-\f[]
-.fi
-.PP
-Production of a PDF requires that a LaTeX engine be installed (see
-\f[C]--latex-engine\f[], below), and assumes that the following LaTeX
-packages are available: \f[C]amssymb\f[], \f[C]amsmath\f[],
-\f[C]ifxetex\f[], \f[C]ifluatex\f[], \f[C]listings\f[] (if the
-\f[C]--listings\f[] option is used), \f[C]fancyvrb\f[],
-\f[C]enumerate\f[], \f[C]ctable\f[], \f[C]url\f[], \f[C]graphicx\f[],
-\f[C]hyperref\f[], \f[C]ulem\f[], \f[C]babel\f[] (if the \f[C]lang\f[]
-variable is set), \f[C]fontspec\f[] (if \f[C]xelatex\f[] or
-\f[C]lualatex\f[] is used as the LaTeX engine), \f[C]xltxtra\f[] and
-\f[C]xunicode\f[] (if \f[C]xelatex\f[] is used).
-.SS \f[C]hsmarkdown\f[]
-.PP
-A user who wants a drop-in replacement for \f[C]Markdown.pl\f[] may
-create a symbolic link to the \f[C]pandoc\f[] executable called
-\f[C]hsmarkdown\f[].
-When invoked under the name \f[C]hsmarkdown\f[], \f[C]pandoc\f[] will
-behave as if the \f[C]--strict\f[] flag had been selected, and no
-command-line options will be recognized.
-However, this approach does not work under Cygwin, due to problems with
-its simulation of symbolic links.
-.SH OPTIONS
-.SS General options
-.TP
-.B \f[C]-f\f[] \f[I]FORMAT\f[], \f[C]-r\f[] \f[I]FORMAT\f[],
-\f[C]--from=\f[]\f[I]FORMAT\f[], \f[C]--read=\f[]\f[I]FORMAT\f[]
-Specify input format.
-\f[I]FORMAT\f[] can be \f[C]native\f[] (native Haskell), \f[C]json\f[]
-(JSON version of native AST), \f[C]markdown\f[] (markdown),
-\f[C]textile\f[] (Textile), \f[C]rst\f[] (reStructuredText),
-\f[C]html\f[] (HTML), or \f[C]latex\f[] (LaTeX).
-If \f[C]+lhs\f[] is appended to \f[C]markdown\f[], \f[C]rst\f[], or
-\f[C]latex\f[], the input will be treated as literate Haskell source:
-see Literate Haskell support, below.
-.RS
-.RE
-.TP
-.B \f[C]-t\f[] \f[I]FORMAT\f[], \f[C]-w\f[] \f[I]FORMAT\f[],
-\f[C]--to=\f[]\f[I]FORMAT\f[], \f[C]--write=\f[]\f[I]FORMAT\f[]
-Specify output format.
-\f[I]FORMAT\f[] can be \f[C]native\f[] (native Haskell), \f[C]json\f[]
-(JSON version of native AST), \f[C]plain\f[] (plain text),
-\f[C]markdown\f[] (markdown), \f[C]rst\f[] (reStructuredText),
-\f[C]html\f[] (XHTML 1), \f[C]html5\f[] (HTML 5), \f[C]latex\f[]
-(LaTeX), \f[C]beamer\f[] (LaTeX beamer slide show), \f[C]context\f[]
-(ConTeXt), \f[C]man\f[] (groff man), \f[C]mediawiki\f[] (MediaWiki
-markup), \f[C]textile\f[] (Textile), \f[C]org\f[] (Emacs Org-Mode),
-\f[C]texinfo\f[] (GNU Texinfo), \f[C]docbook\f[] (DocBook XML),
-\f[C]opendocument\f[] (OpenDocument XML), \f[C]odt\f[] (OpenOffice text
-document), \f[C]docx\f[] (Word docx), \f[C]epub\f[] (EPUB book),
-\f[C]asciidoc\f[] (AsciiDoc), \f[C]slidy\f[] (Slidy HTML and javascript
-slide show), \f[C]dzslides\f[] (HTML5 + javascript slide show),
-\f[C]s5\f[] (S5 HTML and javascript slide show), or \f[C]rtf\f[] (rich
-text format).
-Note that \f[C]odt\f[] and \f[C]epub\f[] output will not be directed to
-\f[I]stdout\f[]; an output filename must be specified using the
-\f[C]-o/--output\f[] option.
-If \f[C]+lhs\f[] is appended to \f[C]markdown\f[], \f[C]rst\f[],
-\f[C]latex\f[], \f[C]html\f[], or \f[C]html5\f[], the output will be
-rendered as literate Haskell source: see Literate Haskell support,
-below.
-.RS
-.RE
-.TP
-.B \f[C]-o\f[] \f[I]FILE\f[], \f[C]--output=\f[]\f[I]FILE\f[]
-Write output to \f[I]FILE\f[] instead of \f[I]stdout\f[].
-If \f[I]FILE\f[] is \f[C]-\f[], output will go to \f[I]stdout\f[].
-(Exception: if the output format is \f[C]odt\f[], \f[C]docx\f[], or
-\f[C]epub\f[], output to stdout is disabled.)
-.RS
-.RE
-.TP
-.B \f[C]--data-dir=\f[]\f[I]DIRECTORY\f[]
-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:
-.RS
-.IP
-.nf
-\f[C]
-$HOME/.pandoc
-\f[]
-.fi
-.PP
-in unix and
-.IP
-.nf
-\f[C]
-C:\\Documents\ And\ Settings\\USERNAME\\Application\ Data\\pandoc
-\f[]
-.fi
-.PP
-in Windows.
-A \f[C]reference.odt\f[], \f[C]reference.docx\f[], \f[C]default.csl\f[],
-\f[C]epub.css\f[], \f[C]templates\f[], \f[C]slidy\f[], or \f[C]s5\f[]
-directory placed in this directory will override pandoc\[aq]s normal
-defaults.
-.RE
-.TP
-.B \f[C]-v\f[], \f[C]--version\f[]
-Print version.
-.RS
-.RE
-.TP
-.B \f[C]-h\f[], \f[C]--help\f[]
-Show usage message.
-.RS
-.RE
-.SS Reader options
-.TP
-.B \f[C]--strict\f[]
-Use strict markdown syntax, with no pandoc extensions or variants.
-When the input format is HTML, this means that constructs that have no
-equivalents in standard markdown (e.g.
-definition lists or strikeout text) will be parsed as raw HTML.
-.RS
-.RE
-.TP
-.B \f[C]-R\f[], \f[C]--parse-raw\f[]
-Parse untranslatable HTML codes and LaTeX environments as raw HTML or
-LaTeX, instead of ignoring them.
-Affects only HTML and LaTeX input.
-Raw HTML can be printed in markdown, reStructuredText, HTML, Slidy,
-DZSlides, and S5 output; raw LaTeX can be printed in markdown,
-reStructuredText, LaTeX, and ConTeXt output.
-The default is for the readers to omit untranslatable HTML codes and
-LaTeX environments.
-(The LaTeX reader does pass through untranslatable LaTeX
-\f[I]commands\f[], even if \f[C]-R\f[] is not specified.)
-.RS
-.RE
-.TP
-.B \f[C]-S\f[], \f[C]--smart\f[]
-Produce typographically correct output, converting straight quotes to
-curly quotes, \f[C]---\f[] to em-dashes, \f[C]--\f[] to en-dashes, and
-\f[C]...\f[] to ellipses.
-Nonbreaking spaces are inserted after certain abbreviations, such as
-"Mr." (Note: This option is significant only when the input format is
-\f[C]markdown\f[] or \f[C]textile\f[].
-It is selected automatically when the input format is \f[C]textile\f[]
-or the output format is \f[C]latex\f[] or \f[C]context\f[].)
-.RS
-.RE
-.TP
-.B \f[C]--old-dashes\f[]
-Selects the pandoc <= 1.8.2.1 behavior for parsing smart dashes:
-\f[C]-\f[] before a numeral is an en-dash, and \f[C]--\f[] is an
-em-dash.
-This option is selected automatically for \f[C]textile\f[] input.
-.RS
-.RE
-.TP
-.B \f[C]--base-header-level=\f[]\f[I]NUMBER\f[]
-Specify the base level for headers (defaults to 1).
-.RS
-.RE
-.TP
-.B \f[C]--indented-code-classes=\f[]\f[I]CLASSES\f[]
-Specify classes to use for indented code blocks--for example,
-\f[C]perl,numberLines\f[] or \f[C]haskell\f[].
-Multiple classes may be separated by spaces or commas.
-.RS
-.RE
-.TP
-.B \f[C]--normalize\f[]
-Normalize the document after reading: merge adjacent \f[C]Str\f[] or
-\f[C]Emph\f[] elements, for example, and remove repeated
-\f[C]Space\f[]s.
-.RS
-.RE
-.TP
-.B \f[C]-p\f[], \f[C]--preserve-tabs\f[]
-Preserve tabs instead of converting them to spaces (the default).
-.RS
-.RE
-.TP
-.B \f[C]--tab-stop=\f[]\f[I]NUMBER\f[]
-Specify the number of spaces per tab (default is 4).
-.RS
-.RE
-.SS General writer options
-.TP
-.B \f[C]-s\f[], \f[C]--standalone\f[]
-Produce output with an appropriate header and footer (e.g.
-a standalone HTML, LaTeX, or RTF file, not a fragment).
-This option is set automatically for \f[C]pdf\f[], \f[C]epub\f[],
-\f[C]docx\f[], and \f[C]odt\f[] output.
-.RS
-.RE
-.TP
-.B \f[C]--template=\f[]\f[I]FILE\f[]
-Use \f[I]FILE\f[] as a custom template for the generated document.
-Implies \f[C]--standalone\f[].
-See Templates below for a description of template syntax.
-If no extension is specified, an extension corresponding to the writer
-will be added, so that \f[C]--template=special\f[] looks for
-\f[C]special.html\f[] for HTML output.
-If the template is not found, pandoc will search for it in the user data
-directory (see \f[C]--data-dir\f[]).
-If this option is not used, a default template appropriate for the
-output format will be used (see \f[C]-D/--print-default-template\f[]).
-.RS
-.RE
-.TP
-.B \f[C]-V\f[] \f[I]KEY=VAL\f[], \f[C]--variable=\f[]\f[I]KEY:VAL\f[]
-Set the template variable \f[I]KEY\f[] to the value \f[I]VAL\f[] when
-rendering the document in standalone mode.
-This is generally only useful when the \f[C]--template\f[] option is
-used to specify a custom template, since pandoc automatically sets the
-variables used in the default templates.
-.RS
-.RE
-.TP
-.B \f[C]-D\f[] \f[I]FORMAT\f[],
-\f[C]--print-default-template=\f[]\f[I]FORMAT\f[]
-Print the default template for an output \f[I]FORMAT\f[].
-(See \f[C]-t\f[] for a list of possible \f[I]FORMAT\f[]s.)
-.RS
-.RE
-.TP
-.B \f[C]--no-wrap\f[]
-Disable text wrapping in output.
-By default, text is wrapped appropriately for the output format.
-.RS
-.RE
-.TP
-.B \f[C]--columns\f[]=\f[I]NUMBER\f[]
-Specify length of lines in characters (for text wrapping).
-.RS
-.RE
-.TP
-.B \f[C]--toc\f[], \f[C]--table-of-contents\f[]
-Include an automatically generated table of contents (or, in the case of
-\f[C]latex\f[], \f[C]context\f[], and \f[C]rst\f[], an instruction to
-create one) in the output document.
-This option has no effect on \f[C]man\f[], \f[C]docbook\f[],
-\f[C]slidy\f[], or \f[C]s5\f[] output.
-.RS
-.RE
-.TP
-.B \f[C]--no-highlight\f[]
-Disables syntax highlighting for code blocks and inlines, even when a
-language attribute is given.
-.RS
-.RE
-.TP
-.B \f[C]--highlight-style\f[]=\f[I]STYLE\f[]
-Specifies the coloring style to be used in highlighted source code.
-Options are \f[C]pygments\f[] (the default), \f[C]kate\f[],
-\f[C]monochrome\f[], \f[C]espresso\f[], \f[C]haddock\f[], and
-\f[C]tango\f[].
-.RS
-.RE
-.TP
-.B \f[C]-H\f[] \f[I]FILE\f[], \f[C]--include-in-header=\f[]\f[I]FILE\f[]
-Include contents of \f[I]FILE\f[], verbatim, at the end of the header.
-This can be used, for example, to include special CSS or javascript in
-HTML documents.
-This option can be used repeatedly to include multiple files in the
-header.
-They will be included in the order specified.
-Implies \f[C]--standalone\f[].
-.RS
-.RE
-.TP
-.B \f[C]-B\f[] \f[I]FILE\f[],
-\f[C]--include-before-body=\f[]\f[I]FILE\f[]
-Include contents of \f[I]FILE\f[], verbatim, at the beginning of the
-document body (e.g.
-after the \f[C]<body>\f[] tag in HTML, or the \f[C]\\begin{document}\f[]
-command in LaTeX).
-This can be used to include navigation bars or banners in HTML
-documents.
-This option can be used repeatedly to include multiple files.
-They will be included in the order specified.
-Implies \f[C]--standalone\f[].
-.RS
-.RE
-.TP
-.B \f[C]-A\f[] \f[I]FILE\f[],
-\f[C]--include-after-body=\f[]\f[I]FILE\f[]
-Include contents of \f[I]FILE\f[], verbatim, at the end of the document
-body (before the \f[C]</body>\f[] tag in HTML, or the
-\f[C]\\end{document}\f[] command in LaTeX).
-This option can be be used repeatedly to include multiple files.
-They will be included in the order specified.
-Implies \f[C]--standalone\f[].
-.RS
-.RE
-.SS Options affecting specific writers
-.TP
-.B \f[C]--self-contained\f[]
-Produce a standalone HTML file with no external dependencies, using
-\f[C]data:\f[] 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
-\f[C]html\f[], \f[C]html5\f[], \f[C]html+lhs\f[], \f[C]html5+lhs\f[],
-\f[C]s5\f[], \f[C]slidy\f[], and \f[C]dzslides\f[].
-Scripts, images, and stylesheets at absolute URLs will be downloaded;
-those at relative URLs will be sought first relative to the working
-directory, then relative to the user data directory (see
-\f[C]--data-dir\f[]), and finally relative to pandoc\[aq]s default data
-directory.
-.RS
-.RE
-.TP
-.B \f[C]--offline\f[]
-Deprecated synonym for \f[C]--self-contained\f[].
-.RS
-.RE
-.TP
-.B \f[C]-5\f[], \f[C]--html5\f[]
-Produce HTML5 instead of HTML4.
-This option has no effect for writers other than \f[C]html\f[].
-(\f[I]Deprecated:\f[] Use the \f[C]html5\f[] output format instead.)
-.RS
-.RE
-.TP
-.B \f[C]--ascii\f[]
-Use only ascii characters in output.
-Currently supported only for HTML output (which uses numerical entities
-instead of UTF-8 when this option is selected).
-.RS
-.RE
-.TP
-.B \f[C]--reference-links\f[]
-Use reference-style links, rather than inline links, in writing markdown
-or reStructuredText.
-By default inline links are used.
-.RS
-.RE
-.TP
-.B \f[C]--atx-headers\f[]
-Use ATX style headers in markdown output.
-The default is to use setext-style headers for levels 1-2, and then ATX
-headers.
-.RS
-.RE
-.TP
-.B \f[C]--chapters\f[]
-Treat top-level headers as chapters in LaTeX, ConTeXt, and DocBook
-output.
-When the LaTeX template uses the report, book, or memoir class, this
-option is implied.
-If \f[C]--beamer\f[] is used, top-level headers will become
-\f[C]\\part{..}\f[].
-.RS
-.RE
-.TP
-.B \f[C]-N\f[], \f[C]--number-sections\f[]
-Number section headings in LaTeX, ConTeXt, or HTML output.
-By default, sections are not numbered.
-.RS
-.RE
-.TP
-.B \f[C]--listings\f[]
-Use listings package for LaTeX code blocks
-.RS
-.RE
-.TP
-.B \f[C]-i\f[], \f[C]--incremental\f[]
-Make list items in slide shows display incrementally (one by one).
-The default is for lists to be displayed all at once.
-.RS
-.RE
-.TP
-.B \f[C]--slide-level\f[]=\f[I]NUMBER\f[]
-Specifies that headers with the specified level create slides (for
-\f[C]beamer\f[], \f[C]s5\f[], \f[C]slidy\f[], \f[C]dzslides\f[]).
-Headers above this level in the hierarchy are used to divide the slide
-show into sections; headers below this level create subheads within a
-slide.
-The default is to set the slide level based on the contents of the
-document; see Structuring the slide show, below.
-.RS
-.RE
-.TP
-.B \f[C]--section-divs\f[]
-Wrap sections in \f[C]<div>\f[] tags (or \f[C]<section>\f[] tags in
-HTML5), and attach identifiers to the enclosing \f[C]<div>\f[] (or
-\f[C]<section>\f[]) rather than the header itself.
-See Section identifiers, below.
-.RS
-.RE
-.TP
-.B \f[C]--email-obfuscation=\f[]\f[I]none|javascript|references\f[]
-Specify a method for obfuscating \f[C]mailto:\f[] links in HTML
-documents.
-\f[I]none\f[] leaves \f[C]mailto:\f[] links as they are.
-\f[I]javascript\f[] obfuscates them using javascript.
-\f[I]references\f[] obfuscates them by printing their letters as decimal
-or hexadecimal character references.
-If \f[C]--strict\f[] is specified, \f[I]references\f[] is used
-regardless of the presence of this option.
-.RS
-.RE
-.TP
-.B \f[C]--id-prefix\f[]=\f[I]STRING\f[]
-Specify a prefix to be added to all automatically generated identifiers
-in HTML output.
-This is useful for preventing duplicate identifiers when generating
-fragments to be included in other pages.
-.RS
-.RE
-.TP
-.B \f[C]-T\f[] \f[I]STRING\f[], \f[C]--title-prefix=\f[]\f[I]STRING\f[]
-Specify \f[I]STRING\f[] 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 \f[C]--standalone\f[].
-.RS
-.RE
-.TP
-.B \f[C]-c\f[] \f[I]URL\f[], \f[C]--css=\f[]\f[I]URL\f[]
-Link to a CSS style sheet.
-.RS
-.RE
-.TP
-.B \f[C]--reference-odt=\f[]\f[I]FILE\f[]
-Use the specified file as a style reference in producing an ODT.
-For best results, the reference ODT should be a modified version of an
-ODT produced using pandoc.
-The contents of the reference ODT are ignored, but its stylesheets are
-used in the new ODT.
-If no reference ODT is specified on the command line, pandoc will look
-for a file \f[C]reference.odt\f[] in the user data directory (see
-\f[C]--data-dir\f[]).
-If this is not found either, sensible defaults will be used.
-.RS
-.RE
-.TP
-.B \f[C]--reference-docx=\f[]\f[I]FILE\f[]
-Use the specified file as a style reference in producing a docx file.
-For best results, the reference docx should be a modified version of a
-docx file produced using pandoc.
-The contents of the reference docx are ignored, but its stylesheets are
-used in the new docx.
-If no reference docx is specified on the command line, pandoc will look
-for a file \f[C]reference.docx\f[] in the user data directory (see
-\f[C]--data-dir\f[]).
-If this is not found either, sensible defaults will be used.
-.RS
-.RE
-.TP
-.B \f[C]--epub-stylesheet=\f[]\f[I]FILE\f[]
-Use the specified CSS file to style the EPUB.
-If no stylesheet is specified, pandoc will look for a file
-\f[C]epub.css\f[] in the user data directory (see \f[C]--data-dir\f[]).
-If it is not found there, sensible defaults will be used.
-.RS
-.RE
-.TP
-.B \f[C]--epub-cover-image=\f[]\f[I]FILE\f[]
-Use the specified image as the EPUB cover.
-It is recommended that the image be less than 1000px in width and
-height.
-.RS
-.RE
-.TP
-.B \f[C]--epub-metadata=\f[]\f[I]FILE\f[]
-Look in the specified XML file for metadata for the EPUB.
-The file should contain a series of Dublin Core elements, as documented
-at \f[C]http://dublincore.org/documents/dces/\f[].
-For example:
-.RS
-.IP
-.nf
-\f[C]
-\ <dc:rights>Creative\ Commons</dc:rights>
-\ <dc:language>es-AR</dc:language>
-\f[]
-.fi
-.PP
-By default, pandoc will include the following metadata elements:
-\f[C]<dc:title>\f[] (from the document title), \f[C]<dc:creator>\f[]
-(from the document authors), \f[C]<dc:date>\f[] (from the document date,
-which should be in ISO 8601 format), \f[C]<dc:language>\f[] (from the
-\f[C]lang\f[] variable, or, if is not set, the locale), and
-\f[C]<dc:identifier\ id="BookId">\f[] (a randomly generated UUID).
-Any of these may be overridden by elements in the metadata file.
-.RE
-.TP
-.B \f[C]--epub-embed-font=\f[]\f[I]FILE\f[]
-Embed the specified font in the EPUB.
-This option can be repeated to embed multiple fonts.
-To use embedded fonts, you will need to add declarations like the
-following to your CSS (see `\f[C]--epub-stylesheet\f[]):
-.RS
-.IP
-.nf
-\f[C]
-\@font-face\ {
-font-family:\ DejaVuSans;
-font-style:\ normal;
-font-weight:\ normal;
-src:url("DejaVuSans-Regular.ttf");
-}
-\@font-face\ {
-font-family:\ DejaVuSans;
-font-style:\ normal;
-font-weight:\ bold;
-src:url("DejaVuSans-Bold.ttf");
-}
-\@font-face\ {
-font-family:\ DejaVuSans;
-font-style:\ italic;
-font-weight:\ normal;
-src:url("DejaVuSans-Oblique.ttf");
-}
-\@font-face\ {
-font-family:\ DejaVuSans;
-font-style:\ italic;
-font-weight:\ bold;
-src:url("DejaVuSans-BoldOblique.ttf");
-}
-body\ {\ font-family:\ "DejaVuSans";\ }
-\f[]
-.fi
-.RE
-.TP
-.B \f[C]--latex-engine=\f[]\f[I]pdflatex|lualatex|xelatex\f[]
-Use the specified LaTeX engine when producing PDF output.
-The default is \f[C]pdflatex\f[].
-If the engine is not in your PATH, the full path of the engine may be
-specified here.
-.RS
-.RE
-.SS Citations
-.TP
-.B \f[C]--bibliography=\f[]\f[I]FILE\f[]
-Specify bibliography database to be used in resolving citations.
-The database type will be determined from the extension of
-\f[I]FILE\f[], which may be \f[C].mods\f[] (MODS format), \f[C].bib\f[]
-(BibTeX/BibLaTeX format), \f[C].ris\f[] (RIS format), \f[C].enl\f[]
-(EndNote format), \f[C].xml\f[] (EndNote XML format), \f[C].wos\f[] (ISI
-format), \f[C].medline\f[] (MEDLINE format), \f[C].copac\f[] (Copac
-format), or \f[C].json\f[] (citeproc JSON).
-If you want to use multiple bibliographies, just use this option
-repeatedly.
-.RS
-.RE
-.TP
-.B \f[C]--csl=\f[]\f[I]FILE\f[]
-Specify CSL style to be used in formatting citations and the
-bibliography.
-If \f[I]FILE\f[] is not found, pandoc will look for it in
-.RS
-.IP
-.nf
-\f[C]
-$HOME/.csl
-\f[]
-.fi
-.PP
-in unix and
-.IP
-.nf
-\f[C]
-C:\\Documents\ And\ Settings\\USERNAME\\Application\ Data\\csl
-\f[]
-.fi
-.PP
-in Windows.
-If the \f[C]--csl\f[] option is not specified, pandoc will use a default
-style: either \f[C]default.csl\f[] in the user data directory (see
-\f[C]--data-dir\f[]), or, if that is not present, the Chicago
-author-date style.
-.RE
-.TP
-.B \f[C]--citation-abbreviations=\f[]\f[I]FILE\f[]
-Specify a file containing abbreviations for journal titles and other
-bibliographic fields (indicated by setting \f[C]form="short"\f[] in the
-CSL node for the field).
-The format is described at
-\f[C]http://citationstylist.org/2011/10/19/abbreviations-for-zotero-test-release/\f[].
-Here is a short example:
-.RS
-.IP
-.nf
-\f[C]
-{\ "default":\ {
-\ \ \ \ "container-title":\ {
-\ \ \ \ \ \ \ \ \ \ \ \ "Lloyd\[aq]s\ Law\ Reports":\ "Lloyd\[aq]s\ Rep",
-\ \ \ \ \ \ \ \ \ \ \ \ "Estates\ Gazette":\ "EG",
-\ \ \ \ \ \ \ \ \ \ \ \ "Scots\ Law\ Times":\ "SLT"
-\ \ \ \ }
-\ \ }
-}
-\f[]
-.fi
-.RE
-.TP
-.B \f[C]--natbib\f[]
-Use natbib for citations in LaTeX output.
-.RS
-.RE
-.TP
-.B \f[C]--biblatex\f[]
-Use biblatex for citations in LaTeX output.
-.RS
-.RE
-.SS Math rendering in HTML
-.TP
-.B \f[C]-m\f[] [\f[I]URL\f[]], \f[C]--latexmathml\f[][=\f[I]URL\f[]]
-Use the LaTeXMathML script to display embedded TeX math in HTML output.
-To insert a link to a local copy of the \f[C]LaTeXMathML.js\f[] script,
-provide a \f[I]URL\f[].
-If no \f[I]URL\f[] is provided, the contents of the script will be
-inserted directly into the HTML header, preserving portability at the
-price of efficiency.
-If you plan to use math on several pages, it is much better to link to a
-copy of the script, so it can be cached.
-.RS
-.RE
-.TP
-.B \f[C]--mathml\f[][=\f[I]URL\f[]]
-Convert TeX math to MathML (in \f[C]docbook\f[] as well as \f[C]html\f[]
-and \f[C]html5\f[]).
-In standalone \f[C]html\f[] output, a small javascript (or a link to
-such a script if a \f[I]URL\f[] is supplied) will be inserted that
-allows the MathML to be viewed on some browsers.
-.RS
-.RE
-.TP
-.B \f[C]--jsmath\f[][=\f[I]URL\f[]]
-Use jsMath to display embedded TeX math in HTML output.
-The \f[I]URL\f[] should point to the jsMath load script (e.g.
-\f[C]jsMath/easy/load.js\f[]); if provided, it will be linked to in the
-header of standalone HTML documents.
-If a \f[I]URL\f[] is not provided, no link to the jsMath load script
-will be inserted; it is then up to the author to provide such a link in
-the HTML template.
-.RS
-.RE
-.TP
-.B \f[C]--mathjax\f[][=\f[I]URL\f[]]
-Use MathJax to display embedded TeX math in HTML output.
-The \f[I]URL\f[] should point to the \f[C]MathJax.js\f[] load script.
-If a \f[I]URL\f[] is not provided, a link to the MathJax CDN will be
-inserted.
-.RS
-.RE
-.TP
-.B \f[C]--gladtex\f[]
-Enclose TeX math in \f[C]<eq>\f[] tags in HTML output.
-These can then be processed by gladTeX to produce links to images of the
-typeset formulas.
-.RS
-.RE
-.TP
-.B \f[C]--mimetex\f[][=\f[I]URL\f[]]
-Render TeX math using the mimeTeX CGI script.
-If \f[I]URL\f[] is not specified, it is assumed that the script is at
-\f[C]/cgi-bin/mimetex.cgi\f[].
-.RS
-.RE
-.TP
-.B \f[C]--webtex\f[][=\f[I]URL\f[]]
-Render TeX formulas using an external script that converts TeX formulas
-to images.
-The formula will be concatenated with the URL provided.
-If \f[I]URL\f[] is not specified, the Google Chart API will be used.
-.RS
-.RE
-.SS Options for wrapper scripts
-.TP
-.B \f[C]--dump-args\f[]
-Print information about command-line arguments to \f[I]stdout\f[], then
-exit.
-This option is intended primarily for use in wrapper scripts.
-The first line of output contains the name of the output file specified
-with the \f[C]-o\f[] option, or \f[C]-\f[] (for \f[I]stdout\f[]) if no
-output file was specified.
-The remaining lines contain the command-line arguments, one per line, in
-the order they appear.
-These do not include regular Pandoc options and their arguments, but do
-include any options appearing after a \f[C]--\f[] separator at the end
-of the line.
-.RS
-.RE
-.TP
-.B \f[C]--ignore-args\f[]
-Ignore command-line arguments (for use in wrapper scripts).
-Regular Pandoc options are not ignored.
-Thus, for example,
-.RS
-.IP
-.nf
-\f[C]
-pandoc\ --ignore-args\ -o\ foo.html\ -s\ foo.txt\ --\ -e\ latin1
-\f[]
-.fi
-.PP
-is equivalent to
-.IP
-.nf
-\f[C]
-pandoc\ -o\ foo.html\ -s
-\f[]
-.fi
-.RE
-.SH TEMPLATES
-.PP
-When the \f[C]-s/--standalone\f[] 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
-.IP
-.nf
-\f[C]
-pandoc\ -D\ FORMAT
-\f[]
-.fi
-.PP
-where \f[C]FORMAT\f[] is the name of the output format.
-A custom template can be specified using the \f[C]--template\f[] option.
-You can also override the system default templates for a given output
-format \f[C]FORMAT\f[] by putting a file
-\f[C]templates/default.FORMAT\f[] in the user data directory (see
-\f[C]--data-dir\f[], above).
-.PP
-Templates may contain \f[I]variables\f[].
-Variable names are sequences of alphanumerics, \f[C]-\f[], and
-\f[C]_\f[], starting with a letter.
-A variable name surrounded by \f[C]$\f[] signs will be replaced by its
-value.
-For example, the string \f[C]$title$\f[] in
-.IP
-.nf
-\f[C]
-<title>$title$</title>
-\f[]
-.fi
-.PP
-will be replaced by the document title.
-.PP
-To write a literal \f[C]$\f[] in a template, use \f[C]$$\f[].
-.PP
-Some variables are set automatically by pandoc.
-These vary somewhat depending on the output format, but include:
-.TP
-.B \f[C]header-includes\f[]
-contents specified by \f[C]-H/--include-in-header\f[] (may have multiple
-values)
-.RS
-.RE
-.TP
-.B \f[C]toc\f[]
-non-null value if \f[C]--toc/--table-of-contents\f[] was specified
-.RS
-.RE
-.TP
-.B \f[C]include-before\f[]
-contents specified by \f[C]-B/--include-before-body\f[] (may have
-multiple values)
-.RS
-.RE
-.TP
-.B \f[C]include-after\f[]
-contents specified by \f[C]-A/--include-after-body\f[] (may have
-multiple values)
-.RS
-.RE
-.TP
-.B \f[C]body\f[]
-body of document
-.RS
-.RE
-.TP
-.B \f[C]title\f[]
-title of document, as specified in title block
-.RS
-.RE
-.TP
-.B \f[C]author\f[]
-author of document, as specified in title block (may have multiple
-values)
-.RS
-.RE
-.TP
-.B \f[C]date\f[]
-date of document, as specified in title block
-.RS
-.RE
-.TP
-.B \f[C]lang\f[]
-language code for HTML or LaTeX documents
-.RS
-.RE
-.TP
-.B \f[C]slidy-url\f[]
-base URL for Slidy documents (defaults to
-\f[C]http://www.w3.org/Talks/Tools/Slidy2\f[])
-.RS
-.RE
-.TP
-.B \f[C]s5-url\f[]
-base URL for S5 documents (defaults to \f[C]ui/default\f[])
-.RS
-.RE
-.TP
-.B \f[C]font-size\f[]
-font size (10pt, 11pt, 12pt) for LaTeX documents
-.RS
-.RE
-.TP
-.B \f[C]documentclass\f[]
-document class for LaTeX documents
-.RS
-.RE
-.TP
-.B \f[C]theme\f[]
-theme for LaTeX beamer documents
-.RS
-.RE
-.TP
-.B \f[C]colortheme\f[]
-colortheme for LaTeX beamer documents
-.RS
-.RE
-.PP
-Variables may be set at the command line using the
-\f[C]-V/--variable\f[] option.
-This allows users to include custom variables in their templates.
-.PP
-Templates may contain conditionals.
-The syntax is as follows:
-.IP
-.nf
-\f[C]
-$if(variable)$
-X
-$else$
-Y
-$endif$
-\f[]
-.fi
-.PP
-This will include \f[C]X\f[] in the template if \f[C]variable\f[] has a
-non-null value; otherwise it will include \f[C]Y\f[].
-\f[C]X\f[] and \f[C]Y\f[] are placeholders for any valid template text,
-and may include interpolated variables or other conditionals.
-The \f[C]$else$\f[] section may be omitted.
-.PP
-When variables can have multiple values (for example, \f[C]author\f[] in
-a multi-author document), you can use the \f[C]$for$\f[] keyword:
-.IP
-.nf
-\f[C]
-$for(author)$
-<meta\ name="author"\ content="$author$"\ />
-$endfor$
-\f[]
-.fi
-.PP
-You can optionally specify a separator to be used between consecutive
-items:
-.IP
-.nf
-\f[C]
-$for(author)$$author$$sep$,\ $endfor$
-\f[]
-.fi
-.PP
-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
-(\f[C]http://github.com/jgm/pandoc-templates\f[]) and merge in changes
-after each pandoc release.
-.SH PRODUCING SLIDE SHOWS WITH PANDOC
-.PP
-You can use Pandoc to produce an HTML + javascript slide presentation
-that can be viewed via a web browser.
-There are three ways to do this, using S5, DZSlides, or Slidy.
-You can also produce a PDF slide show using LaTeX beamer.
-.PP
-Here\[aq]s the markdown source for a simple slide show,
-\f[C]habits.txt\f[]:
-.IP
-.nf
-\f[C]
-%\ 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
-\f[]
-.fi
-.PP
-To produce the slide show, simply type
-.IP
-.nf
-\f[C]
-pandoc\ -t\ s5\ -s\ habits.txt\ -o\ habits.html
-\f[]
-.fi
-.PP
-for S5,
-.IP
-.nf
-\f[C]
-pandoc\ -t\ slidy\ -s\ habits.txt\ -o\ habits.html
-\f[]
-.fi
-.PP
-for Slidy,
-.IP
-.nf
-\f[C]
-pandoc\ -t\ dzslides\ -s\ habits.txt\ -o\ habits.html
-\f[]
-.fi
-.PP
-for DZSlides, or
-.IP
-.nf
-\f[C]
-pandoc\ -t\ beamer\ habits.txt\ -o\ habits.pdf
-\f[]
-.fi
-.PP
-for beamer.
-.PP
-With all HTML slide formats, the \f[C]--self-contained\f[] option can be
-used to produce a single file that contains all of the data necessary to
-display the slide show, including linked scripts, stylesheets, images,
-and videos.
-.SS Structuring the slide show
-.PP
-By default, the \f[I]slide level\f[] is the highest header level in the
-hierarchy that is followed immediately by content, and not another
-header, somewhere in the document.
-In the example above, level 1 headers are always followed by level 2
-headers, which are followed by content, so 2 is the slide level.
-This default can be overridden using the \f[C]--slide-level\f[] option.
-.PP
-The document is carved up into slides according to the following rules:
-.IP \[bu] 2
-A horizontal rule always starts a new slide.
-.IP \[bu] 2
-A header at the slide level always starts a new slide.
-.IP \[bu] 2
-Headers \f[I]below\f[] the slide level in the hierarchy create headers
-\f[I]within\f[] a slide.
-.IP \[bu] 2
-Headers \f[I]above\f[] the slide level in the hierarchy create "title
-slides," which just contain the section title and help to break the
-slide show into sections.
-.IP \[bu] 2
-A title page is constructed automatically from the document\[aq]s title
-block, if present.
-(In the case of beamer, this can be disabled by commenting out some
-lines in the default template.)
-.PP
-These rules are designed to support many different styles of slide show.
-If you don\[aq]t care about structuring your slides into sections and
-subsections, you can just use level 1 headers for all each slide.
-(In that case, level 1 will be the slide level.)
- But you can also structure the slide show into sections, as in the
-example above.
-.PP
-For Slidy and S5, the file produced by pandoc with the
-\f[C]-s/--standalone\f[] option embeds a link to javascripts and CSS
-files, which are assumed to be available at the relative path
-\f[C]s5/default\f[] (for S5) or at the Slidy website at \f[C]w3.org\f[]
-(for Slidy).
-(These paths can be changed by setting the \f[C]slidy-url\f[] or
-\f[C]s5-url\f[] variables; see \f[C]--variable\f[], above.)
- For DZSlides, the (relatively short) javascript and css are included in
-the file by default.
-.SS Incremental lists
-.PP
-By default, these writers produces lists that display "all at once." If
-you want your lists to display incrementally (one item at a time), use
-the \f[C]-i\f[] option.
-If you want a particular list to depart from the default (that is, to
-display incrementally without the \f[C]-i\f[] option and all at once
-with the \f[C]-i\f[] option), put it in a block quote:
-.IP
-.nf
-\f[C]
->\ -\ Eat\ spaghetti
->\ -\ Drink\ wine
-\f[]
-.fi
-.PP
-In this way incremental and nonincremental lists can be mixed in a
-single document.
-.SS Styling the slides
-.PP
-You can change the style of HTML slides by putting customized CSS files
-in \f[C]$DATADIR/s5/default\f[] (for S5) or \f[C]$DATADIR/slidy\f[] (for
-Slidy), where \f[C]$DATADIR\f[] is the user data directory (see
-\f[C]--data-dir\f[], above).
-The originals may be found in pandoc\[aq]s system data directory
-(generally \f[C]$CABALDIR/pandoc-VERSION/s5/default\f[]).
-Pandoc will look there for any files it does not find in the user data
-directory.
-.PP
-For dzslides, the CSS is included in the HTML file itself, and may be
-modified there.
-.PP
-To style beamer slides, you can specify a beamer "theme" or "colortheme"
-using the \f[C]-V\f[] option:
-.IP
-.nf
-\f[C]
-pandoc\ -t\ beamer\ habits.txt\ -V\ theme:Warsaw\ -o\ habits.pdf
-\f[]
-.fi
-.SH LITERATE HASKELL SUPPORT
-.PP
-If you append \f[C]+lhs\f[] to an appropriate input or output format
-(\f[C]markdown\f[], \f[C]rst\f[], or \f[C]latex\f[] for input or output;
-\f[C]html\f[] or \f[C]html5\f[] for output only), pandoc will treat the
-document as literate Haskell source.
-This means that
-.IP \[bu] 2
-In markdown input, "bird track" sections will be parsed as Haskell code
-rather than block quotations.
-Text between \f[C]\\begin{code}\f[] and \f[C]\\end{code}\f[] will also
-be treated as Haskell code.
-.IP \[bu] 2
-In markdown output, code blocks with classes \f[C]haskell\f[] and
-\f[C]literate\f[] will be rendered using bird tracks, and block
-quotations will be indented one space, so they will not be treated as
-Haskell code.
-In addition, headers will be rendered setext-style (with underlines)
-rather than atx-style (with \[aq]#\[aq] characters).
-(This is because ghc treats \[aq]#\[aq] characters in column 1 as
-introducing line numbers.)
-.IP \[bu] 2
-In restructured text input, "bird track" sections will be parsed as
-Haskell code.
-.IP \[bu] 2
-In restructured text output, code blocks with class \f[C]haskell\f[]
-will be rendered using bird tracks.
-.IP \[bu] 2
-In LaTeX input, text in \f[C]code\f[] environments will be parsed as
-Haskell code.
-.IP \[bu] 2
-In LaTeX output, code blocks with class \f[C]haskell\f[] will be
-rendered inside \f[C]code\f[] environments.
-.IP \[bu] 2
-In HTML output, code blocks with class \f[C]haskell\f[] will be rendered
-with class \f[C]literatehaskell\f[] and bird tracks.
-.PP
-Examples:
-.IP
-.nf
-\f[C]
-pandoc\ -f\ markdown+lhs\ -t\ html
-\f[]
-.fi
-.PP
-reads literate Haskell source formatted with markdown conventions and
-writes ordinary HTML (without bird tracks).
-.IP
-.nf
-\f[C]
-pandoc\ -f\ markdown+lhs\ -t\ html+lhs
-\f[]
-.fi
-.PP
-writes HTML with the Haskell code in bird tracks, so it can be copied
-and pasted as literate Haskell source.
-.SH AUTHORS
-.PP
-© 2006-2011 John MacFarlane (jgm at berkeley dot 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.)
- Other contributors include Recai Oktaş, Paulo Tanimoto, Peter Wang,
-Andrea Rossato, Eric Kow, infinity0x, Luke Plant, shreevatsa.public,
-Puneeth Chaganti, Paul Rivier, rodja.trappe, Bradley Kuhn, thsutton,
-Nathan Gass, Jonathan Daugherty, Jérémy Bobbio, Justin Bogner, qerub,
-Christopher Sawicki, Kelsey Hightower, Masayoshi Takahashi, Antoine
-Latter, Ralf Stephan, Eric Seidel, B.
-Scott Michel.
-.SH PANDOC'S MARKDOWN
-For a complete description of pandoc's extensions to standard markdown,
-see \f[C]pandoc_markdown\f[] (5).
-.SH SEE ALSO
-.PP
-\f[C]markdown2pdf\f[] (1), \f[C]pandoc_markdown\f[] (5).
-.PP
-The Pandoc source code and all documentation may be downloaded
-from <http://johnmacfarlane.net/pandoc/>.
diff --git a/man/man5/pandoc_markdown.5 b/man/man5/pandoc_markdown.5
--- a/man/man5/pandoc_markdown.5
+++ b/man/man5/pandoc_markdown.5
@@ -175,7 +175,7 @@
 .nf
 \f[C]
 See\ the\ section\ on
-[header\ identifiers][#header-identifiers-in-html].
+[header\ identifiers](#header-identifiers-in-html).
 \f[]
 .fi
 .PP
@@ -1062,10 +1062,12 @@
 Backslash escapes do not work in verbatim contexts.
 .SH SMART PUNCTUATION
 .PP
+\f[I]Pandoc extension\f[].
+.PP
 If the \f[C]--smart\f[] option is specified, pandoc will produce
 typographically correct output, converting straight quotes to curly
-quotes, \f[C]---\f[] and \f[C]--\f[] to Em-dashes, and \f[C]...\f[] to
-ellipses.
+quotes, \f[C]---\f[] to em-dashes, \f[C]--\f[] to en-dashes, and
+\f[C]\&...\f[] to ellipses.
 Nonbreaking spaces are inserted after certain abbreviations, such as
 "Mr."
 .PP
diff --git a/pandoc.cabal b/pandoc.cabal
--- a/pandoc.cabal
+++ b/pandoc.cabal
@@ -1,5 +1,5 @@
 Name:            pandoc
-Version:         1.9.1.1
+Version:         1.9.1.2
 Cabal-Version:   >= 1.10
 Build-Type:      Custom
 License:         GPL
diff --git a/src/Text/Pandoc.hs b/src/Text/Pandoc.hs
--- a/src/Text/Pandoc.hs
+++ b/src/Text/Pandoc.hs
@@ -192,6 +192,8 @@
                              writeLaTeX o{ writerLiterateHaskell = True })
           ,("beamer"       , \o ->
                              writeLaTeX o{ writerBeamer = True })
+          ,("beamer+lhs"   , \o ->
+                             writeLaTeX o{ writerBeamer = True, writerLiterateHaskell = True })
           ,("context"      , writeConTeXt)
           ,("texinfo"      , writeTexinfo)
           ,("man"          , writeMan)
diff --git a/src/Text/Pandoc/PDF.hs b/src/Text/Pandoc/PDF.hs
--- a/src/Text/Pandoc/PDF.hs
+++ b/src/Text/Pandoc/PDF.hs
@@ -57,7 +57,7 @@
          -> IO (Either ByteString ByteString)
 tex2pdf' tmpDir program source = do
   let numruns = if "\\tableofcontents" `isInfixOf` source
-                   then 2
+                   then 3
                    else 1
   (exit, log', mbPdf) <- runTeXProgram program numruns tmpDir source
   let msg = "Error producing PDF from TeX source."
diff --git a/src/Text/Pandoc/Readers/HTML.hs b/src/Text/Pandoc/Readers/HTML.hs
--- a/src/Text/Pandoc/Readers/HTML.hs
+++ b/src/Text/Pandoc/Readers/HTML.hs
@@ -46,7 +46,7 @@
 import Text.Pandoc.Parsing
 import Data.Maybe ( fromMaybe, isJust )
 import Data.List ( intercalate )
-import Data.Char ( isSpace, isDigit )
+import Data.Char ( isSpace, isDigit, toLower )
 import Control.Monad ( liftM, guard, when )
 
 -- | Convert HTML-formatted string to 'Pandoc' document.
@@ -90,9 +90,17 @@
             , pRawHtmlBlock
             ]
 
+-- repeated in SelfContained -- consolidate eventually
 renderTags' :: [Tag String] -> String
 renderTags' = renderTagsOptions
-               renderOptions{ optMinimize = (`elem` ["hr","br","img"]) }
+               renderOptions{ optMinimize = \x ->
+                                    let y = map toLower x
+                                    in  y == "hr" || y == "br" ||
+                                        y == "img" || y == "meta" ||
+                                        y == "link"
+                            , optRawTag = \x ->
+                                    let y = map toLower x
+                                    in  y == "script" || y == "style" }
 
 pList :: TagParser [Block]
 pList = pBulletList <|> pOrderedList <|> pDefinitionList
diff --git a/src/Text/Pandoc/Readers/LaTeX.hs b/src/Text/Pandoc/Readers/LaTeX.hs
--- a/src/Text/Pandoc/Readers/LaTeX.hs
+++ b/src/Text/Pandoc/Readers/LaTeX.hs
@@ -358,8 +358,6 @@
   , ("scshape", smallcaps <$> inlines)
   , ("bfseries", strong <$> inlines)
   , ("/", pure mempty) -- italic correction
-  , ("cc", lit "ç")
-  , ("cC", lit "Ç")
   , ("aa", lit "å")
   , ("AA", lit "Å")
   , ("ss", lit "ß")
@@ -374,11 +372,12 @@
   , ("copyright", lit "©")
   , ("`", option (str "`") $ try $ tok >>= accent grave)
   , ("'", option (str "'") $ try $ tok >>= accent acute)
-  , ("^", option (str "^") $ try $ tok >>= accent hat)
-  , ("~", option (str "~") $ try $ tok >>= accent circ)
+  , ("^", option (str "^") $ try $ tok >>= accent circ)
+  , ("~", option (str "~") $ try $ tok >>= accent tilde)
   , ("\"", option (str "\"") $ try $ tok >>= accent umlaut)
   , (".", option (str ".") $ try $ tok >>= accent dot)
   , ("=", option (str "=") $ try $ tok >>= accent macron)
+  , ("c", option (str "c") $ try $ tok >>= accent cedilla)
   , ("i", lit "i")
   , ("\\", linebreak <$ (optional (bracketed inline) *> optional sp))
   , (",", pure mempty)
@@ -502,34 +501,67 @@
 acute 'I' = 'Í'
 acute 'O' = 'Ó'
 acute 'U' = 'Ú'
+acute 'Y' = 'Ý'
 acute 'a' = 'á'
 acute 'e' = 'é'
 acute 'i' = 'í'
 acute 'o' = 'ó'
 acute 'u' = 'ú'
+acute 'y' = 'ý'
+acute 'C' = 'Ć'
+acute 'c' = 'ć'
+acute 'L' = 'Ĺ'
+acute 'l' = 'ĺ'
+acute 'N' = 'Ń'
+acute 'n' = 'ń'
+acute 'R' = 'Ŕ'
+acute 'r' = 'ŕ'
+acute 'S' = 'Ś'
+acute 's' = 'ś'
+acute 'Z' = 'Ź'
+acute 'z' = 'ź'
 acute c = c
 
-hat :: Char -> Char
-hat 'A' = 'Â'
-hat 'E' = 'Ê'
-hat 'I' = 'Î'
-hat 'O' = 'Ô'
-hat 'U' = 'Û'
-hat 'a' = 'ã'
-hat 'e' = 'ê'
-hat 'i' = 'î'
-hat 'o' = 'ô'
-hat 'u' = 'û'
-hat c = c
-
 circ :: Char -> Char
-circ 'A' = 'Ã'
-circ 'O' = 'Õ'
-circ 'o' = 'õ'
-circ 'N' = 'Ñ'
-circ 'n' = 'ñ'
-circ c   = c
+circ 'A' = 'Â'
+circ 'E' = 'Ê'
+circ 'I' = 'Î'
+circ 'O' = 'Ô'
+circ 'U' = 'Û'
+circ 'a' = 'â'
+circ 'e' = 'ê'
+circ 'i' = 'î'
+circ 'o' = 'ô'
+circ 'u' = 'û'
+circ 'C' = 'Ĉ'
+circ 'c' = 'ĉ'
+circ 'G' = 'Ĝ'
+circ 'g' = 'ĝ'
+circ 'H' = 'Ĥ'
+circ 'h' = 'ĥ'
+circ 'J' = 'Ĵ'
+circ 'j' = 'ĵ'
+circ 'S' = 'Ŝ'
+circ 's' = 'ŝ'
+circ 'W' = 'Ŵ'
+circ 'w' = 'ŵ'
+circ 'Y' = 'Ŷ'
+circ 'y' = 'ŷ'
+circ c = c
 
+tilde :: Char -> Char
+tilde 'A' = 'Ã'
+tilde 'a' = 'ã'
+tilde 'O' = 'Õ'
+tilde 'o' = 'õ'
+tilde 'I' = 'Ĩ'
+tilde 'i' = 'ĩ'
+tilde 'U' = 'Ũ'
+tilde 'u' = 'ũ'
+tilde 'N' = 'Ñ'
+tilde 'n' = 'ñ'
+tilde c   = c
+
 umlaut :: Char -> Char
 umlaut 'A' = 'Ä'
 umlaut 'E' = 'Ë'
@@ -568,6 +600,13 @@
 macron 'u' = 'ū'
 macron c = c
 
+cedilla :: Char -> Char
+cedilla 'c' = 'ç'
+cedilla 'C' = 'Ç'
+cedilla 's' = 'ş'
+cedilla 'S' = 'Ş'
+cedilla c = c
+
 tok :: LP Inlines
 tok = try $ grouped inline <|> inlineCommand <|> str <$> (count 1 $ inlineChar)
 
@@ -646,7 +685,7 @@
              controlSeq "begin"
              name <- braced
              guard $ name == "verbatim" || name == "Verbatim" ||
-                     name == "lstlisting"
+                     name == "lstlisting" || name == "minted"
              verbEnv name
   rest <- getInput
   return (r,rest)
@@ -679,19 +718,21 @@
   , ("verbatim", codeBlock <$> (verbEnv "verbatim"))
   , ("Verbatim", codeBlock <$> (verbEnv "Verbatim"))
   , ("lstlisting", codeBlock <$> (verbEnv "listlisting"))
+  , ("minted", liftA2 (\l c -> codeBlockWith ("",[l],[]) c)
+            (grouped (many1 $ satisfy (/= '}'))) (verbEnv "minted"))
   , ("displaymath", mathEnv Nothing "displaymath")
   , ("equation", mathEnv Nothing "equation")
   , ("equation*", mathEnv Nothing "equation*")
   , ("gather", mathEnv (Just "gathered") "gather")
   , ("gather*", mathEnv (Just "gathered") "gather*")
-  , ("multiline", mathEnv (Just "gathered") "multiline")
-  , ("multiline*", mathEnv (Just "gathered") "multiline*")
-  , ("eqnarray", mathEnv (Just "aligned*") "eqnarray")
-  , ("eqnarray*", mathEnv (Just "aligned*") "eqnarray*")
-  , ("align", mathEnv (Just "aligned*") "align")
-  , ("align*", mathEnv (Just "aligned*") "align*")
-  , ("alignat", mathEnv (Just "aligned*") "alignat")
-  , ("alignat*", mathEnv (Just "aligned*") "alignat*")
+  , ("multline", mathEnv (Just "gathered") "multline")
+  , ("multline*", mathEnv (Just "gathered") "multline*")
+  , ("eqnarray", mathEnv (Just "aligned") "eqnarray")
+  , ("eqnarray*", mathEnv (Just "aligned") "eqnarray*")
+  , ("align", mathEnv (Just "aligned") "align")
+  , ("align*", mathEnv (Just "aligned") "align*")
+  , ("alignat", mathEnv (Just "aligned") "alignat")
+  , ("alignat*", mathEnv (Just "aligned") "alignat*")
   ]
 
 letter_contents :: LP Blocks
diff --git a/src/Text/Pandoc/SelfContained.hs b/src/Text/Pandoc/SelfContained.hs
--- a/src/Text/Pandoc/SelfContained.hs
+++ b/src/Text/Pandoc/SelfContained.hs
@@ -157,6 +157,16 @@
 makeSelfContained userdata inp = do
   let tags = parseTags inp
   out' <- mapM (convertTag userdata) tags
-  return $ renderTagsOptions renderOptions{ optMinimize = (\t -> t == "br"
-                 || t == "img" || t == "meta" || t == "link" ) } out'
+  return $ renderTags' out'
 
+-- repeated from HTML reader:
+renderTags' :: [Tag String] -> String
+renderTags' = renderTagsOptions
+               renderOptions{ optMinimize = \x ->
+                                    let y = map toLower x
+                                    in  y == "hr" || y == "br" ||
+                                        y == "img" || y == "meta" ||
+                                        y == "link"
+                            , optRawTag = \x ->
+                                    let y = map toLower x
+                                    in  y == "script" || y == "style" }
diff --git a/src/Text/Pandoc/Writers/ConTeXt.hs b/src/Text/Pandoc/Writers/ConTeXt.hs
--- a/src/Text/Pandoc/Writers/ConTeXt.hs
+++ b/src/Text/Pandoc/Writers/ConTeXt.hs
@@ -77,6 +77,8 @@
                  , ("title", titletext)
                  , ("date", datetext) ] ++
                  [ ("number-sections", "yes") | writerNumberSections options ] ++
+                 [ ("mainlang", maybe "" (reverse . takeWhile (/=',') . reverse)
+                                (lookup "lang" $ writerVariables options)) ] ++
                  [ ("author", a) | a <- authorstext ]
   return $ if writerStandalone options
               then renderTemplate context $ writerTemplate options
diff --git a/src/Text/Pandoc/Writers/Docx.hs b/src/Text/Pandoc/Writers/Docx.hs
--- a/src/Text/Pandoc/Writers/Docx.hs
+++ b/src/Text/Pandoc/Writers/Docx.hs
@@ -387,8 +387,9 @@
   return $
     [ mknode "w:tbl" []
       ( mknode "w:tblPr" []
-        [ mknode "w:tblCaption" [("w:val", captionStr)] ()
-          | not (null caption) ]
+        ( [ mknode "w:tblStyle" [("w:val","TableNormal")] () ] ++
+          [ mknode "w:tblCaption" [("w:val", captionStr)] ()
+          | not (null caption) ] )
       : mknode "w:tblGrid" []
         (if all (==0) widths
             then []
diff --git a/src/Text/Pandoc/Writers/EPUB.hs b/src/Text/Pandoc/Writers/EPUB.hs
--- a/src/Text/Pandoc/Writers/EPUB.hs
+++ b/src/Text/Pandoc/Writers/EPUB.hs
@@ -48,6 +48,8 @@
 import Data.Char ( toLower )
 import Network.URI ( unEscapeString )
 import Text.Pandoc.MIME (getMimeType)
+import Prelude hiding (catch)
+import Control.Exception (catch, SomeException)
 
 -- | Produce an EPUB file from a Pandoc document.
 writeEPUB :: Maybe String   -- ^ EPUB stylesheet specified at command line
@@ -126,8 +128,9 @@
   let chapterEntries = zipWith chapterToEntry [1..] chapters
 
   -- contents.opf
-  localeLang <- catch (liftM (takeWhile (/='.')) $ getEnv "LANG")
-                    (\_ -> return "en-US")
+  localeLang <- catch (liftM (map (\c -> if c == '_' then '-' else c) .
+                       takeWhile (/='.')) $ getEnv "LANG")
+                    (\e -> let _ = (e :: SomeException) in return "en-US")
   let lang = case lookup "lang" (writerVariables opts') of
                      Just x  -> x
                      Nothing -> localeLang
diff --git a/src/Text/Pandoc/Writers/HTML.hs b/src/Text/Pandoc/Writers/HTML.hs
--- a/src/Text/Pandoc/Writers/HTML.hs
+++ b/src/Text/Pandoc/Writers/HTML.hs
@@ -59,12 +59,14 @@
 data WriterState = WriterState
     { stNotes            :: [Html]  -- ^ List of notes
     , stMath             :: Bool    -- ^ Math is used in document
+    , stQuotes           :: Bool    -- ^ <q> tag is used
     , stHighlighting     :: Bool    -- ^ Syntax highlighting is used
     , stSecNum           :: [Int]   -- ^ Number of current section
     }
 
 defaultWriterState :: WriterState
-defaultWriterState = WriterState {stNotes= [], stMath = False, stHighlighting = False, stSecNum = []}
+defaultWriterState = WriterState {stNotes= [], stMath = False, stQuotes = False,
+                                  stHighlighting = False, stSecNum = []}
 
 -- Helpers to render HTML with the appropriate function.
 
@@ -156,7 +158,8 @@
   let newvars = [("highlighting-css",
                    styleToCss $ writerHighlightStyle opts) |
                    stHighlighting st] ++
-                [("math", renderHtml math) | stMath st]
+                [("math", renderHtml math) | stMath st] ++
+                [("quotes", "yes") | stQuotes st]
   return (tit, auths, authsMeta, date, toc, thebody, newvars)
 
 -- | Prepare author for meta tag, converting notes into
@@ -581,8 +584,12 @@
                                               strToHtml "’")
                               DoubleQuote -> (strToHtml "“",
                                               strToHtml "”")
-                        in  do contents <- inlineListToHtml opts lst
-                               return $ leftQuote >> contents >> rightQuote
+                        in  if writerHtml5 opts
+                               then do
+                                 modify $ \st -> st{ stQuotes = True }
+                                 H.q `fmap` inlineListToHtml opts lst
+                               else (\x -> leftQuote >> x >> rightQuote)
+                                    `fmap` inlineListToHtml opts lst
     (Math t str) ->     modify (\st -> st {stMath = True}) >>
                         (case writerHTMLMathMethod opts of
                                LaTeXMathML _ ->
@@ -610,8 +617,8 @@
                                             DisplayMath -> brtag >> m >> brtag
                                GladTeX ->
                                   return $ case t of
-                                             InlineMath -> preEscapedString "<EQ ENV=\"math\">" >> toHtml str >> preEscapedString "</EQ>"
-                                             DisplayMath -> preEscapedString "<EQ ENV=\"displaymath\">" >> toHtml str >> preEscapedString "</EQ>"
+                                             InlineMath -> preEscapedString $ "<EQ ENV=\"math\">" ++ str ++ "</EQ>"
+                                             DisplayMath -> preEscapedString $ "<EQ ENV=\"displaymath\">" ++ str ++ "</EQ>"
                                MathML _ -> do
                                   let dt = if t == InlineMath
                                               then DisplayInline
diff --git a/src/Text/Pandoc/Writers/LaTeX.hs b/src/Text/Pandoc/Writers/LaTeX.hs
--- a/src/Text/Pandoc/Writers/LaTeX.hs
+++ b/src/Text/Pandoc/Writers/LaTeX.hs
@@ -153,6 +153,8 @@
                  [ ("book-class", "yes") | stBook st] ++
                  [ ("listings", "yes") | writerListings options || stLHS st ] ++
                  [ ("beamer", "yes") | writerBeamer options ] ++
+                 [ ("mainlang", maybe "" (reverse . takeWhile (/=',') . reverse)
+                                (lookup "lang" $ writerVariables options)) ] ++
                  [ ("highlighting-macros", styleToLaTeX
                        $ writerHighlightStyle options ) | stHighlighting st ] ++
                  citecontext
@@ -183,7 +185,7 @@
        '-' -> case xs of   -- prevent adjacent hyphens from forming ligatures
                    ('-':_) -> "-{}" ++ rest
                    _       -> '-' : rest
-       '~' | not isUrl -> "\\ensuremath{\\sim}"
+       '~' | not isUrl -> "\\textasciitilde{}" ++ rest
        '^' -> "\\^{}" ++ rest
        '\\' -> "\\textbackslash{}" ++ rest
        '€' -> "\\euro{}" ++ rest
diff --git a/src/Text/Pandoc/Writers/Man.hs b/src/Text/Pandoc/Writers/Man.hs
--- a/src/Text/Pandoc/Writers/Man.hs
+++ b/src/Text/Pandoc/Writers/Man.hs
@@ -112,7 +112,11 @@
 
 -- | Escape a literal (code) section for Man.
 escapeCode :: String -> String
-escapeCode = escapeStringUsing (manEscapes ++ backslashEscapes "\t ")
+escapeCode = concat . intersperse "\n" . map escapeLine . lines  where
+  escapeLine codeline = 
+    case escapeStringUsing (manEscapes ++ backslashEscapes "\t ") codeline of
+      a@('.':_) -> "\\&" ++ a
+      b       -> b
 
 -- We split inline lists into sentences, and print one sentence per
 -- line.  groff/troff treats the line-ending period differently.
@@ -122,15 +126,18 @@
 breakSentence :: [Inline] -> ([Inline], [Inline])
 breakSentence [] = ([],[])
 breakSentence xs =
-  let isSentenceEndInline (Str ".") = True
-      isSentenceEndInline (Str "?") = True
+  let isSentenceEndInline (Str ys@(_:_)) | last ys == '.' = True
+      isSentenceEndInline (Str ys@(_:_)) | last ys == '?' = True
+      isSentenceEndInline (LineBreak) = True
       isSentenceEndInline _         = False
       (as, bs) = break isSentenceEndInline xs
   in  case bs of
            []             -> (as, [])
            [c]            -> (as ++ [c], [])
            (c:Space:cs)   -> (as ++ [c], cs)
-           (Str ".":Str ")":cs) -> (as ++ [Str ".", Str ")"], cs)
+           (Str ".":Str (')':ys):cs) -> (as ++ [Str ".", Str (')':ys)], cs)
+           (x@(Str ('.':')':_)):cs) -> (as ++ [x], cs)
+           (LineBreak:x@(Str ('.':_)):cs) -> (as ++[LineBreak], x:cs)
            (c:cs)         -> (as ++ [c] ++ ds, es)
               where (ds, es) = breakSentence cs
 
@@ -279,7 +286,7 @@
 inlineListToMan :: WriterOptions -> [Inline] -> State WriterState Doc
 -- if list starts with ., insert a zero-width character \& so it
 -- won't be interpreted as markup if it falls at the beginning of a line.
-inlineListToMan opts lst@(Str "." : _) = mapM (inlineToMan opts) lst >>=
+inlineListToMan opts lst@(Str ('.':_) : _) = mapM (inlineToMan opts) lst >>=
   (return . (text "\\&" <>)  . hcat)
 inlineListToMan opts lst = mapM (inlineToMan opts) lst >>= (return . hcat)
 
diff --git a/src/pandoc.hs b/src/pandoc.hs
--- a/src/pandoc.hs
+++ b/src/pandoc.hs
@@ -295,14 +295,13 @@
 
     , Option "V" ["variable"]
                  (ReqArg
-                  (\arg opt ->
-                     case break (`elem` ":=") arg of
-                          (k,_:v) -> do
-                            let newvars = optVariables opt ++ [(k,v)]
-                            return opt{ optVariables = newvars }
-                          _  -> err 17 $
-                            "Could not parse `" ++ arg ++ "' as a key/value pair (k=v or k:v)")
-                  "KEY:VALUE")
+                  (\arg opt -> do
+                     let (key,val) = case break (`elem` ":=") arg of
+                                       (k,_:v) -> (k,v)
+                                       (k,_)   -> (k,"true")
+                     let newvars = optVariables opt ++ [(key,val)]
+                     return opt{ optVariables = newvars })
+                  "KEY[:VALUE]")
                  "" -- "Use custom template"
 
     , Option "D" ["print-default-template"]
@@ -833,10 +832,12 @@
 
   let pdfOutput = map toLower (takeExtension outputFile) == ".pdf"
 
+  let laTeXOutput = writerName' == "latex" || writerName' == "beamer" ||
+         writerName' == "latex+lhs" || writerName' == "beamer+lhs"
+
   when pdfOutput $ do
     -- make sure writer is latex or beamer
-    unless (writerName' == "latex" || writerName' == "beamer" ||
-            writerName' == "latex+lhs") $
+    unless laTeXOutput $
       err 47 $ "cannot produce pdf output with " ++ writerName' ++ " writer"
     -- check for latex program
     mbLatex <- findExecutable latexEngine
@@ -916,14 +917,13 @@
                                                      lhsExtension sources,
                               stateStandalone      = standalone',
                               stateCitations       = map CSL.refId refs,
-                              stateSmart           = smart || writerName' `elem`
-                                                     ["latex", "context", "latex+lhs", "beamer"],
+                              stateSmart           = smart || laTeXOutput || writerName' == "context",
                               stateOldDashes       = oldDashes,
                               stateColumns         = columns,
                               stateStrict          = strict,
                               stateIndentedCodeClasses = codeBlockClasses,
-                              stateApplyMacros     = writerName' `notElem`
-                                                     ["latex", "latex+lhs", "beamer"] }
+                              stateApplyMacros     = not laTeXOutput
+                              }
 
   let writerOptions = defaultWriterOptions
                                     { writerStandalone       = standalone',
@@ -945,8 +945,7 @@
                                       writerReferenceLinks   = referenceLinks,
                                       writerWrapText         = wrap,
                                       writerColumns          = columns,
-                                      writerLiterateHaskell  = "+lhs" `isSuffixOf` writerName' ||
-                                                               lhsExtension [outputFile],
+                                      writerLiterateHaskell  = False,
                                       writerEmailObfuscation = if strict
                                                                   then ReferenceObfuscation
                                                                   else obfuscationMethod,
@@ -957,7 +956,7 @@
                                            slideVariant == DZSlides,
                                       writerChapters         = chapters,
                                       writerListings         = listings,
-                                      writerBeamer           = writerName' == "beamer",
+                                      writerBeamer           = False,
                                       writerSlideLevel       = slideLevel,
                                       writerHighlight        = highlight,
                                       writerHighlightStyle   = highlightStyle,
@@ -980,9 +979,7 @@
 
   let convertTabs = tabFilter (if preserveTabs then 0 else tabStop)
 
-  let handleIncludes' = if readerName' == "latex" || readerName' == "beamer" ||
-                           readerName' == "latex+lhs" ||
-                           readerName' == "context"
+  let handleIncludes' = if readerName' == "latex" || readerName' == "latex+lhs"
                            then handleIncludes
                            else return
 
@@ -1029,18 +1026,18 @@
           | writerName' == "docx"  ->
               writeDocx referenceDocx writerOptions doc2 >>= writeBinary
           | otherwise -> err 9 ("Unknown writer: " ++ writerName')
-        Just _
+        Just w
           | pdfOutput  -> do
-              res <- tex2pdf latexEngine $ writeLaTeX writerOptions doc2
+              res <- tex2pdf latexEngine $ w writerOptions doc2
               case res of
                    Right pdf -> writeBinary pdf
                    Left err' -> err 43 $ toString err'
-        Just r
+        Just w
           | htmlFormat && ascii ->
                   writerFn outputFile =<< selfcontain (toEntities result)
           | otherwise ->
                   writerFn outputFile =<< selfcontain result
-          where result       = r writerOptions doc2 ++ ['\n' | not standalone']
+          where result       = w writerOptions doc2 ++ ['\n' | not standalone']
                 htmlFormat = writerName' `elem`
                                ["html","html+lhs","html5","html5+lhs",
                                "s5","slidy","dzslides"]
diff --git a/templates/default.beamer b/templates/default.beamer
--- a/templates/default.beamer
+++ b/templates/default.beamer
@@ -41,12 +41,6 @@
 \usepackage{fancyvrb}
 $endif$
 $if(fancy-enums)$
-% Redefine labelwidth for lists; otherwise, the enumerate package will cause
-% markers to extend beyond the left margin.
-\makeatletter\AtBeginDocument{%
-  \renewcommand{\@listi}
-    {\setlength{\labelwidth}{4em}}
-}\makeatother
 \usepackage{enumerate}
 $endif$
 $if(tables)$
diff --git a/templates/default.context b/templates/default.context
--- a/templates/default.context
+++ b/templates/default.context
@@ -2,6 +2,9 @@
   \enableregime[utf-8]  
   \setupcolors[state=start]
 \stopmode
+$if(mainlang)$
+\mainlanguage[$mainlang$]
+$endif$
 
 % Enable hyperlinks
 \setupinteraction[state=start, color=middleblue]
@@ -16,9 +19,15 @@
 
 \setupwhitespace[medium]
 
-\setuphead[section]      [style=\tfc$if(number-sections)$$else$,number=no$endif$]
-\setuphead[subsection]   [style=\tfb$if(number-sections)$$else$,number=no$endif$]
-\setuphead[subsubsection][style=\bf$if(number-sections)$$else$,number=no$endif$]
+\setuphead[chapter]      [style=\tfd]
+\setuphead[section]      [style=\tfc]
+\setuphead[subsection]   [style=\tfb]
+\setuphead[subsubsection][style=\bf]
+
+$if(number-sections)$
+$else$
+\setuphead[chapter, section, subsection, subsubsection][number=no]
+$endif$
 
 \definedescription
   [description]
diff --git a/templates/default.html5 b/templates/default.html5
--- a/templates/default.html5
+++ b/templates/default.html5
@@ -13,6 +13,11 @@
   <!--[if lt IE 9]>
     <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
   <![endif]-->
+$if(quotes)$
+  <style type="text/css">
+    q { quotes: "“" "”" "‘" "’"; }
+  </style>
+$endif$
 $if(highlighting-css)$
   <style type="text/css">
 $highlighting-css$
diff --git a/templates/default.latex b/templates/default.latex
--- a/templates/default.latex
+++ b/templates/default.latex
@@ -1,15 +1,18 @@
-\documentclass[$if(fontsize)$$fontsize$,$endif$]{$documentclass$}
+\documentclass[$if(fontsize)$$fontsize$,$endif$$if(lang)$$lang$,$endif$]{$documentclass$}
 \usepackage{amssymb,amsmath}
 \usepackage{ifxetex,ifluatex}
 \ifxetex
   \usepackage{fontspec,xltxtra,xunicode}
   \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
+  \newcommand{\euro}{€}
 \else
   \ifluatex
     \usepackage{fontspec}
     \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
+    \newcommand{\euro}{€}
   \else
     \usepackage[utf8]{inputenc}
+    \usepackage{eurosym}
   \fi
 \fi
 $if(natbib)$
@@ -93,7 +96,12 @@
 \VerbatimFootnotes % allows verbatim text in footnotes
 $endif$
 $if(lang)$
-\usepackage[$lang$]{babel}
+\ifxetex
+  \usepackage{polyglossia}
+  \setmainlanguage{$mainlang$}
+\else
+  \usepackage[$lang$]{babel}
+\fi
 $endif$
 $for(header-includes)$
 $header-includes$
diff --git a/tests/lhs-test.latex b/tests/lhs-test.latex
--- a/tests/lhs-test.latex
+++ b/tests/lhs-test.latex
@@ -4,12 +4,15 @@
 \ifxetex
   \usepackage{fontspec,xltxtra,xunicode}
   \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
+  \newcommand{\euro}{€}
 \else
   \ifluatex
     \usepackage{fontspec}
     \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
+    \newcommand{\euro}{€}
   \else
     \usepackage[utf8]{inputenc}
+    \usepackage{eurosym}
   \fi
 \fi
 \usepackage{color}
diff --git a/tests/lhs-test.latex+lhs b/tests/lhs-test.latex+lhs
--- a/tests/lhs-test.latex+lhs
+++ b/tests/lhs-test.latex+lhs
@@ -4,12 +4,15 @@
 \ifxetex
   \usepackage{fontspec,xltxtra,xunicode}
   \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
+  \newcommand{\euro}{€}
 \else
   \ifluatex
     \usepackage{fontspec}
     \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
+    \newcommand{\euro}{€}
   \else
     \usepackage[utf8]{inputenc}
+    \usepackage{eurosym}
   \fi
 \fi
 \usepackage{listings}
diff --git a/tests/writer.context b/tests/writer.context
--- a/tests/writer.context
+++ b/tests/writer.context
@@ -16,9 +16,12 @@
 
 \setupwhitespace[medium]
 
-\setuphead[section]      [style=\tfc,number=no]
-\setuphead[subsection]   [style=\tfb,number=no]
-\setuphead[subsubsection][style=\bf,number=no]
+\setuphead[chapter]      [style=\tfd]
+\setuphead[section]      [style=\tfc]
+\setuphead[subsection]   [style=\tfb]
+\setuphead[subsubsection][style=\bf]
+
+\setuphead[chapter, section, subsection, subsubsection][number=no]
 
 \definedescription
   [description]
diff --git a/tests/writer.latex b/tests/writer.latex
--- a/tests/writer.latex
+++ b/tests/writer.latex
@@ -4,12 +4,15 @@
 \ifxetex
   \usepackage{fontspec,xltxtra,xunicode}
   \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
+  \newcommand{\euro}{€}
 \else
   \ifluatex
     \usepackage{fontspec}
     \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
+    \newcommand{\euro}{€}
   \else
     \usepackage[utf8]{inputenc}
+    \usepackage{eurosym}
   \fi
 \fi
 \usepackage{fancyvrb}
@@ -591,7 +594,7 @@
 Subscripts: H\textsubscr{2}O, H\textsubscr{23}O, H\textsubscr{many~of~them}O.
 
 These should not be superscripts or subscripts, because of the unescaped
-spaces: a\^{}b c\^{}d, a\ensuremath{\sim}b c\ensuremath{\sim}d.
+spaces: a\^{}b c\^{}d, a\textasciitilde{}b c\textasciitilde{}d.
 
 \begin{center}\rule{3in}{0.4pt}\end{center}
 
