-
Add XWiki writer (#1800, Derek Chen-Becker). Add
Text.Pandoc.Writers.XWiki
, exportingwriteXWiki
[API change]. -
Dokuwiki Reader: parse single curly brace (#5416, Mauro Bieg).
-
Vimwiki reader: improve handling of internal links (#5414). We no longer append
.html
to link targets, and we add a titlewikilink
. This mirrors behavior of other wiki readers. Generally the.html
extension is not wanted. It may be important for output to HTML in certain circumstances, but it can always be added using a filter that matches on links with titlewikilink
.If your workflow requires the current behavior, here is a lua filter that will add the
.html
extension:function Link(el) if el.title == 'wikilink' then el.target = el.target .. ".html" end return el end
-
ipynb reader:
- Use format
ipynb
for raw cell where no format given. - Avoid introducing spurious
.0
on integers in metadata.
- Use format
-
Markdown reader: fenced div takes priority over setext header.
-
HTML reader: read
data-foo
attribute intofoo
(#5392). The HTML writer adds thedata-
prefix for HTML5 for nonstandard attributes. But the attributes are represented in the AST without thedata-
prefix, so we should strip this when reading HTML. -
LaTeX reader: Improve autolink detection (#5340).
-
PowerPoint writer (Jesse Rosenthal):
- Expand builtin reference doc to model all layouts. The previous built-in reference doc had only title and content layouts. Add in a section-header slide and a two-content slide, so users can more easily modify it to build their own templates.
- Always open up in slide view. When editing a template/reference-doc, the user might be in Master view, but when producing a slide show, it is assumed that slide view will be desired.
- Remove
handoutsMasterList
from template presentation.xml - Fix numerous errors in templating (#5402). Previously, some templates produced by Office 365 (MacOS) would not render with
--reference-doc
correctly. We now apply correct shapes for content, and build shape trees correctly. - Make default placeholder type for template lookup.
- Apply speaker notes to metadata slide if applicable.
- Test for speaker notes after breaking header.
- Correctly handle notes after section-title header. Previously, if notes came after a section-title header (ie, a level-1 header in a slide-level=2 presentation), they would go on the next slide. This keeps them on the slide with the header.
- Internal improvements.
-
ipynb writer:
- Use format
ipynb
for raw cell where no format given. According to nbformat docs, this is supposed to render in every format. We don’t do that, but we at least preserve it as a raw block in markdown, so you can round-trip. - Consolidate adjacent raw blocks. Sometimes pandoc creates two HTML blocks, e.g. one for the open tag and one for a close tag. If these aren’t consolidated, only one will show up in output cell.
- Fixed carry-over of nbformat from metadata.
- Preserve
nbformat_minor
if it’s given. This helps with round-tripping.
- Use format
-
LaTeX writer:
- Avoid inadvertently creating ?
or !
ligatures (#5407). These are upside down ? and !, resp. - Fix footnotes in table caption and cells (#5367). This fixes a bug wherein footnotes appeared in the wrong order, and with duplicate numbers, when in table captions and cells. We now use regular
\footnote
commands, even in the table caption and the minipages containing cells. Apparently longtable knows how to handle this.
- Avoid inadvertently creating ?
-
HTML writer: Don’t add data- prefix to RDFa attributes (#5403).
-
JATS writer: Ensure that plain strings go inside
<pub-id>
tag (#5397). -
Markdown writer:
- Better rendering of numbers (#5398). If the number is integral, we render it as an integral not a float.
- Proper rendering of empty map in YAML metadata (#5398). Should be
{}
, not empty string. - Properly escape attributes in Markdown writer (#5369).
- Be sure implicit figures work in list contexts (#5368). Previously they would sometimes not work: e.g., when they occured in final paragraphs in lists that were originally parsed as Plain and converted later using PlainToPara.
-
Docx writer: Use
w:br
without attributes for line breaks (#5377). We previously added the attributetype="textWrapping"
, but this causes problems on Word Online. -
LaTeX template (Andrew Dunning):
- Ensure correct heading/table order (#5365). Improve workaround (#1658) for tables following headings. The new solution works whether or not the
indent
variable is enabled. - Remove
subparagraph
variable. The default is now to use run-in style for level 4 and 5 headings (\paragraph
and\subparagraph
). To get the previous default behavior (where these were formatted as blocks, like\subsubsection
), set theblock-headings
variable. - Add pandoc to PDF metadata (#5388).
- Group graphics-related code (#5389).
- Move
\setstretch
after front matter (#5179). Ensures that\maketitle
,\tableofcontents
, and so forth are not affected by changes to line spacing.
- Ensure correct heading/table order (#5365). Improve workaround (#1658) for tables following headings. The new solution works whether or not the
-
Update data/jats.csl to avoid commas between name-part elements (#5397).
-
Add support for golang (
go
) with--listings
(#5427). -
Text.Pandoc.Shared - improve
metaToJSON
behavior with numbers. We now do a better job marshalling numbers from MetaString or MetaInlines into JSON Number. -
Text.Pandoc.Writers.Shared:
metaValueToJSON
: use Number Values for integers. Pandoc’s MetaValue doesn’t have a distinguished number type, so numbers are put in MetaStrings. If the MetaString consists entirely of digits, we convert it to a Number. We should probably consider adding a MetaNumber constructor to MetaValue, for better round-tripping with JSON etc. This change aids round-tripping in ipynb metadata fields, liketoc_depth
. -
Text.Pandoc.Class:
fetchItem
: don’t treat UNC paths as protocol-relative URLs (#5127). These are paths beginning//?/UNC/...
. -
Text.Pandoc.ImageSize: Improve
pdfSize
so it handles a wider range of PDFs (#4322, with help from Richard Davis). -
Text.Pandoc.Pretty: avoid stack overflow by using strict sum (#5401).
-
Fix harmless error in file-scope code (#5422).
-
MANUAL.txt:
- Improve ‘header’ and ‘heading’ usage (#5423, Andrew Dunning). The term ‘header’ was being used where ‘heading’ is more appropriate.
- Add paragraph on options affecting markdown in ipynb.
-
stack.yaml - remove -Wmissing-home-modules This seems to cause problems with stack ghci. Remove RTS options.
-
Add ghc-options to cabal.project.
-
appveyor.yml - use ghc 8.6.4. Fixes segfault issues on Windows (#5037).
-
linux build process: Remove clone of pandoc-citeproc (#5366). It wasn’t being used; cabal.project specifies the version to use.