jgm/pandoc: pandoc 2.6
- John MacFarlane
- Jesse Rosenthal
- Alexander
- Albert Krewinkel
- Matthew Pickering
- Mauro Bieg
- Andrew Dunning1
- Nikolay Yakimov2
- Kolen Cheung3
- Yan Pashkovsky
- Václav Haisman
- Marc Schreiber
- Nathan Gass
- Fedor Sheremetyev
- Thomas Hodgson
- Mark Wright
- Brian Leung
- Francesco Occhipinti
- Artyom Kazak4
- hftf
- Hubert Plociniczak
- Daniel Bergey
- Aditya Mahajan
- Xavier Olive5
- Jose Luis Duran
- Hamish Mackenzie
- David Lazar6
- Sergei Trofimovich
- Sascha Wilde7
- Henry de Valence
- 1. University of Toronto
- 2. Moscow Aviation Institute (National Research University)
- 3. University of California, Berkeley
- 4. @wireapp, @aelve
- 5. Research Scientist
- 6. MIT CSAIL
- 7. Intevation GmbH
Description
Support ipynb (Jupyter notebook) as input and output format.
- Add
ipynbas input and output format (extension.ipynb). - Added Text.Pandoc.Readers.Ipynb [API change].
- Added Text.Pandoc.Writers.Ipynb [API change].
- Add
PandocIpynbDecodingErrorconstructor to Text.Pandoc.Error.Error [API change]. - Depend on ipynb library.
- Note: there is no template for ipynb.
- Add
Add DokuWiki reader (#1792, Alexander Krotov). This adds Text.Pandoc.Readers.DokuWiki [API change], and adds
dokuwikias an input format.Implement task lists (#3051, Mauro Bieg). Added
task_listsextension. Task lists are supported from markdown and gfm input. They should work, to some degree, in all output formats, though in most formats you'll get a bullet list with a unicode character for the box. In HTML, you get checkboxes and in LaTeX/PDF output, a box is used as the list marker. API changes:- Added constructor
Ext_task_liststoExtension. - Added
taskListItemFromAsciiandtaskListItemToAsciito Text.Pandoc.Shared.
- Added constructor
Allow some command line options to take URL in addition to FILE.
--include-in-header,--include-before-body,--include-after-body.HTML reader:
- Handle empty
startattribute (see #5162). - Treat
textareaas a verbatim environment (#5241) and preserve spacing.
- Handle empty
RST reader:
- Change treatment of
number-linesdirective (Brian Leung, #5207). Directives of this type without numeric inputs should not have astartFromattribute; with a blank value, the writers can produce extra whitespace. - Removed superfluous
sourceCodeclass on code blocks (#5047). - Handle
sourcecodedirective as synonynm forcode(#5204).
- Change treatment of
Markdown reader:
- Remove
sourceCodeclass for literate Haskell code blocks (#5047). Reverse order ofliterateandhaskellclasses on code blocks when parsing literate Haskell, sohaskellis first. - Treat
<textarea>as a verbatim environment (#5241).
- Remove
Org reader:
- Handle
minleveloption differently (#5190, Brian Leung). Whenminlevelexceeds the original minimum level observed in the file to be included, every heading should be shifted rightward. - Allow for case of
:minlevel == 0(#5190). - Fix treatment of links to images (#5191, Albert Krewinkel). Links with descriptions which are pointing to images are no longer parsed as inline images, but as links.
- Add support for #+SELECT_TAGS (Brian Leung).
- Separate filtering logic from conversion function (Brian Leung).
- Handle
TWiki reader: Fix performance issue with underscores (#3921).
MediaWiki reader: use
_instead of-in auto-identifiers (#4731). We may not still be exactly matching mediawiki's algorithm.LaTeX reader:
- Remove
sourceCodeclass for literate Haskell code blocks (#5047). Reverse order ofliterateandhaskellclasses on code blocks when parsing literate Haskell, sohaskellis first. - Support
\DeclareMathOperator(#5149). - Support
\inputminted(#5103). - Support
\endinput(#5233). - Allow includes with dots like
cc_by_4.0. Previously the.0was interpreted as a file extension, leading pandoc not to add.tex(and thus not to find the file). The new behavior matches tex more closely.
- Remove
Man reader:
- Use
mapLeftfrom Shared instead of defining own.
- Use
Docx reader (Jesse Rosenthal):
- Handle level overrides (#5134).
Docx writer:
- Support custom properties (#3024, #5252, Agustín Martín Barbero). Also supports additional core properties:
subject,lang,category,description. - Make Level into a real type, instead of an alias for a tuple (Jesse Rosenthal).
- Support custom properties (#3024, #5252, Agustín Martín Barbero). Also supports additional core properties:
ICML writer (Mauro Bieg):
- Support custom-styles (#5137, see #2106).
- Support unnumbered headers (#5140).
Texinfo writer: Use header identifier for anchor if present (#4731). Previously we were overwriting an existing identifier with a new one.
Org writer: Preserve line-numbering for example and code blocks (Brian Leung).
Man/Ms writers: Don't escape
-as\-. The\-gets rendered in HTML and PDF as a unicode minus sign.Ms writer: Ensure we have a newline after .EN in disply math (#5251).
RST writer: Don't wrap simple table header lines (#5128).
Asciidoc writer: Shorter delimiters for tables, blockquotes (#4364). This matches asciidoctor reference docs.
Dokuwiki writer: Remove automatic
:prefix before internal image links (#5183, Damien Clochard). This prevented users from making relative image links.Zimwiki writer: remove automatic colon prefix before internal images (#5183, Damien Clochard).
MediaWiki writer: fix caption, use 'thumb' instead of 'frame' (#5105). Captions used to have the word 'caption' prepended; this has been removed. Also, 'thumb' is used instead of 'frame' to allow images to be resized.
reveal.js writer:
- Ensure that we don't get > 2 levels of section nesting, even with slide level > 2 (#5168).
- If slide level == N but there is no N-level header, make sure the next header with level > N gets treated as a slide and put in a section, rather than remaining loose (#5168).
Markdown writer:
- Make
plainRawBlocks pass through inplainoutput. - Include needed whitespace after HTML figure (#5121). We use HTML for a figure in markdown dialects that can't represent it natively.
- Make
Commonmark writer:
- Fix handling of SoftBreak with
hard_line_breaks(#5195). - Implement
--toc(writerTableOfContents) in commonmark/gfm writers (#5172).
- Fix handling of SoftBreak with
EPUB writer:
- Ensure that picture transforms are done on metadata too.
- Small fixes to
nav.xhtml: Add 'landmarks' id attribute to the landmarks nav. Replace old default CSS removing numbers from ol.toc li with new rules that matchnav#toc ol, nav#landmarks ol. We keep thetocclass onolfor backwards compatibility.
LaTeX writer:
- Make raw content marked
beamerpass through inbeameroutput (pandoc/lua-filters#40). - Beamer: avoid duplicated
fragileproperty in some cases (#5208). - Add
#special characters for listings (#4939). This character needs special handling in\lstinline.
- Make raw content marked
RTF writer: use
toTableOfContentsfrom Shared to replace old duplicated code.Pptx writer:
- Support custom properties. Also supports additional core properties:
subject,category,description(#5252, Agustín Martín Barbero). - Use
toTableOfContentsfrom Shared to replace old duplicated code.
- Support custom properties. Also supports additional core properties:
ODT writer (Augustín Martín Barbero):
- Fix typo in custom properties (#2839).
- Improve standard properties, including the following core properties:
generator(Pandoc/VERSION),description,subject,keywords,initial-creator(from authors),creation-date(actual creation date) (#5252).
Custom writers:
- Allow '-' in filenames for custom lua writers (#5187).
- sample.lua: add
SingleQuoted,DoubleQuoted(#5104). - sample.lua: Add a missing
>(MichaWiedenmann).
reveal.js template: Add
zoomKeyconfig (#4249).HTML5 template: Remove unnecessary type="text/css" on style and link for HTML5 (#5146).
LaTeX template (Andrew Dunning, except where noted):
- Prevent fontspec from scaling
mainfontto match the default font, Latin Modern. A main font set to 12pt could previously appear between 11pt to 13pt depending on its design. To return to the earlier rendering, use-V mainfontoptions="Scale=MatchLowercase"(#5212, #5218). - Display monospaced fonts without TeX ligatures when using
--pdf-engine=lualatex. It now matches the behaviour of other engines (#5212, #5218). - Remove the deprecated
romanfontvariable. The functionality ofmainfontis identical (#5218). - Render
\subtitlewith the standard document classes. Previously,subtitleonly appeared when using the KOMA-Script classes or Beamer (#5213, #5244). - Use Babel instead of Polyglossia for LuaLaTeX. This avoids several language selection problems, notably with retaining French spacing conventions when switching to a verbatim environment or another language; and in printing Greek text without hyphenation (#5193).
- Use the
xurlpackage if available, improving the appearance of URLs by allowing them to break at additional points (#5193). - Use
bookmarkif available to correct heading levels in PDF bookmarks: see the KOMA-Script 3.26 release notes (#5193). - Require the
xcolorpackage to avoid a possible error when using additional packages alongside footnotes in tables (#5193, closes #4861). - Remove obsolete
fixltx2epackage, which has no functionality with TeX Live 2015 or later (#5193). - Allow multiple
fontfamilies.options(#5193, closes #5194). - Restrict
institutevariable to Beamer (#5219). - Use
footnotehyperpackage if available to make footnotes in tables compatible withhyperref(#5234). - Number parts and chapters in book classes only if the
numbersectionsvariable is set, for consistency with other output formats. To return to the previous behaviour, use-V numbersections -V secnumdepth=0(#5235). - Reindent file (#5193).
- Use built-in parskip handling with KOMA-Script classes (#5143, Enno).
- Set default listings language for lua, assembler (#5227, John MacFarlane). Otherwise we get an error when trying to compile code with lua or assembler code. To change the default dialect (currenty 5.3 for lua and x86masm for assembler), you can use
--include-in-headerto inject something like\lstset{defaultdialect=[5.2]Lua}.
- Prevent fontspec from scaling
Text.Pandoc.Readers: Changed types of
readJSON; it now runs in an instance of PandocMonad, like the other readers and writers. [API change]Text.Pandoc.Writers: Changed types of
writeJSON; it now runs in an instance of PandocMonad, like the other readers and writers. [API change]Text.Pandoc.Error: Added
PandocUTF8DecodingErrorconstructor forPandocError. [API change]Text.Pandoc.Writers.Shared - add
toTableOfContents. [API change] This is refactored out from the Markdown writer. It can be used in other writers to create a table of contents.Improve error messages for UTF-8 decoding errors. Now we give the filename and byte offset (#4765).
Text.Pandoc.XML: Strip out illegal XML characters in
escapeXMLString(#5119).Text.Pandoc.Process: update
pipeProcess(Albert Krewinkel). The implementation ofpipeProcesswas rewritten to fix sporadic failures caused by prematurely closed pipes.Use
safeReadinstead ofreadeverywhere in the code (John MacFarlane, Mauro Bieg, #5162, #5180).Text.Pandoc.SelfContained: Decompress
.svgzwhen converting todata:URI (#5163, Alexander Krotov).Text.Pandoc.Parsing: Remove unused
HasHeaderMap(#5175, Alexander Krotov). [API change]Normalize Windows paths to account for change in ghc 8.6 (#5127). When pandoc is compiled with ghc 8.6, Windows paths are treated differently, and paths beginning
\\serverno longer work. This commit rewrites such patsh to\\?\UNC\serverwhich works. The change operates at the level of argument parsing, so it only affects the command line program.Simplify/fix reading of
--metadatavalues on command line to avoid problems relating to hvr/HsYAML#7 (#5177).data/pandoc.lua: auto-fix nested constructor arguments (Albert Krewinkel). Incorrect types to pandoc element constructors are automatically converted to the correct types when possible. This was already done for most constructors, but conversions are now also done for nested types (like lists of lists).
Removed custom Setup.hs, use build-type: simple. The only thing we gained from the custom build was automatic installation of the man page when using 'cabal install'. But custom builds cause problems, e.g., with cross-compilation. Installation of the man page is better handled by packagers. Note to packagers (e.g. Debian): it may be necessary to add a step installing the man page with the next release.
Allow latest http-client, tasty, zip-archive, Glob.
Require skylighting >= 0.7.5, adding support for sml, J, typescript.
Tests: Cleaned up
findPandocinTests.Helpers, so it works well with cabal v2.INSTALL.md:
- Use button for installer links (John MacFarlane, Mauro Bieg, #5167).
- Fix links and bump required stack version (max).
- Improve installation notes on associated software (Andrew Dunning). Includes explanation of how to install related tools with package managers (since the method of installing
rsvg-convertis not obvious).
doc/org.md: improve documentation of org features (Albert Krewinkel).
doc/lua-filters.md: use 3rd level headers for module fields.
MANUAL:
- Clarify automatic identifiers (#5201). We remove non-alphanumerics. This includes, e.g., emojis.
- Fix example for Div with id (Geoffrey Ely).
- Update list of LaTeX packages used.
- Make it clear that
hard_line_breaksworks ingfm(see #5195). - Mention
raw_attributein documentation forraw_htmlandraw_tex(#5240, thanks to @eiro). - Clarify that
$sep$must come right before$endfor$in templates (#5243, Lev Givon). - Document metadata support for docx, odt, pptx writers (Agustín Martín Barbero).
- Reorganize template variables (#5249, Andrew Dunning). Add additional headings to categorize variables, and alphabetize when there is large number; add more examples.
- Document
date-metatemplate variable (#5260, Tristan Stenner).
trypandoc: Fix CSS and viewport.
Files
jgm/pandoc-2.6.zip
Files
(11.2 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:1661c6ebec8c577332e522ef5e3bd58a
|
11.2 MB | Preview Download |
Additional details
Related works
- Is supplement to
- https://github.com/jgm/pandoc/tree/2.6 (URL)