aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--AUTHORS.md3
-rw-r--r--MANUAL.txt2
-rw-r--r--changelog.md204
-rw-r--r--man/pandoc.164
4 files changed, 244 insertions, 29 deletions
diff --git a/AUTHORS.md b/AUTHORS.md
index a75242415..64c4195b7 100644
--- a/AUTHORS.md
+++ b/AUTHORS.md
@@ -36,6 +36,7 @@
- Brian Leung
- Bryan O'Sullivan
- Caleb McDaniel
+- Caleb Mclennan
- Calvin Beck
- Carlos Sosa
- Chris Black
@@ -67,6 +68,7 @@
- Eric Kow
- Eric Seidel
- Eric Schrijver
+- Ethan Riley
- Étienne Bersac
- Felix Yan
- Félix Baylac-Jacqué
@@ -127,6 +129,7 @@
- Jose Luis Duran
- José de Mattos Neto
- Josef Svenningsson
+- Joseph C. Sible
- Julien Cretel
- Juliusz Gonera
- Justin Bogner
diff --git a/MANUAL.txt b/MANUAL.txt
index 4fb744085..891f37cf8 100644
--- a/MANUAL.txt
+++ b/MANUAL.txt
@@ -1,7 +1,7 @@
---
title: Pandoc User's Guide
author: John MacFarlane
-date: January 5, 2020
+date: February 15, 2020
---
# Synopsis
diff --git a/changelog.md b/changelog.md
index 73d7bbc58..09f23cefb 100644
--- a/changelog.md
+++ b/changelog.md
@@ -1,5 +1,209 @@
# Revision history for pandoc
+## pandoc 2.9.2 (2020-02-15)
+
+ * Add `csv` as an input format (#6100). The CSV table is converted into a
+ pandoc simple table. A new module Text.Pandoc.Readers.CSV
+ exports `readCSV` [API change].
+
+ * Introduce new format variants for JATS writer (#6014, Albert Krewinkel):
+
+ - `jats_archiving` for the "Archiving and Interchange Tag Set",
+ - `jats_publishing` for the "Journal Publishing Tag Set", and
+ - `jats_articleauthoring` for the "Article Authoring Tag Set."
+
+ The `jats` output format is now an alias for `jats_archiving`.
+ The module Text.Pandoc.Writers.JATS now exports
+ `writeJatsArchiving`, `writeJatsPublishing`, and
+ `writeJatsArticleAuthoring`, as well as the legacy
+ `writeJATS` [API change].
+
+ * `--defaults`: Support `bibliography` and `csl` fields.
+ Move `addMeta` from Text.Pandoc.App.CommandLineOptions to
+ Text.Pandoc.App.Opt (internal change).
+
+ * Add timing info for filters in `--verbose` mode (#6112).
+ When verbose mode is specified (verbosity == INFO), print a
+ notice when running a filter and when a filter completes (including
+ timing).
+
+ * LaTeX reader:
+
+ + Allow `&` in LaTeX citation keys (#6110).
+ + Improve caption and label parsing.
+ + Don't emit empty Span elements for labels.
+ + Put tables with labels in a surrounding Div.
+ + Resolve `\ref` to table numbers (#6137).
+ + Skip comments in more places where this is needed (#6114).
+ + Allow beamer overlays for all commands in all raw tex (#6043).
+ This affects parsing of raw tex in LaTeX and in Markdown and
+ other formats.
+ + Improve parsing of raw environments (#6034). If parsing fails
+ in a raw environment (e.g. due to special characters like unescaped
+ `_`), try again as a verbatim environment, which is less sensitive to
+ special characters. This allows us to capture special environments
+ that change catcodes as raw tex when `-f latex+raw_tex` is used.
+
+ * RST reader:
+
+ + Add highlight directive (#6140, Lucas Escot).
+
+ * MediaWiki writer:
+
+ + Prevent triple `[[[` which confuses MediaWiki (#6119).
+
+ * HTML reader:
+
+ + Don't parse `data-id` as `id` attribute. And similarly don't
+ parse any `data-X` as `X` when `X` is a valid HTML attribute.
+
+ * Org reader:
+
+ + Simplify parsing of sub- and superscripts (#6127, Albert Krewinkel).
+ Speeds up parsing of single-word, markup-less sub- and superscripts.
+
+ * LaTeX writer:
+
+ + Group biblatex citations even with prefix and suffix (#5849, Ethan
+ Riley). Previously biblatex citations were only grouped if there
+ was no prefix. This patch allows them to be grouped in subgroups split
+ by prefixes and suffixes, which allows better citation sorting.
+ + Fix regression in handling of columns in beamer slides (#6033).
+ Columns in title slides were causing problems with
+ slide division.
+ + Fix duplicate frame classes in LaTeX/Beamer output (#6107).
+
+ * HTML writer:
+
+ + Fix duplicate attributes on headings (#6062), regression from 2.7.x.
+ + Fix `--number-offset` with HTML TOC. Eventually it would be worth
+ adding a parameter to `makeSections` so this could be done at that
+ level; then it would also affect other writers that construct
+ TOC manually.
+ + reveal.js: restore old behavior for 2D nesting (#6032).
+ The fix to #6030 actually changed behavior, so that the
+ 2D nesting occurred at slide level N-1 and N, instead of
+ at the top-level section. This commit restores the v2.7.3 behavior.
+ If there are more than 2 levels, the top level is horizontal
+ and the rest are collapsed to vertical.
+ + reveal.js: ensure that pauses work even in title slides (#5819).
+
+ * Markdown writer:
+
+ + Fix regression: spurious dots in markdown_mmd metadata output (#6133).
+
+ * Docx writer:
+
+ + Fix regression with Compact style on tight lists (#6072).
+ Starting in 2.8, the docx writer no longer distinguishes between tight
+ and loose lists, since the Compact style is omitted. This is a
+ side-effect of the fix to #5670, as explained in the changelog. This
+ patch fixes the problem by extending the exception currently offered to
+ Plain blocks inside tables to Plain blocks inside list items.
+
+ * Jira writer:
+
+ + Fix output of table headers (Albert Krewinkel, #6035).
+
+ * Add Text.Pandoc.Image with unexported svgToPng.
+
+ * Moved html5Attributes, html4Attributes, rdfaAttributes
+ from T.P.Writers.HTML (where they were unexported) to
+ T.P.XML (where they are now exported).
+ [API change: new exported functions]
+ This allows these sets to be used elsewhere, e.g.
+ in the HTML reader.
+
+ * Text.Pandoc.Shared: Export a new function `findM` (#6125,
+ Joseph C. Sible).
+
+ * Text.Pandoc.Logging: Add `RunningFilter`, `FilterCompleted`
+ constructors to LogMessage [API change].
+
+ * Text.Pandoc.CSV: fix bug in CSV parser; previously an extra blank record
+ would sometimes be inserted at the end.
+
+ * LaTeX template: add space option to xeCJK with PassOptionsToPackage
+ (#6002). Otherwise we can get a clash with documentclasses that
+ already load the package.
+
+ * Lua filters:
+
+ + Allow filtering of element lists (#6038, Albert Krewinkel). Lists of
+ Inline and Block elements can now be filtered via `Inlines` and
+ `Blocks` functions, respectively. This is helpful if a filter
+ conversion depends on the order of elements rather than a single
+ element. For example, the following filter can be used to remove all
+ spaces before a citation:
+
+ function isSpaceBeforeCite (spc, cite)
+ return spc and spc.t == 'Space'
+ and cite and cite.t == 'Cite'
+ end
+
+ function Inlines (inlines)
+ for i = #inlines-1,1,-1 do
+ if isSpaceBeforeCite(inlines[i], inlines[i+1]) then
+ inlines:remove(i)
+ end
+ end
+ return inlines
+ end
+
+ + Add methods `insert`, `remove`, and `sort` to pandoc.List
+ (Albert Krewinkel). Example of use:
+
+ local numbers = pandoc.List {2, 3, 1}
+ numbers:sort() -- numbers is now {1, 2, 3}
+ + Make `pandoc.List` a callable constructor (Albert Krewinkel).
+ It is now possible to construct a new List via
+ `pandoc.List()` instead of `pandoc.List:new()`.
+ + Add tests for pandoc.List module (Albert Krewinkel).
+
+ * Text.Pandoc.App.CommandLineOptions: Change `setVariable` to use `Text`
+ instead of `String`. This avoids some unnecessary unpacking.
+
+ * Use versioned directory for windows release zipfile.
+ Also remove old `make-windows-installer.bat`, superseded by GitHub
+ actions workflow, and modify `pandoc.wxs` for new paths.
+
+ * Extensive code cleanup (#6141, #6128, #6129, #6130, #6123,
+ #6105, 6102, #6117, #6124, #6115, #6116, #6111, Joseph C. Sible).
+
+ * Fix hlint warnings (Albert Krewinkel).
+
+ * Use latest doclayout, doctemplates (#6031). The new version of
+ doclayout fixes a memory leak that affected `--include-in-header` with
+ large files (and possibly other cases involving extremely long lines).
+
+ * Use latest texmath.
+
+ * Use latest skylighting and fix test suite (#6086).
+
+ * sample.lua: Fix typo in descriptive comments (#6136, Caleb Maclennan).
+ Fix typo in error message (#6135).
+
+ * Add Docker and GH Actions instructions/links to INSTALL.md.
+
+ * Update filter documentation (#6065). Improve cabal v2 instructions.
+ Remove example using pandoc API directly (we have other
+ docs for that and it was outdated).
+
+ * Lua filter docs:
+
+ + Cross-link constructors and types (Albert Krewinkel).
+ Thanks to @bpj for the idea.
+ + Sort pandoc.List methods alphabetically (Albert Krewinkel).
+ + Unify, fix anchors and internal links (#6061, Albert Krewinkel).
+ Links and anchors now follow consistent conventions, like
+ lowercase-only anchor names. This breaks some links to specific
+ sections in the document, but will make it much easier to link
+ documentation in the future.
+ + Clarify filter function execution order (#6059, Albert Krewinkel).
+
+ * In docs, update URLs and use `https:` wherever possible (#6090,
+ Salim B).
+
## pandoc 2.9.1.1 (2020-01-05)
* Markdown reader:
diff --git a/man/pandoc.1 b/man/pandoc.1
index 9dd35f5ce..60fe165a5 100644
--- a/man/pandoc.1
+++ b/man/pandoc.1
@@ -1,7 +1,7 @@
.\"t
-.\" Automatically generated by Pandoc 2.9.1
+.\" Automatically generated by Pandoc 2.9.2
.\"
-.TH "Pandoc User\[aq]s Guide" "" "January 5, 2020" "pandoc 2.9.1.1" ""
+.TH "Pandoc User\[aq]s Guide" "" "February 15, 2020" "pandoc 2.9.2" ""
.hy
.SH NAME
pandoc - general markup converter
@@ -206,7 +206,7 @@ In this case pandoc will fetch the content using HTTP:
.IP
.nf
\f[C]
-pandoc -f html -t markdown http://www.fsf.org
+pandoc -f html -t markdown https://www.fsf.org
\f[R]
.fi
.PP
@@ -216,7 +216,7 @@ requesting a document from a URL:
.nf
\f[C]
pandoc -f html -t markdown --request-header User-Agent:\[dq]Mozilla/5.0\[dq] \[rs]
- http://www.fsf.org
+ https://www.fsf.org
\f[R]
.fi
.SH OPTIONS
@@ -231,6 +231,8 @@ Specify input format.
.IP \[bu] 2
\f[C]creole\f[R] (Creole 1.0)
.IP \[bu] 2
+\f[C]csv\f[R] (CSV table)
+.IP \[bu] 2
\f[C]docbook\f[R] (DocBook)
.IP \[bu] 2
\f[C]docx\f[R] (Word docx)
@@ -342,7 +344,13 @@ HTML5/XHTML polyglot markup)
.IP \[bu] 2
\f[C]ipynb\f[R] (Jupyter notebook)
.IP \[bu] 2
-\f[C]jats\f[R] (JATS XML)
+\f[C]jats_archiving\f[R] (JATS XML, Archiving and Interchange Tag Set)
+.IP \[bu] 2
+\f[C]jats_articleauthoring\f[R] (JATS XML, Article Authoring Tag Set)
+.IP \[bu] 2
+\f[C]jats_publishing\f[R] (JATS XML, Journal Publishing Tag Set)
+.IP \[bu] 2
+\f[C]jats\f[R] (alias for \f[C]jats_archiving\f[R])
.IP \[bu] 2
\f[C]jira\f[R] (Jira wiki markup)
.IP \[bu] 2
@@ -406,7 +414,7 @@ HTML5/XHTML polyglot markup)
.IP \[bu] 2
\f[C]zimwiki\f[R] (ZimWiki markup)
.IP \[bu] 2
-the path of a custom lua writer, see Custom writers below
+the path of a custom Lua writer, see Custom writers below
.PP
Note that \f[C]odt\f[R], \f[C]docx\f[R], \f[C]epub\f[R], and
\f[C]pdf\f[R] output will not be directed to \f[I]stdout\f[R] unless
@@ -603,25 +611,25 @@ above).
.IP "3." 3
\f[C]$PATH\f[R] (executable only)
.PP
-Filters and lua-filters are applied in the order specified on the
+Filters and Lua-filters are applied in the order specified on the
command line.
.RE
.TP
\f[B]\f[CB]-L\f[B]\f[R] \f[I]SCRIPT\f[R], \f[B]\f[CB]--lua-filter=\f[B]\f[R]\f[I]SCRIPT\f[R]
Transform the document in a similar fashion as JSON filters (see
-\f[C]--filter\f[R]), but use pandoc\[aq]s build-in lua filtering system.
-The given lua script is expected to return a list of lua filters which
+\f[C]--filter\f[R]), but use pandoc\[aq]s build-in Lua filtering system.
+The given Lua script is expected to return a list of Lua filters which
will be applied in order.
-Each lua filter must contain element-transforming functions indexed by
+Each Lua filter must contain element-transforming functions indexed by
the name of the AST element on which the filter function should be
applied.
.RS
.PP
-The \f[C]pandoc\f[R] lua module provides helper functions for element
+The \f[C]pandoc\f[R] Lua module provides helper functions for element
creation.
-It is always loaded into the script\[aq]s lua environment.
+It is always loaded into the script\[aq]s Lua environment.
.PP
-The following is an example lua script for macro-expansion:
+The following is an example Lua script for macro-expansion:
.IP
.nf
\f[C]
@@ -637,7 +645,7 @@ return {{Str = expand_hello_world}}
\f[R]
.fi
.PP
-In order of preference, pandoc will look for lua filters in
+In order of preference, pandoc will look for Lua filters in
.IP "1." 3
a specified full or relative path (executable or non-executable)
.IP "2." 3
@@ -1688,7 +1696,7 @@ include-after-body: []
include-in-header: []
resource-path: [\[dq].\[dq]]
-# filters will be assumed to be lua filters if they have
+# filters will be assumed to be Lua filters if they have
# the .lua extension, and json filters otherwise. But
# the filter type can also be specified explicitly, as shown:
filters:
@@ -4983,7 +4991,7 @@ Thus, for example, pandoc will turn
<table>
<tr>
<td>*one*</td>
-<td>[a link](http://google.com)</td>
+<td>[a link](https://google.com)</td>
</tr>
</table>
\f[R]
@@ -4996,7 +5004,7 @@ into
<table>
<tr>
<td><em>one</em></td>
-<td><a href=\[dq]http://google.com\[dq]>a link</a></td>
+<td><a href=\[dq]https://google.com\[dq]>a link</a></td>
</tr>
</table>
\f[R]
@@ -5154,7 +5162,7 @@ a link:
.IP
.nf
\f[C]
-<http://google.com>
+<https://google.com>
<sam\[at]green.eggs.ham>
\f[R]
.fi
@@ -5167,7 +5175,7 @@ the URL in parentheses.
.nf
\f[C]
This is an [inline link](/url), and here\[aq]s [one with
-a title](http://fsf.org \[dq]click here for a good time!\[dq]).
+a title](https://fsf.org \[dq]click here for a good time!\[dq]).
\f[R]
.fi
.PP
@@ -5207,7 +5215,7 @@ Here are some examples:
\f[C]
[my label 1]: /foo/bar.html \[dq]My title, optional\[dq]
[my label 2]: /foo
-[my label 3]: http://fsf.org (The free software foundation)
+[my label 3]: https://fsf.org (The free software foundation)
[my label 4]: /bar#special \[aq]A title in single quotes\[aq]
\f[R]
.fi
@@ -5224,7 +5232,7 @@ The title may go on the next line:
.IP
.nf
\f[C]
-[my label 3]: http://fsf.org
+[my label 3]: https://fsf.org
\[dq]The free software foundation\[dq]
\f[R]
.fi
@@ -5684,7 +5692,7 @@ references:
issue: 4356
page: 737-738
DOI: 10.1038/171737a0
- URL: http://www.nature.com/nature/journal/v171/n4356/abs/171737a0.html
+ URL: https://www.nature.com/articles/171737a0
language: en-GB
\&...
\f[R]
@@ -5973,7 +5981,7 @@ extension.
\f[C]
This is a reference ![image][ref] with multimarkdown attributes.
-[ref]: http://path.to/image \[dq]Image title\[dq] width=20px height=30px
+[ref]: https://path.to/image \[dq]Image title\[dq] width=20px height=30px
id=myId class=\[dq]myClass1 myClass2\[dq]
\f[R]
.fi
@@ -6723,7 +6731,7 @@ For example:
.nf
\f[C]
<audio controls=\[dq]1\[dq]>
- <source src=\[dq]http://example.com/music/toccata.mp3\[dq]
+ <source src=\[dq]https://example.com/music/toccata.mp3\[dq]
data-external=\[dq]1\[dq] type=\[dq]audio/mpeg\[dq]>
</source>
</audio>
@@ -7019,11 +7027,11 @@ reference-doc while creating docx output (see below), and maintain the
same styles in your input and output files.
.SH CUSTOM WRITERS
.PP
-Pandoc can be extended with custom writers written in lua.
-(Pandoc includes a lua interpreter, so lua need not be installed
+Pandoc can be extended with custom writers written in Lua.
+(Pandoc includes a Lua interpreter, so Lua need not be installed
separately.)
.PP
-To use a custom writer, simply specify the path to the lua script in
+To use a custom writer, simply specify the path to the Lua script in
place of the output format.
For example:
.IP
@@ -7033,7 +7041,7 @@ pandoc -t data/sample.lua
\f[R]
.fi
.PP
-Creating a custom writer requires writing a lua function for each
+Creating a custom writer requires writing a Lua function for each
possible element in a pandoc document.
To get a documented example which you can modify according to your
needs, do