packages feed

pandoc 2.11.0.4 → 2.11.1

raw patch · 36 files changed

+701/−225 lines, 36 filesdep ~commonmarkdep ~commonmark-extensionsPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: commonmark, commonmark-extensions

API changes (from Hackage documentation)

+ Text.Pandoc.Error: PandocBibliographyError :: Text -> Text -> PandocError
- Text.Pandoc.Parsing: (<?>) :: () => ParsecT s u m a -> String -> ParsecT s u m a
+ Text.Pandoc.Parsing: (<?>) :: forall s u (m :: Type -> Type) a. ParsecT s u m a -> String -> ParsecT s u m a
- Text.Pandoc.Parsing: (<|>) :: () => ParsecT s u m a -> ParsecT s u m a -> ParsecT s u m a
+ Text.Pandoc.Parsing: (<|>) :: forall s u (m :: Type -> Type) a. ParsecT s u m a -> ParsecT s u m a -> ParsecT s u m a
- Text.Pandoc.Parsing: alphaNum :: Stream s m Char => ParsecT s u m Char
+ Text.Pandoc.Parsing: alphaNum :: forall s (m :: Type -> Type) u. Stream s m Char => ParsecT s u m Char
- Text.Pandoc.Parsing: anyChar :: Stream s m Char => ParsecT s u m Char
+ Text.Pandoc.Parsing: anyChar :: forall s (m :: Type -> Type) u. Stream s m Char => ParsecT s u m Char
- Text.Pandoc.Parsing: anyToken :: (Stream s m t, Show t) => ParsecT s u m t
+ Text.Pandoc.Parsing: anyToken :: forall s (m :: Type -> Type) t u. (Stream s m t, Show t) => ParsecT s u m t
- Text.Pandoc.Parsing: char :: Stream s m Char => Char -> ParsecT s u m Char
+ Text.Pandoc.Parsing: char :: forall s (m :: Type -> Type) u. Stream s m Char => Char -> ParsecT s u m Char
- Text.Pandoc.Parsing: choice :: Stream s m t => [ParsecT s u m a] -> ParsecT s u m a
+ Text.Pandoc.Parsing: choice :: forall s (m :: Type -> Type) t u a. Stream s m t => [ParsecT s u m a] -> ParsecT s u m a
- Text.Pandoc.Parsing: count :: Stream s m t => Int -> ParsecT s u m a -> ParsecT s u m [a]
+ Text.Pandoc.Parsing: count :: forall s (m :: Type -> Type) t u a. Stream s m t => Int -> ParsecT s u m a -> ParsecT s u m [a]
- Text.Pandoc.Parsing: digit :: Stream s m Char => ParsecT s u m Char
+ Text.Pandoc.Parsing: digit :: forall s (m :: Type -> Type) u. Stream s m Char => ParsecT s u m Char
- Text.Pandoc.Parsing: endBy :: Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
+ Text.Pandoc.Parsing: endBy :: forall s (m :: Type -> Type) t u a sep. Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
- Text.Pandoc.Parsing: endBy1 :: Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
+ Text.Pandoc.Parsing: endBy1 :: forall s (m :: Type -> Type) t u a sep. Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
- Text.Pandoc.Parsing: eof :: (Stream s m t, Show t) => ParsecT s u m ()
+ Text.Pandoc.Parsing: eof :: forall s (m :: Type -> Type) t u. (Stream s m t, Show t) => ParsecT s u m ()
- Text.Pandoc.Parsing: getInput :: Monad m => ParsecT s u m s
+ Text.Pandoc.Parsing: getInput :: forall (m :: Type -> Type) s u. Monad m => ParsecT s u m s
- Text.Pandoc.Parsing: getPosition :: Monad m => ParsecT s u m SourcePos
+ Text.Pandoc.Parsing: getPosition :: forall (m :: Type -> Type) s u. Monad m => ParsecT s u m SourcePos
- Text.Pandoc.Parsing: getState :: Monad m => ParsecT s u m u
+ Text.Pandoc.Parsing: getState :: forall (m :: Type -> Type) s u. Monad m => ParsecT s u m u
- Text.Pandoc.Parsing: letter :: Stream s m Char => ParsecT s u m Char
+ Text.Pandoc.Parsing: letter :: forall s (m :: Type -> Type) u. Stream s m Char => ParsecT s u m Char
- Text.Pandoc.Parsing: lookAhead :: Stream s m t => ParsecT s u m a -> ParsecT s u m a
+ Text.Pandoc.Parsing: lookAhead :: forall s (m :: Type -> Type) t u a. Stream s m t => ParsecT s u m a -> ParsecT s u m a
- Text.Pandoc.Parsing: many :: () => ParsecT s u m a -> ParsecT s u m [a]
+ Text.Pandoc.Parsing: many :: forall s u (m :: Type -> Type) a. ParsecT s u m a -> ParsecT s u m [a]
- Text.Pandoc.Parsing: many1 :: Stream s m t => ParsecT s u m a -> ParsecT s u m [a]
+ Text.Pandoc.Parsing: many1 :: forall s (m :: Type -> Type) t u a. Stream s m t => ParsecT s u m a -> ParsecT s u m [a]
- Text.Pandoc.Parsing: manyTill :: Stream s m t => ParsecT s u m a -> ParsecT s u m end -> ParsecT s u m [a]
+ Text.Pandoc.Parsing: manyTill :: forall s (m :: Type -> Type) t u a end. Stream s m t => ParsecT s u m a -> ParsecT s u m end -> ParsecT s u m [a]
- Text.Pandoc.Parsing: newline :: Stream s m Char => ParsecT s u m Char
+ Text.Pandoc.Parsing: newline :: forall s (m :: Type -> Type) u. Stream s m Char => ParsecT s u m Char
- Text.Pandoc.Parsing: noneOf :: Stream s m Char => [Char] -> ParsecT s u m Char
+ Text.Pandoc.Parsing: noneOf :: forall s (m :: Type -> Type) u. Stream s m Char => [Char] -> ParsecT s u m Char
- Text.Pandoc.Parsing: notFollowedBy :: (Stream s m t, Show a) => ParsecT s u m a -> ParsecT s u m ()
+ Text.Pandoc.Parsing: notFollowedBy :: forall s (m :: Type -> Type) t a u. (Stream s m t, Show a) => ParsecT s u m a -> ParsecT s u m ()
- Text.Pandoc.Parsing: oneOf :: Stream s m Char => [Char] -> ParsecT s u m Char
+ Text.Pandoc.Parsing: oneOf :: forall s (m :: Type -> Type) u. Stream s m Char => [Char] -> ParsecT s u m Char
- Text.Pandoc.Parsing: option :: Stream s m t => a -> ParsecT s u m a -> ParsecT s u m a
+ Text.Pandoc.Parsing: option :: forall s (m :: Type -> Type) t a u. Stream s m t => a -> ParsecT s u m a -> ParsecT s u m a
- Text.Pandoc.Parsing: optionMaybe :: Stream s m t => ParsecT s u m a -> ParsecT s u m (Maybe a)
+ Text.Pandoc.Parsing: optionMaybe :: forall s (m :: Type -> Type) t u a. Stream s m t => ParsecT s u m a -> ParsecT s u m (Maybe a)
- Text.Pandoc.Parsing: optional :: Stream s m t => ParsecT s u m a -> ParsecT s u m ()
+ Text.Pandoc.Parsing: optional :: forall s (m :: Type -> Type) t u a. Stream s m t => ParsecT s u m a -> ParsecT s u m ()
- Text.Pandoc.Parsing: satisfy :: Stream s m Char => (Char -> Bool) -> ParsecT s u m Char
+ Text.Pandoc.Parsing: satisfy :: forall s (m :: Type -> Type) u. Stream s m Char => (Char -> Bool) -> ParsecT s u m Char
- Text.Pandoc.Parsing: sepBy :: Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
+ Text.Pandoc.Parsing: sepBy :: forall s (m :: Type -> Type) t u a sep. Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
- Text.Pandoc.Parsing: sepBy1 :: Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
+ Text.Pandoc.Parsing: sepBy1 :: forall s (m :: Type -> Type) t u a sep. Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
- Text.Pandoc.Parsing: sepEndBy :: Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
+ Text.Pandoc.Parsing: sepEndBy :: forall s (m :: Type -> Type) t u a sep. Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
- Text.Pandoc.Parsing: sepEndBy1 :: Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
+ Text.Pandoc.Parsing: sepEndBy1 :: forall s (m :: Type -> Type) t u a sep. Stream s m t => ParsecT s u m a -> ParsecT s u m sep -> ParsecT s u m [a]
- Text.Pandoc.Parsing: setInput :: Monad m => s -> ParsecT s u m ()
+ Text.Pandoc.Parsing: setInput :: forall (m :: Type -> Type) s u. Monad m => s -> ParsecT s u m ()
- Text.Pandoc.Parsing: setPosition :: Monad m => SourcePos -> ParsecT s u m ()
+ Text.Pandoc.Parsing: setPosition :: forall (m :: Type -> Type) s u. Monad m => SourcePos -> ParsecT s u m ()
- Text.Pandoc.Parsing: setState :: Monad m => u -> ParsecT s u m ()
+ Text.Pandoc.Parsing: setState :: forall (m :: Type -> Type) u s. Monad m => u -> ParsecT s u m ()
- Text.Pandoc.Parsing: skipMany :: () => ParsecT s u m a -> ParsecT s u m ()
+ Text.Pandoc.Parsing: skipMany :: forall s u (m :: Type -> Type) a. ParsecT s u m a -> ParsecT s u m ()
- Text.Pandoc.Parsing: skipMany1 :: Stream s m t => ParsecT s u m a -> ParsecT s u m ()
+ Text.Pandoc.Parsing: skipMany1 :: forall s (m :: Type -> Type) t u a. Stream s m t => ParsecT s u m a -> ParsecT s u m ()
- Text.Pandoc.Parsing: space :: Stream s m Char => ParsecT s u m Char
+ Text.Pandoc.Parsing: space :: forall s (m :: Type -> Type) u. Stream s m Char => ParsecT s u m Char
- Text.Pandoc.Parsing: spaces :: Stream s m Char => ParsecT s u m ()
+ Text.Pandoc.Parsing: spaces :: forall s (m :: Type -> Type) u. Stream s m Char => ParsecT s u m ()
- Text.Pandoc.Parsing: string :: Stream s m Char => String -> ParsecT s u m String
+ Text.Pandoc.Parsing: string :: forall s (m :: Type -> Type) u. Stream s m Char => String -> ParsecT s u m String
- Text.Pandoc.Parsing: tokenPrim :: Stream s m t => (t -> String) -> (SourcePos -> t -> s -> SourcePos) -> (t -> Maybe a) -> ParsecT s u m a
+ Text.Pandoc.Parsing: tokenPrim :: forall s (m :: Type -> Type) t a u. Stream s m t => (t -> String) -> (SourcePos -> t -> s -> SourcePos) -> (t -> Maybe a) -> ParsecT s u m a
- Text.Pandoc.Parsing: try :: () => ParsecT s u m a -> ParsecT s u m a
+ Text.Pandoc.Parsing: try :: forall s u (m :: Type -> Type) a. ParsecT s u m a -> ParsecT s u m a
- Text.Pandoc.Parsing: unexpected :: Stream s m t => String -> ParsecT s u m a
+ Text.Pandoc.Parsing: unexpected :: forall s (m :: Type -> Type) t u a. Stream s m t => String -> ParsecT s u m a
- Text.Pandoc.Parsing: updateState :: Monad m => (u -> u) -> ParsecT s u m ()
+ Text.Pandoc.Parsing: updateState :: forall (m :: Type -> Type) u s. Monad m => (u -> u) -> ParsecT s u m ()

Files

MANUAL.txt view
@@ -1,7 +1,7 @@ --- title: Pandoc User's Guide author: John MacFarlane-date: October 20, 2020+date: November 3, 2020 ---  # Synopsis@@ -665,18 +665,18 @@  :   Specifies what to do with insertions, deletions, and comments     produced by the MS Word "Track Changes" feature.  `accept` (the-    default), inserts all insertions, and ignores all-    deletions. `reject` inserts all deletions and ignores-    insertions. Both `accept` and `reject` ignore comments. `all` puts-    in insertions, deletions, and comments, wrapped in spans with-    `insertion`, `deletion`, `comment-start`, and `comment-end`-    classes, respectively. The author and time of change is-    included. `all` is useful for scripting: only accepting changes-    from a certain reviewer, say, or before a certain date. If a-    paragraph is inserted or deleted, `track-changes=all` produces a-    span with the class `paragraph-insertion`/`paragraph-deletion`-    before the affected paragraph break. This option only affects the-    docx reader.+    default) processes all the insertions and deletions.+    `reject` ignores them.  Both `accept` and `reject` ignore comments.+    `all` includes 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 included. `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` before the+    affected paragraph break. This option only affects the docx+    reader.  `--extract-media=`*DIR* @@ -1533,6 +1533,7 @@ bibliography: - foobar.bib - barbaz.json+citation-abbreviations: abbrevs.json  # Filters will be assumed to be Lua filters if they have # the .lua extension, and json filters otherwise.  But@@ -2189,7 +2190,7 @@ ### Variables for HTML  `document-css`-:   Enables inclusion of most of the CSS in the `styles.html`+:   Enables inclusion of most of the [CSS] in the `styles.html`     [partial](#partials) (have a look with     `pandoc --print-default-data-file=templates/styles.html`).     Unless you use [`--css`](#option--css), this variable@@ -2213,6 +2214,10 @@ `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.@@ -2222,6 +2227,28 @@  `margin-left`, `margin-right`, `margin-top`, `margin-bottom` :   sets the corresponding CSS `padding` properties on the `body` element.++To override or extend some [CSS] for just one document, include for example:++    ---+    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>+    ---++[CSS]: https://developer.mozilla.org/en-US/docs/Learn/CSS  ### Variables for HTML math 
cabal.project view
@@ -4,8 +4,8 @@   flags: +embed_data_files -trypandoc   ghc-options: -j +RTS -A64m -RTS --- source-repository-package---     type: git---     location: https://github.com/jgm/citeproc---     tag: 0.1.0.3+source-repository-package+    type: git+    location: https://github.com/jgm/citeproc+    tag: 1860f189e9995c1dc27a68893bedfbf8de1ee67f 
changelog.md view
@@ -1,5 +1,110 @@ # Revision history for pandoc +## pandoc 2.11.1 (2020-11-03)++  * DocBook Reader: fix duplicate bibliography bug (#6773, Nils Carlson).++  * HTML reader:++    + Parse contents of iframes (#6770).+    + Parse inline svg as image unless `raw_html` is set in the reader (in+      which case the svg is passed through as raw HTML) (#6770).++  * LaTeX reader:++    + Fix bug parsing macro arguments (#6796).  If `\cL` is+      defined as `\mathcal{L}`, and `\til` as `\tilde{#1}`, then+      `\til\cL` should expand to `\tilde{\mathcal{L}}`, but+      pandoc was expanding it to `\tilde\mathcal{L}`.  This is+      fixed by parsing the arguments in "verbatim mode" when the+      macro expands arguments at the point of use.+    + Properly support optional (cite) argument for+      `\blockquote` from `csquotes` (#6802).++  * LaTeX writer: Improved calculation of table column widths.+    We now have LaTeX do the calculation, using `\tabcolsep`.+    So we should now have accurate relative column widths no+    matter what the text width.  The default template has been modified to load+    the calc package if tables are used.++  * HTML writer: Fix duplicate "class" attribute for table+    rows (Andy Morris).++  * Text.Pandoc.Filter: allow shorter YAML representation of Citeproc+    (Albert Krewinkel).  The map-based YAML representation of filters expects+    `type` and `path` fields. The path field had to be present for all filter+    types, but is not used for citeproc filters. The field can now be omitted+    when type is "citeproc", as described in the MANUAL.++  * Text.Pandoc.Error: Add `PandocBibliographyError` constructor+    for `PandocError` [API change].  This ensures that bibliography parsing+    errors generate messages that include the bibliography file name --+    otherwise it can be quite mysterious where it is coming from.++  * Citeproc: properly handle `csl` field with `data:` URI (#6783).+    This is used with the JATS writer, so this fixes a regression+    in pandoc 2.11 with JATS output and citeproc.++  * Allow `citation-abbreviations` in defaults file.++  * JATS templates: ensure `jats_publishing` output is valid+    (Albert Krewinkel).++  * LaTeX template:  Fix `CSLRightInline`, so that it does not+    run over the right margin.++  * HTML template: default CSS tweaks (Mauro Bieg and John+    MacFarlane).++    - Fix margin before codeblock+    - Add `monobackgroundcolor` variable, making the background color+      and padding of code optional.+    - Ensure that backgrounds from highlighting styles take precedence over+      monobackgroundcolor+    - Remove list markers from TOC+    - Add margin-bottom where needed+    - Remove italics from blockquote styling+    - Change borders and spacing in tables to be more consistent with other+       output formats+    - Style h5, h6+    - Set font-size for print media to 12pt.+    - Reduce interline space.+    - Reduce interparagraph space.+    - Reduce line width.+    - Remove the special `line-height: 1` for table cells.+    - Remove the special line-height for pre.+    - Ensure that there is a bit more space before a heading+      than after.+    - Slightly reduced space after title header.+    - Add CSS example to MANUAL++  * man template:  Change comment that triggers `tbl` from+    `.\"t` to `'\" t`, as specified in groff_man(7) (#6803).++  * Use latest commonmark, commonmark-extensions.+    This fixes a bug with nested blocks in footnotes with the+    `footnote` extension to `commonmark`.  See jgm/commonmark-hs#63.++  * Citeproc: use comma for in-text citations inside footnotes.+    When an author-in-text citation like `@foo` occurs in a footnote,+    we now render it with:  `AUTHOR NAME + COMMA + SPACE + REST`.+    Previously we rendered: `AUTHOR NAME + SPACE + "(" + REST + ")"`.+    This gives better results.  Note that normal citations are still+    rendered in parentheses.++  * Use latest citeproc:++    + citeproc no longer capitalizes notes, so we do it+      in pandoc when appropriate.+    + Closes #6783.++  * Clarify manual on `--track-changes` (#6801).++  * Add `doc/jats.md` to document pandoc's handling of JATS+    (#6794, Albert Krewinkel).++  * Fix code example in lua-filters.md (#6795).+ ## pandoc 2.11.0.4 (2020-10-21)    * Commonmark writer: fix regression with fenced divs (#6768).
data/templates/article.jats_publishing view
@@ -14,6 +14,13 @@ $if(journal.pmc)$ <journal-id journal-id-type="pmc">$journal.pmc$</journal-id> $endif$+$-- Fallback: an empty journal-id in case none is available.+$if(journal.publisher-id)$+$elseif(journal.nlm-ta)$+$elseif(journal.pmc)$+$else$+<journal-id></journal-id>+$endif$ <journal-title-group> $if(journal.title)$ <journal-title>$journal.title$</journal-title>@@ -27,6 +34,12 @@ $endif$ $if(journal.eissn)$ <issn pub-type="epub">$journal.eissn$</issn>+$endif$+$-- At least one issn element is required; use empty issn as fallback+$if(journal.pissn)$+$elseif(journal.eissn)$+$else$+<issn></issn> $endif$ <publisher> <publisher-name>$journal.publisher-name$</publisher-name>
data/templates/default.latex view
@@ -257,6 +257,7 @@ $endif$ $if(tables)$ \usepackage{longtable,booktabs}+\usepackage{calc} % for calculating minipage widths $if(beamer)$ \usepackage{caption} % Make caption package work with longtable@@ -383,10 +384,10 @@   \fi  }%  {}-\usepackage{calc} % for \widthof, \maxof+\usepackage{calc} \newcommand{\CSLBlock}[1]{#1\hfill\break}-\newcommand{\CSLLeftMargin}[1]{\parbox[t]{\maxof{\widthof{#1}}{\csllabelwidth}}{#1}}-\newcommand{\CSLRightInline}[1]{\parbox[t]{\linewidth}{#1}}+\newcommand{\CSLLeftMargin}[1]{\parbox[t]{\csllabelwidth}{#1}}+\newcommand{\CSLRightInline}[1]{\parbox[t]{\linewidth - \csllabelwidth}{#1}} \newcommand{\CSLIndent}[1]{\hspace{\cslhangindent}#1} $endif$ 
data/templates/default.man view
@@ -1,5 +1,5 @@ $if(has-tables)$-.\"t+'\" t $endif$ $if(pandoc-version)$ .\" Automatically generated by Pandoc $pandoc-version$
data/templates/styles.html view
@@ -1,6 +1,6 @@ $if(document-css)$ html {-  line-height: $if(linestretch)$$linestretch$$else$1.7$endif$;+  line-height: $if(linestretch)$$linestretch$$else$1.5$endif$;   font-family: $if(mainfont)$$mainfont$$else$Georgia, serif$endif$;   font-size: $if(fontsize)$$fontsize$$else$20px$endif$;   color: $if(fontcolor)$$fontcolor$$else$#1a1a1a$endif$;@@ -8,7 +8,7 @@ } body {   margin: 0 auto;-  max-width: 40em;+  max-width: 36em;   padding-left: $if(margin-left)$$margin-left$$else$50px$endif$;   padding-right: $if(margin-right)$$margin-right$$else$50px$endif$;   padding-top: $if(margin-top)$$margin-top$$else$50px$endif$;@@ -28,6 +28,7 @@   body {     background-color: transparent;     color: black;+    font-size: 12pt;   }   p, h2, h3 {     orphans: 3;@@ -38,7 +39,7 @@   } } p {-  margin-top: 1.7em;+  margin: 1em 0; } a {   color: $if(linkcolor)$$linkcolor$$else$#1a1a1a$endif$;@@ -50,59 +51,90 @@   max-width: 100%; } h1, h2, h3, h4, h5, h6 {-  margin-top: 1.7em;+  margin-top: 1.4em; }+h5, h6 {+  font-size: 1em;+  font-style: italic;+}+h6 {+  font-weight: normal;+} ol, ul {   padding-left: 1.7em;-  margin-top: 1.7em;+  margin-top: 1em; } li > ol, li > ul {   margin-top: 0; } blockquote {-  margin: 1.7em 0 1.7em 1.7em;+  margin: 1em 0 1em 1.7em;   padding-left: 1em;   border-left: 2px solid #e6e6e6;-  font-style: italic;+  color: #606060; } code {   font-family: $if(monofont)$$monofont$$else$Menlo, Monaco, 'Lucida Console', Consolas, monospace$endif$;-  background-color: #f0f0f0;+$if(monobackgroundcolor)$+  background-color: $monobackgroundcolor$;+  padding: .2em .4em;+$endif$   font-size: 85%;   margin: 0;-  padding: .2em .4em; } pre {-  line-height: 1.5em;+  margin: 1em 0;+$if(monobackgroundcolor)$+  background-color: $monobackgroundcolor$;   padding: 1em;-  background-color: #f0f0f0;+$endif$   overflow: auto; } pre code {   padding: 0;   overflow: visible; }+.sourceCode {+ background-color: transparent;+ overflow: visible;+} hr {   background-color: #1a1a1a;   border: none;   height: 1px;-  margin-top: 1.7em;+  margin: 1em 0; } table {+  margin: 1em 0;   border-collapse: collapse;   width: 100%;   overflow-x: auto;   display: block;+  font-variant-numeric: lining-nums tabular-nums; }-th, td {-  border-bottom: 1px solid lightgray;-  padding: 1em 3em 1em 0;+table caption {+  margin-bottom: 0.75em; }+tbody {+  margin-top: 0.5em;+  border-top: 1px solid $if(fontcolor)$$fontcolor$$else$#1a1a1a$endif$;+  border-bottom: 1px solid $if(fontcolor)$$fontcolor$$else$#1a1a1a$endif$;+}+th {+  border-top: 1px solid $if(fontcolor)$$fontcolor$$else$#1a1a1a$endif$;+  padding: 0.25em 0.5em 0.25em 0.5em;+}+td {+  padding: 0.125em 0.5em 0.25em 0.5em;+} header {-  margin-bottom: 6em;+  margin-bottom: 4em;   text-align: center; }-nav a:not(:hover) {+#TOC li {+  list-style: none;+}+#TOC a:not(:hover) {   text-decoration: none; } $endif$
man/pandoc.1 view
@@ -1,7 +1,7 @@-.\"t-.\" Automatically generated by Pandoc 2.11.0.4+'\" t+.\" Automatically generated by Pandoc 2.11.1 .\"-.TH "Pandoc User\[cq]s Guide" "" "October 20, 2020" "pandoc 2.11.0.4" ""+.TH "Pandoc User\[cq]s Guide" "" "November 3, 2020" "pandoc 2.11.1" "" .hy .SH NAME pandoc - general markup converter@@ -704,12 +704,12 @@ \f[B]\f[CB]--track-changes=accept\f[B]\f[R]|\f[B]\f[CB]reject\f[B]\f[R]|\f[B]\f[CB]all\f[B]\f[R] Specifies what to do with insertions, deletions, and comments produced by the MS Word \[lq]Track Changes\[rq] feature.-\f[C]accept\f[R] (the default), inserts all insertions, and ignores all+\f[C]accept\f[R] (the default) processes all the insertions and deletions.-\f[C]reject\f[R] inserts all deletions and ignores insertions.+\f[C]reject\f[R] ignores them. Both \f[C]accept\f[R] and \f[C]reject\f[R] ignore comments.-\f[C]all\f[R] puts in insertions, deletions, and comments, wrapped in-spans with \f[C]insertion\f[R], \f[C]deletion\f[R],+\f[C]all\f[R] includes all insertions, deletions, and comments, wrapped+in spans with \f[C]insertion\f[R], \f[C]deletion\f[R], \f[C]comment-start\f[R], and \f[C]comment-end\f[R] classes, respectively. The author and time of change is included.@@ -1748,6 +1748,7 @@ bibliography: - foobar.bib - barbaz.json+citation-abbreviations: abbrevs.json  # Filters will be assumed to be Lua filters if they have # the .lua extension, and json filters otherwise.  But@@ -2489,6 +2490,10 @@ \f[B]\f[CB]monofont\f[B]\f[R] sets the CSS \f[C]font-family\f[R] property on \f[C]code\f[R] elements. .TP+\f[B]\f[CB]monobackgroundcolor\f[B]\f[R]+sets the CSS \f[C]background-color\f[R] property on \f[C]code\f[R]+elements and adds extra padding.+.TP \f[B]\f[CB]linestretch\f[B]\f[R] sets the CSS \f[C]line-height\f[R] property on the \f[C]html\f[R] element, which is preferred to be unitless.@@ -2500,6 +2505,31 @@ \f[B]\f[CB]margin-left\f[B]\f[R], \f[B]\f[CB]margin-right\f[B]\f[R], \f[B]\f[CB]margin-top\f[B]\f[R], \f[B]\f[CB]margin-bottom\f[B]\f[R] sets the corresponding CSS \f[C]padding\f[R] properties on the \f[C]body\f[R] element.+.PP+To override or extend some CSS for just one document, include for+example:+.IP+.nf+\f[C]+---+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>+---+\f[R]+.fi .SS Variables for HTML math .TP \f[B]\f[CB]classoption\f[B]\f[R]
pandoc.cabal view
@@ -1,6 +1,6 @@ cabal-version:   2.2 name:            pandoc-version:         2.11.0.4+version:         2.11.1 build-type:      Simple license:         GPL-2.0-or-later license-file:    COPYING.md@@ -405,8 +405,8 @@                  bytestring            >= 0.9      && < 0.12,                  case-insensitive      >= 1.2      && < 1.3,                  citeproc              >= 0.1.0.3  && < 0.2,-                 commonmark            >= 0.1.0.2  && < 0.2,-                 commonmark-extensions >= 0.2      && < 0.3,+                 commonmark            >= 0.1.1    && < 0.2,+                 commonmark-extensions >= 0.2.0.2  && < 0.3,                  commonmark-pandoc     >= 0.2      && < 0.3,                  connection            >= 0.3.1,                  containers            >= 0.4.2.1  && < 0.7,
src/Text/Pandoc/App/Opt.hs view
@@ -367,6 +367,11 @@                                                     foldr addItem o xs)           <|>           (parseYAML v >>= \(x :: Text) -> return $ \o -> addItem x o)+    "citation-abbreviations" ->+      parseYAML v >>= \x ->+             return (\o -> o{ optMetadata =+                                addMeta "citation-abbreviations" (T.unpack x)+                                  (optMetadata o) })     "ipynb-output" ->       parseYAML v >>= \x -> return (\o -> o{ optIpynbOutput = x })     "include-before-body" ->
src/Text/Pandoc/Citeproc.hs view
@@ -28,7 +28,7 @@ import Text.Pandoc (PandocMonad(..), PandocError(..),                     readDataFile, ReaderOptions(..), pandocExtensions,                     report, LogMessage(..), fetchItem)-import Text.Pandoc.Shared (stringify, ordNub, blocksToInlines)+import Text.Pandoc.Shared (stringify, ordNub, blocksToInlines, tshow) import qualified Text.Pandoc.UTF8 as UTF8 import Data.Aeson (eitherDecode) import Data.Default@@ -60,7 +60,7 @@         setResourcePath $ oldRp ++ maybe []                                    (\u -> [u <> "/csl",                                            u <> "/csl/dependent"]) mbUdd-        let fp' = if T.any (=='.') fp+        let fp' = if T.any (=='.') fp || "data:" `T.isPrefixOf` fp                      then fp                      else fp <> defaultExtension         (result, _) <- fetchItem fp'@@ -90,7 +90,6 @@         UTF8.toText <$>           catchError (getFile ".csl" basename) (\_ -> fst <$> fetchItem url) -  -- TODO check .csl directory if not found   styleRes <- Citeproc.parseStyle getParentStyle cslContents   style <-     case styleRes of@@ -164,8 +163,10 @@                     _ -> id    let Pandoc meta'' bs' =-         maybe id (setMeta "nocite") metanocites $-         walk (fixQuotes .  mvPunct moveNotes locale) $ walk deNote $+         maybe id (setMeta "nocite") metanocites .+         walk (map capitalizeNoteCitation .+                fixQuotes .  mvPunct moveNotes locale) .+         walk deNote .          evalState (walkM insertResolvedCitations $ Pandoc meta' bs)          $ cits   return $ Pandoc meta''@@ -206,16 +207,18 @@         -> Maybe FilePath         -> ByteString         -> m [Reference Inlines]-getRefs locale format idpred mbfp raw =+getRefs locale format idpred mbfp raw = do+  let err' = throwError .+             PandocBibliographyError (maybe mempty T.pack mbfp)   case format of     Format_bibtex ->-      either (throwError . PandocAppError . T.pack . show) return .+      either (err' . tshow) return .         readBibtexString Bibtex locale idpred . UTF8.toText $ raw     Format_biblatex ->-      either (throwError . PandocAppError . T.pack . show) return .+      either (err' . tshow) return .         readBibtexString Biblatex locale idpred . UTF8.toText $ raw     Format_json ->-      either (throwError . PandocAppError . T.pack)+      either (err' . T.pack)              (return . filter (idpred . unItemId . referenceId)) .         cslJsonToReferences $ raw     Format_yaml -> do@@ -514,15 +517,33 @@ extractText (NumVal n)   = T.pack (show n) extractText _            = mempty -deNote :: Inline -> Inline-deNote (Note bs) = Note $ walk go bs+capitalizeNoteCitation :: Inline -> Inline+capitalizeNoteCitation (Cite cs [Note [Para ils]]) =+  Cite cs+  [Note [Para $ B.toList $ addTextCase Nothing CapitalizeFirst+              $ B.fromList ils]]+capitalizeNoteCitation x = x++deNote :: [Inline] -> [Inline]+deNote [] = []+deNote (Note bs:rest) =+  Note (walk go bs) : deNote rest  where-  go (Note bs')-       = Span ("",[],[]) (Space : Str "(" :-                          (removeFinalPeriod-                            (blocksToInlines bs')) ++ [Str ")"])+  go (Cite (c:cs) ils)+    | citationMode c == AuthorInText+      = Cite cs (concatMap noteAfterComma ils)+    | otherwise+      = Cite cs (concatMap noteInParens ils)   go x = x-deNote x = x+  noteInParens (Note bs')+       = Space : Str "(" :+         removeFinalPeriod (blocksToInlines bs') ++ [Str ")"]+  noteInParens x = [x]+  noteAfterComma (Note bs')+       = Str "," : Space :+         removeFinalPeriod (blocksToInlines bs')+  noteAfterComma x = [x]+deNote (x:xs) = x : deNote xs  -- Note: we can't use dropTextWhileEnd indiscriminately, -- because this would remove the final period on abbreviations like Ibid.
src/Text/Pandoc/Error.hs view
@@ -62,6 +62,7 @@                  | PandocUnknownWriterError Text                  | PandocUnsupportedExtensionError Text Text                  | PandocCiteprocError CiteprocError+                 | PandocBibliographyError Text Text                  deriving (Show, Typeable, Generic)  instance Exception PandocError@@ -143,6 +144,8 @@       "for " <> f     PandocCiteprocError e' -> err 24 $       prettyCiteprocError e'+    PandocBibliographyError fp msg -> err 25 $+      "Error reading bibliography file " <> fp <> ":\n" <> msg  err :: Int -> Text -> IO a err exitCode msg = do
src/Text/Pandoc/Filter.hs view
@@ -47,11 +47,13 @@  parseYAML node =   (withMap "Filter" $ \m -> do     ty <- m .: "type"-    fp <- m .: "path"+    fp <- m .:? "path"+    let missingPath = fail $ "Expected 'path' for filter of type " ++ show ty+    let filterWithPath constr = maybe missingPath (return . constr . T.unpack)     case ty of       "citeproc" -> return CiteprocFilter-      "lua"  -> return $ LuaFilter $ T.unpack fp-      "json" -> return $ JSONFilter $ T.unpack fp+      "lua"  -> filterWithPath LuaFilter fp+      "json" -> filterWithPath JSONFilter fp       _      -> fail $ "Unknown filter type " ++ show (ty :: T.Text)) node   <|>   (withStr "Filter" $ \t -> do
src/Text/Pandoc/Readers/DocBook.hs view
@@ -794,11 +794,10 @@         "titleabbrev" -> skip         "authorinitials" -> skip         "bibliography" -> sect 0-        "bibliodiv" -> do-           tit <- case filterChild (named "title") e of-                    Just _  -> sect 1-                    Nothing -> return mempty-           (tit <>) <$> parseMixed para (elContent e)+        "bibliodiv" ->+          case filterChild (named "title") e of+            Just _  -> sect 1+            Nothing -> return mempty         "biblioentry" -> parseMixed para (elContent e)         "bibliomisc" -> parseMixed para (elContent e)         "bibliomixed" -> parseMixed para (elContent e)
src/Text/Pandoc/Readers/HTML.hs view
@@ -47,6 +47,7 @@ import qualified Text.Pandoc.Builder as B import Text.Pandoc.Class.PandocMonad (PandocMonad (..)) import Text.Pandoc.CSS (foldOrElse, pickStyleAttrProps)+import qualified Text.Pandoc.UTF8 as UTF8 import Text.Pandoc.Definition import Text.Pandoc.Readers.LaTeX (rawLaTeXInline) import Text.Pandoc.Readers.LaTeX.Types (Macro)@@ -65,6 +66,7 @@ import Text.Pandoc.Walk import Text.Parsec.Error import Text.TeXMath (readMathML, writeTeX)+import Data.ByteString.Base64 (encode)  -- | Convert HTML-formatted string to 'Pandoc' document. readHtml :: PandocMonad m@@ -87,7 +89,7 @@   result <- flip runReaderT def $        runParserT parseDoc        (HTMLState def{ stateOptions = opts }-         [] Nothing Set.empty [] M.empty)+         [] Nothing Set.empty [] M.empty opts)        "source" tags   case result of     Right doc -> return doc@@ -110,7 +112,8 @@      baseHref    :: Maybe URI,      identifiers :: Set.Set Text,      logMessages :: [LogMessage],-     macros      :: M.Map Text Macro+     macros      :: M.Map Text Macro,+     readerOpts  :: ReaderOptions   }  data HTMLLocal = HTMLLocal { quoteContext :: QuoteContext@@ -183,6 +186,7 @@             , pDiv             , pPlain             , pFigure+            , pIframe             , pRawHtmlBlock             ]   trace (T.take 60 $ tshow $ B.toList res)@@ -399,6 +403,18 @@                else kvs   return $ B.divWith (ident, classes', kvs') contents +pIframe :: PandocMonad m => TagParser m Blocks+pIframe = try $ do+  guardDisabled Ext_raw_html+  tag <- pSatisfy (tagOpen (=="iframe") (isJust . lookup "src"))+  pCloses "iframe" <|> eof+  url <- canonicalizeUrl $ fromAttrib "src" tag+  (bs, _) <- openURL url+  let inp = UTF8.toText bs+  opts <- readerOpts <$> getState+  Pandoc _ contents <- readHtml opts inp+  return $ B.divWith ("",["iframe"],[]) $ B.fromList contents+ pRawHtmlBlock :: PandocMonad m => TagParser m Blocks pRawHtmlBlock = do   raw <- pHtmlBlock "script" <|> pHtmlBlock "style" <|> pHtmlBlock "textarea"@@ -655,6 +671,7 @@            , pLineBreak            , pLink            , pImage+           , pSvg            , pBdo            , pCode            , pCodeWithClass [("samp","sample"),("var","variable")]@@ -792,6 +809,19 @@                    v  -> [(k, v)]   let kvs = concatMap getAtt ["width", "height", "sizes", "srcset"]   return $ B.imageWith (uid, cls, kvs) (escapeURI url) title (B.text alt)++pSvg :: PandocMonad m => TagParser m Inlines+pSvg = do+  guardDisabled Ext_raw_html+  -- if raw_html enabled, parse svg tag as raw+  opent@(TagOpen _ attr') <- pSatisfy (matchTagOpen "svg" [])+  let (ident,cls,_) = toAttr attr'+  contents <- many (notFollowedBy (pCloses "svg") >> pAny)+  closet <- TagClose "svg" <$ (pCloses "svg" <|> eof)+  let rawText = T.strip $ renderTags' (opent : contents ++ [closet])+  let svgData = "data:image/svg+xml;base64," <>+                   UTF8.toText (encode $ UTF8.fromText rawText)+  return $ B.imageWith (ident,cls,[]) svgData mempty mempty  pCodeWithClass :: PandocMonad m => [(T.Text,Text)] -> TagParser m Inlines pCodeWithClass elemToClass = try $ do
src/Text/Pandoc/Readers/LaTeX.hs view
@@ -309,18 +309,19 @@      else doubleQuoted . langspan <$> withQuoteContext InDoubleQuote tok  blockquote :: PandocMonad m => Bool -> Maybe Text -> LP m Blocks-blockquote citations mblang = do-  citePar <- if citations-                then do-                  cs <- cites NormalCitation False-                  return $ para (cite cs mempty)-                else return mempty+blockquote cvariant mblang = do+  citepar <- if cvariant+                then (\xs -> para (cite xs mempty))+                       <$> cites NormalCitation False+                else option mempty $ para <$> bracketed inline   let lang = mblang >>= babelLangToBCP47   let langdiv = case lang of                       Nothing -> id                       Just l  -> divWith ("",[],[("lang", renderLang l)])+  _closingPunct <- option mempty $ bracketed inline -- currently ignored   bs <- grouped block-  return $ blockQuote . langdiv $ (bs <> citePar)+  optional $ symbolIn (".:;?!" :: [Char])  -- currently ignored+  return $ blockQuote . langdiv $ (bs <> citepar)  doAcronym :: PandocMonad m => Text -> LP m Inlines doAcronym form = do
src/Text/Pandoc/Readers/LaTeX/Parsing.hs view
@@ -484,7 +484,11 @@            Nothing -> mzero            Just (Macro expansionPoint argspecs optarg newtoks) -> do              let getargs' = do-                   args <- case optarg of+                   args <-+                     (case expansionPoint of+                        ExpandWhenUsed    -> withVerbatimMode+                        ExpandWhenDefined -> id)+                     $ case optarg of                              Nothing -> getargs M.empty argspecs                              Just o  -> do                                 x <- option o bracketedToks
src/Text/Pandoc/Writers/HTML.hs view
@@ -1089,16 +1089,18 @@                -> TableRow                -> StateT WriterState m Html tableRowToHtml opts (TableRow tblpart attr rownum rowhead rowbody) = do-  let rowclass = A.class_ $ case rownum of+  let rowclass = case rownum of         Ann.RowNumber x | x `rem` 2 == 1   -> "odd"         _               | tblpart /= Thead -> "even"         _                                  -> "header"+  let attr' = case attr of+                (id', classes, rest) -> (id', rowclass:classes, rest)   let celltype = case tblpart of                    Thead -> HeaderCell                    _     -> BodyCell   headcells <- mapM (cellToHtml opts HeaderCell) rowhead   bodycells <- mapM (cellToHtml opts celltype) rowbody-  rowHtml <- addAttrs opts attr $ H.tr ! rowclass $ do+  rowHtml <- addAttrs opts attr' $ H.tr $ do     nl opts     mconcat headcells     mconcat bodycells
src/Text/Pandoc/Writers/LaTeX.hs view
@@ -851,9 +851,6 @@                 -> [[Block]]                 -> LW m (Doc Text) tableRowToLaTeX header aligns widths cols = do-  -- scale factor compensates for extra space between columns-  -- so the whole table isn't larger than columnwidth-  let scaleFactor = 0.97 ** fromIntegral (length aligns)   let isSimple [Plain _] = True       isSimple [Para  _] = True       isSimple []        = True@@ -861,9 +858,10 @@   -- simple tables have to have simple cells:   let widths' = if all (== 0) widths && not (all isSimple cols)                    then replicate (length aligns)-                          (scaleFactor / fromIntegral (length aligns))-                   else map (scaleFactor *) widths-  cells <- mapM (tableCellToLaTeX header) $ zip3 widths' aligns cols+                          (1 / fromIntegral (length aligns))+                   else widths+  let numcols = length widths'+  cells <- mapM (tableCellToLaTeX header numcols) $ zip3 widths' aligns cols   return $ hsep (intersperse "&" cells) <> "\\tabularnewline"  -- For simple latex tables (without minipages or parboxes),@@ -890,11 +888,12 @@ displayMathToInline (Math DisplayMath x) = Math InlineMath x displayMathToInline x                    = x -tableCellToLaTeX :: PandocMonad m => Bool -> (Double, Alignment, [Block])+tableCellToLaTeX :: PandocMonad m+                 => Bool -> Int -> (Double, Alignment, [Block])                  -> LW m (Doc Text)-tableCellToLaTeX _      (0,     _,     blocks) =+tableCellToLaTeX _ _    (0,     _,     blocks) =   blockListToLaTeX $ walk fixLineBreaks $ walk displayMathToInline blocks-tableCellToLaTeX header (width, align, blocks) = do+tableCellToLaTeX header numcols (width, align, blocks) = do   beamer <- gets stBeamer   externalNotes <- gets stExternalNotes   inMinipage <- gets stInMinipage@@ -912,9 +911,12 @@                AlignCenter  -> "\\centering"                AlignDefault -> "\\raggedright"   return $ "\\begin{minipage}" <> valign <>-           braces (text (printf "%.2f\\columnwidth" width)) <>+           braces (text (printf+              "(\\columnwidth - %d\\tabcolsep) * \\real{%.2f}"+              (numcols - 1) width)) <>            halign <> cr <> cellContents <> "\\strut" <> cr <>            "\\end{minipage}"+-- (\columnwidth - 8\tabcolsep) * \real{0.15}  notesToLaTeX :: [Doc Text] -> Doc Text notesToLaTeX [] = empty
stack.yaml view
@@ -19,10 +19,11 @@ - HsYAML-0.2.1.0 - HsYAML-aeson-0.2.0.0 - doctemplates-0.8.2-- commonmark-0.1.0.2-- commonmark-extensions-0.2.0.1+- commonmark-0.1.1+- commonmark-extensions-0.2.0.2 - commonmark-pandoc-0.2.0.1-- citeproc-0.1.0.3+- git: https://github.com/jgm/citeproc+  commit: 1860f189e9995c1dc27a68893bedfbf8de1ee67f  ghc-options:    "$locals": -fhide-source-paths -Wno-missing-home-modules
test/command/5367.md view
@@ -23,18 +23,18 @@ \begin{longtable}[]{@{}c@{}} \caption[Sample table.]{Sample table.\footnote{caption footnote}}\tabularnewline \toprule-\begin{minipage}[b]{0.16\columnwidth}\centering+\begin{minipage}[b]{(\columnwidth - 0\tabcolsep) * \real{0.17}}\centering Fruit\footnote{header footnote}\strut \end{minipage}\tabularnewline \midrule \endfirsthead \toprule-\begin{minipage}[b]{0.16\columnwidth}\centering+\begin{minipage}[b]{(\columnwidth - 0\tabcolsep) * \real{0.17}}\centering Fruit{}\strut \end{minipage}\tabularnewline \midrule \endhead-\begin{minipage}[t]{0.16\columnwidth}\centering+\begin{minipage}[t]{(\columnwidth - 0\tabcolsep) * \real{0.17}}\centering Bans\footnote{table cell footnote}\strut \end{minipage}\tabularnewline \bottomrule
+ test/command/6783.md view
@@ -0,0 +1,26 @@+```+% pandoc -f markdown -t plain -s --citeproc+---+references:+- author:+  - family: Jupyter+    given: Project+  container-title: Proceedings of the 17th Python in Science Conference+  id: 'ref-1'+  issued: 2018+  title: 'Binder 2.0 - Reproducible, interactive, sharable environments for science at scale'+  type: 'paper-conference'+  volume:+...++This is a test[@ref-1].+^D+++This is a test(Jupyter 2018).++Jupyter, Project. 2018. “Binder 2.0 - Reproducible, Interactive,+Sharable Environments for Science at Scale.” In Proceedings of the 17th+Python in Science Conference.+```+
+ test/command/6796.md view
@@ -0,0 +1,16 @@+```+% pandoc -f latex -t markdown+\newcommand{\cL}{\mathcal{L}}+\newcommand{\til}[1]{\tilde{#1}}++$$\til\cL$$++\newcommand{\mc}[1]{\mathcal{#1}}+\newcommand{\dL}{\mc{L}}++$$\til\dL$$+^D+$$\tilde{\mathcal{L}}$$++$$\tilde{\mathcal{L}}$$+```
+ test/command/6802.md view
@@ -0,0 +1,9 @@+```+% pandoc -f latex -t native+\blockquote[test][]{quote}+^D+[BlockQuote+ [Para [Str "quote"]+ ,Para [Str "test"]]]++```
+ test/command/docbook-bibliography.md view
@@ -0,0 +1,20 @@+```+% pandoc -f docbook -t native --quiet+<bibliodiv>+<title>Document References</title>+<bibliomixed>+<bibliomisc><anchor xml:id="refTheFirst" xreflabel="[1]"/>[1] First reference</bibliomisc>+</bibliomixed>+<bibliomixed>+<bibliomisc><anchor xml:id="refTheSecond" xreflabel="[2]"/>[2] Second reference</bibliomisc>+</bibliomixed>+<bibliomixed>+<bibliomisc><anchor xml:id="refTheThird" xreflabel="[3]"/>[3] Third reference</bibliomisc>+</bibliomixed>+</bibliodiv>+^D+[Header 1 ("",[],[]) [Str "Document",Space,Str "References"]+,Para [Span ("refTheFirst",[],[]) [],Str "[1]",Space,Str "First",Space,Str "reference"]+,Para [Span ("refTheSecond",[],[]) [],Str "[2]",Space,Str "Second",Space,Str "reference"]+,Para [Span ("refTheThird",[],[]) [],Str "[3]",Space,Str "Third",Space,Str "reference"]]+```
test/command/pandoc-citeproc-chicago-fullnote-bibliography.md view
@@ -114,7 +114,7 @@     Roe, "Why Water Is Wet," in *Third Book*, ed. Sam Smith (Oxford:     Oxford University Press, 2007)](#ref-пункт3). -[^7]: [Doe and Roe](#ref-пункт3) (["Why Water Is Wet," 12](#ref-пункт3))+[^7]: [Doe and Roe](#ref-пункт3), ["Why Water Is Wet," 12](#ref-пункт3)     and a citation without locators ([Doe and Roe, "Why Water Is     Wet"](#ref-пункт3)). @@ -123,7 +123,7 @@  [^9]: See [Doe, *First Book*, 2005, 34--35](#ref-item1). -[^10]: Some citations (See [Doe, chap. 3](#ref-item1); [Doe and Roe,+[^10]: Some citations (see [Doe, chap. 3](#ref-item1); [Doe and Roe,     "Why Water Is Wet"](#ref-пункт3); [Doe, "Article,"     2006](#ref-item2)). 
test/command/pandoc-citeproc-locators-integrated.md view
@@ -29,7 +29,7 @@  [@citekey, p. \[89\]] -[@citekey and nothing else].+[@citekey and nothing else]  [@citekey, 123(4)\[5\]6, and suffix] @@ -79,7 +79,7 @@  [^9] -.[^10]+[^10]  [^11] 
test/lhs-test.html view
@@ -7,7 +7,7 @@   <title>lhs-test</title>   <style>     html {-      line-height: 1.7;+      line-height: 1.5;       font-family: Georgia, serif;       font-size: 20px;       color: #1a1a1a;@@ -15,7 +15,7 @@     }     body {       margin: 0 auto;-      max-width: 40em;+      max-width: 36em;       padding-left: 50px;       padding-right: 50px;       padding-top: 50px;@@ -35,6 +35,7 @@       body {         background-color: transparent;         color: black;+        font-size: 12pt;       }       p, h2, h3 {         orphans: 3;@@ -45,7 +46,7 @@       }     }     p {-      margin-top: 1.7em;+      margin: 1em 0;     }     a {       color: #1a1a1a;@@ -57,59 +58,82 @@       max-width: 100%;     }     h1, h2, h3, h4, h5, h6 {-      margin-top: 1.7em;+      margin-top: 1.4em;     }+    h5, h6 {+      font-size: 1em;+      font-style: italic;+    }+    h6 {+      font-weight: normal;+    }     ol, ul {       padding-left: 1.7em;-      margin-top: 1.7em;+      margin-top: 1em;     }     li > ol, li > ul {       margin-top: 0;     }     blockquote {-      margin: 1.7em 0 1.7em 1.7em;+      margin: 1em 0 1em 1.7em;       padding-left: 1em;       border-left: 2px solid #e6e6e6;-      font-style: italic;+      color: #606060;     }     code {       font-family: Menlo, Monaco, 'Lucida Console', Consolas, monospace;-      background-color: #f0f0f0;       font-size: 85%;       margin: 0;-      padding: .2em .4em;     }     pre {-      line-height: 1.5em;-      padding: 1em;-      background-color: #f0f0f0;+      margin: 1em 0;       overflow: auto;     }     pre code {       padding: 0;       overflow: visible;     }+    .sourceCode {+     background-color: transparent;+     overflow: visible;+    }     hr {       background-color: #1a1a1a;       border: none;       height: 1px;-      margin-top: 1.7em;+      margin: 1em 0;     }     table {+      margin: 1em 0;       border-collapse: collapse;       width: 100%;       overflow-x: auto;       display: block;+      font-variant-numeric: lining-nums tabular-nums;     }-    th, td {-      border-bottom: 1px solid lightgray;-      padding: 1em 3em 1em 0;+    table caption {+      margin-bottom: 0.75em;     }+    tbody {+      margin-top: 0.5em;+      border-top: 1px solid #1a1a1a;+      border-bottom: 1px solid #1a1a1a;+    }+    th {+      border-top: 1px solid #1a1a1a;+      padding: 0.25em 0.5em 0.25em 0.5em;+    }+    td {+      padding: 0.125em 0.5em 0.25em 0.5em;+    }     header {-      margin-bottom: 6em;+      margin-bottom: 4em;       text-align: center;     }-    nav a:not(:hover) {+    #TOC li {+      list-style: none;+    }+    #TOC a:not(:hover) {       text-decoration: none;     }     code{white-space: pre-wrap;}
test/lhs-test.html+lhs view
@@ -7,7 +7,7 @@   <title>lhs-test</title>   <style>     html {-      line-height: 1.7;+      line-height: 1.5;       font-family: Georgia, serif;       font-size: 20px;       color: #1a1a1a;@@ -15,7 +15,7 @@     }     body {       margin: 0 auto;-      max-width: 40em;+      max-width: 36em;       padding-left: 50px;       padding-right: 50px;       padding-top: 50px;@@ -35,6 +35,7 @@       body {         background-color: transparent;         color: black;+        font-size: 12pt;       }       p, h2, h3 {         orphans: 3;@@ -45,7 +46,7 @@       }     }     p {-      margin-top: 1.7em;+      margin: 1em 0;     }     a {       color: #1a1a1a;@@ -57,59 +58,82 @@       max-width: 100%;     }     h1, h2, h3, h4, h5, h6 {-      margin-top: 1.7em;+      margin-top: 1.4em;     }+    h5, h6 {+      font-size: 1em;+      font-style: italic;+    }+    h6 {+      font-weight: normal;+    }     ol, ul {       padding-left: 1.7em;-      margin-top: 1.7em;+      margin-top: 1em;     }     li > ol, li > ul {       margin-top: 0;     }     blockquote {-      margin: 1.7em 0 1.7em 1.7em;+      margin: 1em 0 1em 1.7em;       padding-left: 1em;       border-left: 2px solid #e6e6e6;-      font-style: italic;+      color: #606060;     }     code {       font-family: Menlo, Monaco, 'Lucida Console', Consolas, monospace;-      background-color: #f0f0f0;       font-size: 85%;       margin: 0;-      padding: .2em .4em;     }     pre {-      line-height: 1.5em;-      padding: 1em;-      background-color: #f0f0f0;+      margin: 1em 0;       overflow: auto;     }     pre code {       padding: 0;       overflow: visible;     }+    .sourceCode {+     background-color: transparent;+     overflow: visible;+    }     hr {       background-color: #1a1a1a;       border: none;       height: 1px;-      margin-top: 1.7em;+      margin: 1em 0;     }     table {+      margin: 1em 0;       border-collapse: collapse;       width: 100%;       overflow-x: auto;       display: block;+      font-variant-numeric: lining-nums tabular-nums;     }-    th, td {-      border-bottom: 1px solid lightgray;-      padding: 1em 3em 1em 0;+    table caption {+      margin-bottom: 0.75em;     }+    tbody {+      margin-top: 0.5em;+      border-top: 1px solid #1a1a1a;+      border-bottom: 1px solid #1a1a1a;+    }+    th {+      border-top: 1px solid #1a1a1a;+      padding: 0.25em 0.5em 0.25em 0.5em;+    }+    td {+      padding: 0.125em 0.5em 0.25em 0.5em;+    }     header {-      margin-bottom: 6em;+      margin-bottom: 4em;       text-align: center;     }-    nav a:not(:hover) {+    #TOC li {+      list-style: none;+    }+    #TOC a:not(:hover) {       text-decoration: none;     }     code{white-space: pre-wrap;}
test/tables.latex view
@@ -52,45 +52,57 @@ \begin{longtable}[]{@{}clrl@{}} \caption{Here's the caption. It may span multiple lines.}\tabularnewline \toprule-\begin{minipage}[b]{0.13\columnwidth}\centering+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering Centered Header\strut-\end{minipage} & \begin{minipage}[b]{0.12\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright Left Aligned\strut-\end{minipage} & \begin{minipage}[b]{0.14\columnwidth}\raggedleft+\end{minipage} &+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft Right Aligned\strut-\end{minipage} & \begin{minipage}[b]{0.31\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright Default aligned\strut \end{minipage}\tabularnewline \midrule \endfirsthead \toprule-\begin{minipage}[b]{0.13\columnwidth}\centering+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering Centered Header\strut-\end{minipage} & \begin{minipage}[b]{0.12\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright Left Aligned\strut-\end{minipage} & \begin{minipage}[b]{0.14\columnwidth}\raggedleft+\end{minipage} &+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft Right Aligned\strut-\end{minipage} & \begin{minipage}[b]{0.31\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright Default aligned\strut \end{minipage}\tabularnewline \midrule \endhead-\begin{minipage}[t]{0.13\columnwidth}\centering+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering First\strut-\end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright row\strut-\end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedleft+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft 12.0\strut-\end{minipage} & \begin{minipage}[t]{0.31\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright Example of a row that spans multiple lines.\strut \end{minipage}\tabularnewline-\begin{minipage}[t]{0.13\columnwidth}\centering+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering Second\strut-\end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright row\strut-\end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedleft+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft 5.0\strut-\end{minipage} & \begin{minipage}[t]{0.31\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright Here's another one. Note the blank line between rows.\strut \end{minipage}\tabularnewline \bottomrule@@ -100,33 +112,42 @@  \begin{longtable}[]{@{}clrl@{}} \toprule-\begin{minipage}[b]{0.13\columnwidth}\centering+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering Centered Header\strut-\end{minipage} & \begin{minipage}[b]{0.12\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright Left Aligned\strut-\end{minipage} & \begin{minipage}[b]{0.14\columnwidth}\raggedleft+\end{minipage} &+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft Right Aligned\strut-\end{minipage} & \begin{minipage}[b]{0.31\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[b]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright Default aligned\strut \end{minipage}\tabularnewline \midrule \endhead-\begin{minipage}[t]{0.13\columnwidth}\centering+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering First\strut-\end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright row\strut-\end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedleft+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft 12.0\strut-\end{minipage} & \begin{minipage}[t]{0.31\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright Example of a row that spans multiple lines.\strut \end{minipage}\tabularnewline-\begin{minipage}[t]{0.13\columnwidth}\centering+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering Second\strut-\end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright row\strut-\end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedleft+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft 5.0\strut-\end{minipage} & \begin{minipage}[t]{0.31\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright Here's another one. Note the blank line between rows.\strut \end{minipage}\tabularnewline \bottomrule@@ -148,22 +169,28 @@ \begin{longtable}[]{@{}clrl@{}} \toprule \endhead-\begin{minipage}[t]{0.13\columnwidth}\centering+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering First\strut-\end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright row\strut-\end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedleft+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft 12.0\strut-\end{minipage} & \begin{minipage}[t]{0.31\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright Example of a row that spans multiple lines.\strut \end{minipage}\tabularnewline-\begin{minipage}[t]{0.13\columnwidth}\centering+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.15}}\centering Second\strut-\end{minipage} & \begin{minipage}[t]{0.12\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.14}}\raggedright row\strut-\end{minipage} & \begin{minipage}[t]{0.14\columnwidth}\raggedleft+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.16}}\raggedleft 5.0\strut-\end{minipage} & \begin{minipage}[t]{0.31\columnwidth}\raggedright+\end{minipage} &+\begin{minipage}[t]{(\columnwidth - 3\tabcolsep) * \real{0.35}}\raggedright Here's another one. Note the blank line between rows.\strut \end{minipage}\tabularnewline \bottomrule
test/tables/nordics.html4 view
@@ -17,38 +17,38 @@ </tr> </thead> <tbody class="souvereign-states">-<tr class="odd" class="country">+<tr class="odd country"> <th align="center">Denmark</th> <td align="left">Copenhagen</td> <td align="left">5,809,502</td> <td align="left">43,094</td> </tr>-<tr class="even" class="country">+<tr class="even country"> <th align="center">Finland</th> <td align="left">Helsinki</td> <td align="left">5,537,364</td> <td align="left">338,145</td> </tr>-<tr class="odd" class="country">+<tr class="odd country"> <th align="center">Iceland</th> <td align="left">Reykjavik</td> <td align="left">343,518</td> <td align="left">103,000</td> </tr>-<tr class="even" class="country">+<tr class="even country"> <th align="center">Norway</th> <td align="left">Oslo</td> <td align="left">5,372,191</td> <td align="left">323,802</td> </tr>-<tr class="odd" class="country">+<tr class="odd country"> <th align="center">Sweden</th> <td align="left">Stockholm</td> <td align="left">10,313,447</td> <td align="left">450,295</td> </tr> </tbody><tfoot>-<tr class="even" id="summary">+<tr id="summary" class="even"> <td align="center">Total</td> <td align="left"></td> <td align="left" id="total-population">27,376,022</td>
test/tables/nordics.html5 view
@@ -17,38 +17,38 @@ </tr> </thead> <tbody class="souvereign-states">-<tr class="odd" class="country">+<tr class="odd country"> <th style="text-align: center;">Denmark</th> <td style="text-align: left;">Copenhagen</td> <td style="text-align: left;">5,809,502</td> <td style="text-align: left;">43,094</td> </tr>-<tr class="even" class="country">+<tr class="even country"> <th style="text-align: center;">Finland</th> <td style="text-align: left;">Helsinki</td> <td style="text-align: left;">5,537,364</td> <td style="text-align: left;">338,145</td> </tr>-<tr class="odd" class="country">+<tr class="odd country"> <th style="text-align: center;">Iceland</th> <td style="text-align: left;">Reykjavik</td> <td style="text-align: left;">343,518</td> <td style="text-align: left;">103,000</td> </tr>-<tr class="even" class="country">+<tr class="even country"> <th style="text-align: center;">Norway</th> <td style="text-align: left;">Oslo</td> <td style="text-align: left;">5,372,191</td> <td style="text-align: left;">323,802</td> </tr>-<tr class="odd" class="country">+<tr class="odd country"> <th style="text-align: center;">Sweden</th> <td style="text-align: left;">Stockholm</td> <td style="text-align: left;">10,313,447</td> <td style="text-align: left;">450,295</td> </tr> </tbody><tfoot>-<tr class="even" id="summary">+<tr id="summary" class="even"> <td style="text-align: center;">Total</td> <td style="text-align: left;"></td> <td style="text-align: left;" id="total-population">27,376,022</td>
test/writer.html4 view
@@ -10,7 +10,7 @@   <title>Pandoc Test Suite</title>   <style type="text/css">     html {-      line-height: 1.7;+      line-height: 1.5;       font-family: Georgia, serif;       font-size: 20px;       color: #1a1a1a;@@ -18,7 +18,7 @@     }     body {       margin: 0 auto;-      max-width: 40em;+      max-width: 36em;       padding-left: 50px;       padding-right: 50px;       padding-top: 50px;@@ -38,6 +38,7 @@       body {         background-color: transparent;         color: black;+        font-size: 12pt;       }       p, h2, h3 {         orphans: 3;@@ -48,7 +49,7 @@       }     }     p {-      margin-top: 1.7em;+      margin: 1em 0;     }     a {       color: #1a1a1a;@@ -60,59 +61,82 @@       max-width: 100%;     }     h1, h2, h3, h4, h5, h6 {-      margin-top: 1.7em;+      margin-top: 1.4em;     }+    h5, h6 {+      font-size: 1em;+      font-style: italic;+    }+    h6 {+      font-weight: normal;+    }     ol, ul {       padding-left: 1.7em;-      margin-top: 1.7em;+      margin-top: 1em;     }     li > ol, li > ul {       margin-top: 0;     }     blockquote {-      margin: 1.7em 0 1.7em 1.7em;+      margin: 1em 0 1em 1.7em;       padding-left: 1em;       border-left: 2px solid #e6e6e6;-      font-style: italic;+      color: #606060;     }     code {       font-family: Menlo, Monaco, 'Lucida Console', Consolas, monospace;-      background-color: #f0f0f0;       font-size: 85%;       margin: 0;-      padding: .2em .4em;     }     pre {-      line-height: 1.5em;-      padding: 1em;-      background-color: #f0f0f0;+      margin: 1em 0;       overflow: auto;     }     pre code {       padding: 0;       overflow: visible;     }+    .sourceCode {+     background-color: transparent;+     overflow: visible;+    }     hr {       background-color: #1a1a1a;       border: none;       height: 1px;-      margin-top: 1.7em;+      margin: 1em 0;     }     table {+      margin: 1em 0;       border-collapse: collapse;       width: 100%;       overflow-x: auto;       display: block;+      font-variant-numeric: lining-nums tabular-nums;     }-    th, td {-      border-bottom: 1px solid lightgray;-      padding: 1em 3em 1em 0;+    table caption {+      margin-bottom: 0.75em;     }+    tbody {+      margin-top: 0.5em;+      border-top: 1px solid #1a1a1a;+      border-bottom: 1px solid #1a1a1a;+    }+    th {+      border-top: 1px solid #1a1a1a;+      padding: 0.25em 0.5em 0.25em 0.5em;+    }+    td {+      padding: 0.125em 0.5em 0.25em 0.5em;+    }     header {-      margin-bottom: 6em;+      margin-bottom: 4em;       text-align: center;     }-    nav a:not(:hover) {+    #TOC li {+      list-style: none;+    }+    #TOC a:not(:hover) {       text-decoration: none;     }     code{white-space: pre-wrap;}
test/writer.html5 view
@@ -10,7 +10,7 @@   <title>Pandoc Test Suite</title>   <style>     html {-      line-height: 1.7;+      line-height: 1.5;       font-family: Georgia, serif;       font-size: 20px;       color: #1a1a1a;@@ -18,7 +18,7 @@     }     body {       margin: 0 auto;-      max-width: 40em;+      max-width: 36em;       padding-left: 50px;       padding-right: 50px;       padding-top: 50px;@@ -38,6 +38,7 @@       body {         background-color: transparent;         color: black;+        font-size: 12pt;       }       p, h2, h3 {         orphans: 3;@@ -48,7 +49,7 @@       }     }     p {-      margin-top: 1.7em;+      margin: 1em 0;     }     a {       color: #1a1a1a;@@ -60,59 +61,82 @@       max-width: 100%;     }     h1, h2, h3, h4, h5, h6 {-      margin-top: 1.7em;+      margin-top: 1.4em;     }+    h5, h6 {+      font-size: 1em;+      font-style: italic;+    }+    h6 {+      font-weight: normal;+    }     ol, ul {       padding-left: 1.7em;-      margin-top: 1.7em;+      margin-top: 1em;     }     li > ol, li > ul {       margin-top: 0;     }     blockquote {-      margin: 1.7em 0 1.7em 1.7em;+      margin: 1em 0 1em 1.7em;       padding-left: 1em;       border-left: 2px solid #e6e6e6;-      font-style: italic;+      color: #606060;     }     code {       font-family: Menlo, Monaco, 'Lucida Console', Consolas, monospace;-      background-color: #f0f0f0;       font-size: 85%;       margin: 0;-      padding: .2em .4em;     }     pre {-      line-height: 1.5em;-      padding: 1em;-      background-color: #f0f0f0;+      margin: 1em 0;       overflow: auto;     }     pre code {       padding: 0;       overflow: visible;     }+    .sourceCode {+     background-color: transparent;+     overflow: visible;+    }     hr {       background-color: #1a1a1a;       border: none;       height: 1px;-      margin-top: 1.7em;+      margin: 1em 0;     }     table {+      margin: 1em 0;       border-collapse: collapse;       width: 100%;       overflow-x: auto;       display: block;+      font-variant-numeric: lining-nums tabular-nums;     }-    th, td {-      border-bottom: 1px solid lightgray;-      padding: 1em 3em 1em 0;+    table caption {+      margin-bottom: 0.75em;     }+    tbody {+      margin-top: 0.5em;+      border-top: 1px solid #1a1a1a;+      border-bottom: 1px solid #1a1a1a;+    }+    th {+      border-top: 1px solid #1a1a1a;+      padding: 0.25em 0.5em 0.25em 0.5em;+    }+    td {+      padding: 0.125em 0.5em 0.25em 0.5em;+    }     header {-      margin-bottom: 6em;+      margin-bottom: 4em;       text-align: center;     }-    nav a:not(:hover) {+    #TOC li {+      list-style: none;+    }+    #TOC a:not(:hover) {       text-decoration: none;     }     code{white-space: pre-wrap;}
test/writer.jats_archiving view
@@ -4,8 +4,10 @@ <article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="1.2" article-type="other"> <front> <journal-meta>+<journal-id></journal-id> <journal-title-group> </journal-title-group>+<issn></issn> <publisher> <publisher-name></publisher-name> </publisher>
test/writer.jats_publishing view
@@ -4,8 +4,10 @@ <article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="1.2" article-type="other"> <front> <journal-meta>+<journal-id></journal-id> <journal-title-group> </journal-title-group>+<issn></issn> <publisher> <publisher-name></publisher-name> </publisher>