* Mon Jan 31 2022 Peter Simons <psimons@suse.com>
- Update pandoc to version 2.17.1.1.
[#]# pandoc 2.17.1.1 (2022-01-31)
* Fix regression in 2.17.1 which caused problems finding
default files in the default user data directory. (Reverts
the item "logic bug in `fullDefaultsPath`", which was
misguided.)
* Sample custom writer: use single quotes for strings (#7487,
Albert Krewinkel).
[#]# pandoc 2.17.1 (2022-01-30)
* Support `pagedjs-cli` as pdf engine (#7838, Albert Krewinkel).
PagedJS is a polyfill and supports the Paged Media standards by the W3C.
<https://www.pagedjs.org/>
* CommonMark reader: fix source position after YAML metadata (#7863).
* LaTeX reader:
+ Remove retokenizing in `rawLaTeXParser`.
+ Ensure that `\raggedright` doesn't gobble an argument (#7757).
+ Improve `descItem`. For some reason we were skipping
arbitrary blocks before `\item`. This is now changed to "skip
whitespace and comments."
+ Improve handling of `\newif`. Adding a pair of braces around the
second argument of `\def` prevents LaTeX from an emergency stop
on input like the following (#6096).
```
\newif\ifepub
\epubtrue
\ifepub
hi
\fi
```
* Docx reader: Parse both Zotero citation and bibliography as
`FieldInfo` (#7840).
* LaTeX writer:
+ Allow arbitrary frameoptions to be passed to a beamer
frame, using the frameoptions attribute (#7869).
+ Add s and squeeze to recognized beamer frameoptions (#7869).
* Markdown writer: handle explicit column widths with pipe tables (#7847).
If a table has explicit column width information *and* the content
extends beyond the `--columns` width, we need to adjust the
widths of the pipe separators to encode this width information.
* Docx writer: Separate tables even with RawBlocks between (#7224,
Michael Hoffmann). Adjacent docx tables need to be separated by an
empty paragraph. If there's a RawBlock between tables which renders
to nothing, be sure to still insert the empty paragraph so that
they will not collapse together.
* Man writer: use custom font V for inline code (#7506).
The V font is defined conditionally, so that it renders
like CB in output formats that support that, and like B
in those that don't (e.g. the terminal).
Aliases also defined for VI, VB, VBI.
* Asciidoc writer: Support checklists in asciidoctor writer (#7832,
Nikolai Korobeinikov, ricnorr). The checklist syntax (similar to
`task_list` in markdown) seems to be an asciidoctor-only addition.
* HTML writer:
+ Avoid duplicate "style" attributes on table cells (#7871).
+ Don't break lines inside code elements. With the new (default)
line wrapping of HTML, in conjunction with the default CSS which
includes `code { whitespace: pre-wrap; }`, spurious line
breaks could be introduced into inline code (#7858).
* Custom writer: preserve order of element attributes (#7489, Albert
Krewinkel). Attribute key-value pairs are marshaled as AttributeList,
i.e., as a userdata type that behaves both like a list and a map. This
allows to preserve the order of key-value pairs.
* Switch to hslua-2.1 (Albert Krewinkel). This allows for some code
simplification and improves stability.
* Don't read files outside of user data directory (Even Brenden).
If a file path does not exist relative to the working directory, and
it does exist relative to the user data directory, but outside of
of the user data directory, do not read it. This applies to
`readDataFile` and `readMetadataFile` in PandocMonad and, by
extension, any module that uses these by passing them relative paths.
* Text.Pandoc.Class.`makeCanonical`: Correctly handle consecutive ".."s
at the beginning of a path (Even Brenden). Prior to this commit,
`../../file` would evaluate to `file`, when it should be unchanged.
* Search for metadata files in `$DATADIR/metadata` (#7851, Even Brenden).
If files specified with `--metadata-file` are not found in the working
directory, look in `$DATADIR/metadata` (#5876).
* Text.Pandoc.Class: export `readMetadataFile` [API change] (#5876).
* Text.Pandoc.Error: export new `PandocCouldNotFindMetadataFileError`
constructor for `PandocError` [API change] (#5876).
* Avoid putting a frame around speaker notes in beamer (#7857).
If speaker notes (a Div with class 'notes') occur right
after a section heading, but above slide level, the
resulting `\note{..}` caommand should not be wrapped in
a frame, as that will cause a spurious blank slide.
* CSS in HTML template: adjust #TOC and h1 on mobile (#7835, Mauro Bieg).
* Text.Pandoc.Readers.LaTeX.Parsing: don't export `totoks`.
Make the first param of `tokenize` a SourcePos instead of
SourceName, and use it instead of `totoks`.
* Text.Pandoc.Shared: Modify `stringify` so it ignores `[Citation]`
inside `Cite` (#7855). Otherwise we'll sometimes get two copies of
things, one from the `citationPrefix` or `citationSuffix` and another
from the embedded fallback text. When there is no fallback text,
we'll get no content. However, it really isn't an alternative to just
rely on the result of running `query` on the embedded `Citation`s;
this will result in a jumble of text rather than anything structured.
* Omit `--enable-doc` in the cabal haddock invocation in
`tools/build-and-upload-api-docs.sh`.
* Text.Pandoc.App.Opt: fix logic bug in `fullDefaultsPath`.
Previously we would (also) search the default user data directory
for a defaults file, even if a different user data directory
was specified using `--data-dir`. This was a mistake; if
`--data-dir` is used, the default user data directory should
not be searched.
* Text.Pandoc.Shared: `defaultUserDataDir` behavior change (#7842).
If the XDG data directory is not defined (e.g. because
it's not supported in the OS or HOME isn't defined), we
return the empty string instead of raising an exception.
* Update command tests to distinguish stderr and test exit status.
* MANUAL: add that speaker notes can be used with beamer (#7856).
* Update `build-and-upload-api-docs.sh`.
* Document `--trace` option.
Document `no-check-certificate` in defaults files.
Document 'sandbox' option for defaults files. (#7873).
* Fix pattern syntax in sample readability custom reader.
* doc/custom-readers.lua: add example for "readable HTML."
* Fix message in man page about where code can be found.
* `manfilter.lua`: remove extra indent in table cells with code blocks.
* Fix lua-filters documentation for table column widths (#7864).
* epub.doc: Update links to KindleGen (#7846, Benson Muite, Mauro Bieg).
KindleGen has been deprecated and we need to link to archived versions.
* Use tables in defaults files documentation, so each
default option is paired with the corresponding command-line
option (Carsten Allefeld).
* Use skylighting 0.12.2.
* Add pandoc-lua-marshal to Nix shell (#7849, Even Brenden).
[#]# pandoc 2.17.0.1 (2022-01-14)
* Require pandoc-lua-marshal 0.1.3.1 (#7831, Albert Krewinkel).
Fixes a problem with `List.includes` and `List.find` that caused a
Lua stackoverflow and subsequent program crash.
* HTML template: load header-includes before math (#7833, Kolen Cheung).
MathJax expect the config comes before loading the MathJax script.
This change of order allows one to config MathJax via
header-includes, which loads before the MathJax script. Cf. #2750.
* When reading defaults file, stop at a line `...`. This line signals
the end of a YAML document. This restores the behavior we got with
HsYaml. yaml complains about content past this line. See
https://github.com/jgm/pandoc/issues/4627#issuecomment-1012438765
* Text.Pandoc.Citeproc: allow `notes-after-punctuation` to work with
numerical styles that use superscripts (e.g.
american-medical-association.csl), as well as with note styles. The
default setting of `notes-after-punctuation` is true for note styles
and false otherwise. This restores a behavior of pandoc-citeproc
that wasn't properly carried over to Citeproc (#7826, cf.
jgm/pandoc-citeproc#384).
* Use commonmark-pandoc 0.2.1.2 (#7769).
* Add FAQ on images in ipynb containers (#7749, Kolen Cheung).
[#]# pandoc 2.17 (2022-01-12)
* Support `markua` as an output format (#1871, Tim Wisotzki and
Saumel Lemmenmeier). Markua is a markdown variant used by Leanpub.
* Add text wrapping for HTML output (#7764). Previously the HTML writer
was exceptional in not being sensitive to the `--wrap` option. With
this change `--wrap` now works for HTML. The default (as with other
formats) is automatic wrapping. Note that the contents of `script`,
`textarea`, and `pre` tags are always laid out with the `flush`
combinator, so that unwanted spaces won't be introduced if these occur
in an indented context in a template.
* Don't read sources until in/out format are verified (#7797).
* Issue error with `--list-extensions` for invalid formats (#7797).
* Make `--citeproc` recognize `.yml` as well as `.yaml` extensions
as YAML bibliography files (#7707, Jörn Krenzer).
* Use latest version of KaTeX with `--katex`.
* Fix parsing of footnotes in `--metadata-file` (#7813). Previously
non-inline footnotes were not being parsed.
* ODT reader:
+ Parse list-header as a list item (Tuong Nguyen Manh).
* Commonmark reader:
+ Put sourcepos attribute on header, not enclosing div
with `-f commonmark+sourcepos` (#7769).
* Markdown reader:
+ Don't allow `^` at beginning of link or image label (#7723).
This is reserved for footnotes. Fixes regression from 0a93acf.
+ Fix parsing of "bare locators" after author-in-text citations.
Previously `@item [p. 12; @item2]` was incorrectly parsed as
three citations rather than two. This is now fixed by ensuring
that `prefix` doesn't gobble any semicolons.
+ Revert changes to `inlinesInBalancedBrackets` (commit fa83246),
which caused regressions.
+ Improve detection of pipe table line widths (#7713). Fixed
calculation of maximum column widths in pipe tables. It is
now based on the length of the markdown line, rather than a
"stringified" version of the parsed line. This should be
more predictable for users. In addition, we take into account
double-wide characters such as emojis.
* Custom (Lua) readers:
+ First argument is now a list of sources instead of the
concatenated text (Albert Krewinkel). The list
structure can easily be converted to a string by applying
`tostring`, but it is also possible to access the elements
(each with a `text` and `name`). A small example is added
to the custom reader documentation, showcasing its use in a
reader that creates a syntax-highlighted code block for
each source code file passed as input. Existing readers
will still work through a fallback mechanism, issuing a
deprecation notice.
* Org reader:
+ Parse official org-cite citations (#7329). We also support the older
org-ref style as a fallback. We no longer support the
"markdown style" or "Berkeley style" citations.
+ Support alphabetical (fancy) lists (Lucas Viana). When the
`fancy_lists` extension is enabled, alphabetical list markers are
allowed, mimicking the behaviour of Org Mode when
`org-list-allow-alphabetical` is enabled.
+ Support counter cookies in lists (Lucas Viana). Such cookies are
used to override the item counter in ordered lists. In org it is
possible to set the counter at any list item, but since Pandoc AST
does not support this, we restrict the usage to setting an offset for
the entire ordered list, by using the cookie in the first list item.
+ Allow trailing spaces after key/value pairs in directives (Albert
Krewinkel). Ensures that spaces at the end of attribute directives like
`#+ATTR_HTML: :width 100%` (note the trailing spaces) are accepted.
* LaTeX reader:
+ Omit visible content for `\label{...}`. Previously we
included the text of the label in square brackets, but this is
undesirable in many cases. See discussion in
<https://github.com/jgm/pandoc/issues/813#issuecomment-978232426>.
+ Improve references (#813). Resolve references to theorem environments.
Remove the Span caused by "label" in figure, table, and theorem
environments; this had an id that duplicated the environments' id.
+ Fix semantics of `\ref`. We were including the ams
environment type in addition to the number. This is proper
behavior for `\cref` but not for `\ref`. To support `\cref`
we need to store the environment label separately.
+ Add babel mappings for Guajati (gu) and Oriya (or) (#7815).
+ Fix typo `panjabi` -> `punjabi` in babel mappings (#7814).
* HTML reader:
+ Parse attributes on links and images (#6970).
* Docx reader:
+ Handle multiple pic elements inside a drawing (#7786).
+ Change `elemToParPart` to return `[ParPart]` instead of `ParPart`.
Also remove `NullParPart `constructor, as it is no longer
needed. This will allow us to handle elements that contain
multiple ParParts, e.g. `w:drawing` elements with multiple `pic:pic`.
* DocBook reader:
+ Collapse internal spaces in literal and other similar tags (#7821),
as the standard docbook toolchain does.
+ Be sensitive to spacing="compact" in lists (#7799). When
`spacing="compact"` is set, Para elements are turned into Plain,
so we get a "tight" list.
* Markdown writer:
+ Add new exported function `writeMarkua` from Text.Pandoc.Writers.Markdown
[API change] (#1871, Tim Wisotzki and Saumel Lemmenmeier).
+ Fix indentation issue in footnotes (#7801).
+ Avoid extra space before citation suffix if it already starts
with a space.
+ Ensure semicolon between the locator and the next citation when an
author-in-text citation has a locator and following citations.
+ Improve escaping for `#` (#7726).
* Custom (Lua) writers:
+ Allow variables to be set via second return value of `Doc`
(#6731, Albert Krewinkel). New templates variables can be added by
giving variable-value pairs as a second return value of the
global function `Doc`. Example:
```
function Doc (body, meta, vars)
vars.date = vars.date or os.date '%B %e, %Y'
return body, vars
end
```
+ Provide global `PANDOC_WRITER_OPTIONS` (#6731, Albert Krewinkel).
+ Assign default Pandoc object to global `PANDOC_DOCUMENT` (Albert
Krewinkel). The default Pandoc object is now non-strict, i.e., only
the parts of the document that are accessed will be marshaled to Lua.
A special type is no longer necessary. This change also makes it
possible to use the global variable with library functions such as
`pandoc.utils.references`, or to inspect the document contents with
`walk()`.
* LaTeX writer:
+ Fix typo `panjabi` -> `punjabi` in babel mappings (#7814).
* MediaWiki writer:
+ Remove redundant display text for wiki links (Jesse Hathaway).
* Docx writer:
+ Handle bullets correctly in lists by not reusing numIds
(#7689, Michael Hoffmann). This fixes a bug in which a Div in
a list item would receive bullets on its contained paragraphs.
* Org writer:
+ Fix list items starting with a code block or other non-paragraph
content (#7810).
+ Avoid blank lines after tight sublists (#7810).
+ Fix extra blank line inserted after empty list item (#7810).
+ Don't add blank line before lists (#7810).
+ Support starting number cookies (Lucas Viana). This is necessary
for lists that start at a number other than 1.
+ Support the new org-cite syntax (#7329).
* Haddock writer:
+ Avoid blank lines after tight sublists (#7810).
* Ipynb writer:
+ Ensure deterministic order of keys.
+ Handle cell output with raw block of markdown (#7563, Kolen Cheung).
Write RawBlock of markdown in code-cell output. This is designed
to fit the behavior of #7561, which makes the ipynb reader parse
code-cell output with mime "text/markdown" to a RawBlock of markdown.
This commit makes the ipynb writer writes this RawBlock of markdown
back inside a code-cell output with the same mime, preserving this
information in round-trip.
+ In choosing between multiple output options, always favor
those marked with the output format over images (Kolen Cheung).
Previously, both `fmt == f` case and Image have a rank of 1.
* Ipynb reader & writer: properly handle cell "id" (#7728).
This is passed through if it exists (in Nb4); otherwise
the writer will add a random one so that all cells have an "id".
* Ms writer:
+ Properly encode strings for PDF contents (#7731).
* JATS writer:
+ Keep quotes in element-citations (Albert Krewinkel).
Fixed a bug that lead to quote characters being lost in
element-citations.
* RTF writer:
+ Properly handle images in data URIs (#7771).
* Commonmark writer:
+ Allow ')' delimiters on ordered lists.
* RST writer:
+ Avoid extra blank line after empty list item (#7810).
* HTML writer:
+ Make line breaks more consistent. With `--wrap=none`, we now
output line breaks between block-level elements. Previously they
were omitted entirely, so the whole document was on one line, unless
there were literal line breaks in pre sections. This makes
the HTML writer's behavior more consistent with that of
other writers. Also, regardless of wrap settings,
put newline after `<dd>` and after block-level elements in
the footnotes section. And add a line break between an `img` tag
and the associated `figcaption`.
+ reveal.js: Make sure images with `r-stretch` are not in p tags.
They must be direct children of the section. There was previously
code to make this work with the older class name `stretch`, but
the name has changed in reveal.js.
+ reveal.js: don't add `r-fit-text` class to section. It must go on
the header only.
* AsciiDoc writer:
+ Improve detection of intraword emphasis (#7803).
* OpenDocument writer:
+ Fix vertical alignment bug with display math (#7777). Previously some
displayed formulas would be floated above a preceding text line.
This is fixed by setting `vertical-rel` to `text` rather than
`paragraph-content`.
* JATS template (Albert Krewinkel):
+ Fix position of contrib affiliations in authoring set. Any
`<aff>` element must come before any `<email>` element.
+ Fix affiliation tagging in `articleauthoring` output.
Affiliations were `xlink`ed even in the articleauthoring tag set, but
`<aff>` are not allowed as children of `contrib-group` elements in that
tag set. Each affiliation must be listed directly in the contrib
element.
+ Add support for article subtitles.
* EPUB template:
+ Include abstract in default template.
+ Ensure that the essential styles needed by pandoc (`styles.html`
partial) are included in the templates. This is important for correct
formatting of CSL bibliographies. Note that much of the styling in
`styles.html` will be ignored for EPUB, because of the conditional on
`document-css`. Setting the `document-css` variable will cause it
not to be ignored.
* HTML template: Add abstract (#7588, Jannik Buhr, John MacFarlane).
By default, a localized title (the word "Abstract") will be
used, unless the variable `abstract-title` is set.
* ConTeXt template: Make title appear in PDF title bar. This is
recommended for accessibility reasons. Note: doesn't work with macOS
Preview.app.
* `reference.pptx`: change to use 16:9 aspect ratio, Powerpoint's default.
* Text.Pandoc.Writers:
+ Do not export `writeCustom` [API change]. This ensures that all
writers exported in T.P.Writers are parameterized and work with any
`PandocMonad` type. This is consistent with T.P.Readers, as
`readCustom` is not exported from that module either.
* Text.Pandoc.Writers.Shared:
+ `endsWithPlain` now returns True if the list ends with a list
that ends with a Plain, and so on recursively (#7810).
* Text.Pandoc.Class.IO:
+ `writeMedia`: unescape percent-encoding in creating file path.
This addresses a problem with spaces in image filenames
when creating PDFs (#7819); it also affects `--extract-media`.
* New internal module Text.Pandoc.Writers.Blaze, exporting `layoutMarkup`.
This converts a blaze Html structure into a doclayout Doc Text.
* Text.Pandoc.Extensions:
+ `parseFormatSpec`: cleaner error message for invalid extensions.
* Text.Pandoc.MediaBag:
+ Fix bug in `extractMedia`, which caused the test for `..`
in paths to fail, with the result that images with `..`
in the path name could be extracted outside of the
directory specified by `extractMedia`. It also led a check for
`media` in resource paths to fail in the docx reader.
* Text.Pandoc.Citeproc:
+ Avoid adding comma before an author-in-text citation in a note
if it begins with a title (no author) (#7761).
+ Text.Pandoc.Citeproc.Locator now exports `toLocatorMap`,
`LocatorInfo`, and `LocatorMap`. The type of `parseLocator`
has changed, so it now takes a `LocatorMap` rather than a `Locale`
as parameter, and returns a `LocatorInfo` instead of a tuple.
+ Fix citation locator detection for German. `toLocatorMap` now
stores keys case-folded. We want to do a case-insensitive
comparison when parsing locators, so that e.g. both
`Chap.` and `chap.` work. Previously we case-folded terms
when doing the lookup, but they weren't case-folded in the
map itself, which led to locator-detection breaking for
German (where the terms have uppercase letters).
* Lua (Albert Krewinkel):
+ Allow single elements as singleton MetaBlocks/MetaInlines. Single
elements should always be treated as singleton lists in the Lua
subsystem.
+ Add `pandoc.template` module. The module provides a `compile`
function to use strings as templates.
+ Add `pandoc.WriterOptions` constructor.
+ Add function `pandoc.write`.
+ Provide global `PANDOC_WRITER_OPTIONS` (#5221).
+ The function Text.Pandoc.Filter.applyFilters now takes a filter
environment of type `Environment`, instead of a ReaderOptions value
[API change].
+ The `Environment` type is exported from Text.Pandoc.Filter
and allows to combine ReaderOptions and WriterOptions in a single
value [API change].
+ Global, exported from Text.Pandoc.Lua, has a new type constructor
`PANDOC_WRITER_OPTIONS` [API change].
+ Add constructors `pandoc.Blocks` and `pandoc.Inlines`.
The functions convert their argument into a list of Block and Inline
values, respectively. When applied to a string, they split the
string into `Str` elements separated by `Space` or `SoftBreak`
(#7712).
+ Support topdown traversals The traversal order of filters can now
be selected by setting the key `traverse` of the filter to either
`'topdown'` or `'typewise'`; the default remains `'typewise'`.
Topdown traversals can be cut short by returning `false` as a
second value from the filter function. No child-element of the
returned element is processed in that case.
+ Marshal ReaderOptions field `extensions`, `track_changes` via JSON.
Extensions are now available as a list of strings; the track-changes
settings are given as the kebab-case representation used in JSON.
+ Allow binary (byte string) readers to be used with `pandoc.read`.
+ Use global state when parsing documents in `pandoc.read`.
The function `pandoc.read` is updated to use the same state that was
used while parsing the main input files. This ensures that log
messages are preserved and that images embedded in the input are
added to the mediabag.
+ Cleanup stack in `peekReadOptionsTable`. A ReaderOptions element was
left on top of the stack when the `peekReadOptionsTable` function
was invoked.
+ `walk` methods are added to `Pandoc`, `Block`, `Inline`,
`Blocks`, `Inlines` values; the methods are similar to
`pandoc.utils.walk_block` and `pandoc.utils.walk_inline`, but
apply to filter to the element's contents.
+ Functions of name `Doc` are no longer accepted as alternatives for
`Pandoc` filter functions. This functionality was undocumented.
+ Improve handling of empty caption, body by `from_simple_table`
[#7776]). Create truly empty table caption and body when these are
empty in the simple table.
+ Change representation of `TableHead`, `TableFoot`, and `Row` values
(#7718). The objects now also follow the principle that element
attributes are accessible through the `.attr` field. Rows in `TableHead`
and `TableFoot` are available via the `.rows` field. Row objects have a
`.cells` field, containing the list of table cells.
+ [Simplify](Simplify) code of `pandoc.utils.stringify`. Minor behavior change:
plain strings nested in tables are now included in the result string.
+ Simplify and deprecate function `pandoc.utils.equals`. The function
is no longer required for element comparisons; it is now an alias
for the `==` operator.
+ Add function `pandoc.utils.references` (#7752).
+ Add new library function `pandoc.utils.type`. The function behaves
like the default `type` function from Lua's standard library,
but is aware of pandoc userdata types. A typical use-case would be
to determine the type of a metadata value.
+ Fix return types of `blocks_to_inlines`, `make_sections`.
Ensures the returned lists have the correct type (`Inlines` and
`Blocks`, respectively).
+ Use more natural representation for Reference values
Omit `false` boolean values, push integers as numbers.
* Lua: use package pandoc-lua-marshal (#7719, Albert Krewinkel).
The marshaling functions for pandoc's AST are extracted into a separate
package. The package comes with a number of changes:
+ Pandoc's List module was rewritten in C, and error messages were
improved.
+ Lists of `Block` and `Inline` elements are marshaled using the new
list types `Blocks` and `Inlines`, respectively. These types
currently behave identical to the generic List type, but give better
error messages. This also opens up the possibility of adding
element-specific methods to these lists in the future.
+ Elements of type `MetaValue` are no longer pushed as values which
have `.t` and `.tag` properties. This was already true for
`MetaString` and `MetaBool` values, which are still marshaled as Lua
strings and booleans, respectively. Affected values:
- `MetaBlocks` values are marshaled as a `Blocks` list;
- `MetaInlines` values are marshaled as a `Inlines` list;
- `MetaList` values are marshaled as a generic pandoc `List`s.
- `MetaMap` values are marshaled as plain tables and no longer
given any metatable.
+ `Cell` values are now marshaled as userdata objects; a constructor
function for table cells is provided as `pandoc.Cell`.
+ The test suite for marshaled objects and their constructors has
been extended and improved.
+ A bug in `Citation` objects, where setting a citation's suffix
modified it's prefix, has been fixed.
+ Inlines, Blocks, and List objects now have an `__eq` metamethod,
testing equality by comparing two lists element-wise.
* Powerpoint tests: shorten lines by grouping tests (Albert
Krewinkel). This makes the test output more pleasant to read
in narrow terminal windows.
* make check: check for unreleased dependencies.
* Add `tools/build-and-upload-api-docs.sh`.
* Update cabal description.
* `MANUAL.txt`: Add section on EPUB styling.
* `MANUAL.txt`: clarify "standard Markdown" as "original Markdown"
(#7802, Martin Fischer).
* `doc/custom-writers.md`: use filter to include source of example.
* Add an example to `doc/custom-readers.md`.
* Fix typo in `custom-readers.md` (#7722, Mauro Bieg).
* `doc/jats.md`: add link to JATS documentation (Martin Fischer).
* `doc/lua-filters.md`: many improvements (Albert Krewinkel,
John MacFarlane).
* Use commonmark-extensions 0.2.3. This allows a bare-word class attribute
on fenced divs.
* Use ipynb 0.2.
* Use citeproc 0.6.0.1.
* Use texmath 0.12.4.
* Use doctemplates 0.10.0.1.
[#]# pandoc 2.16.2 (2021-11-21)
* Add interface for custom readers written in Lua (#7669).
Users can now do `-f myreader.lua` and pandoc will treat the
script `myreader.lua` as a custom reader, which parses an input
string to a pandoc AST, using the pandoc module defined for
Lua filters. A sample custom reader can be found in `data/creole.lua`.
Also see documentation in `doc/custom-readers.md`.
* New module Text.Pandoc.Readers.Custom, exporting `readCustom` [API change].
* Allow `plain` to be used in raw attribute syntax.
* Accept empty `--metadata-file` (#7675).
This was a regression from 2.15 behavior.
* Markdown reader: Improve `inlinesInBalancedBrackets`.
This is just a small improvement in terms of performance, but it's simpler
and more direct code. Also, we avoid parsing interparagraph spaces in
balanced brackets, as the original did.
* BibTeX reader: Properly handle commented lines in BibTeX/BibLaTeX (#7668).
* RST reader: handle class attribute for for custom roles (#7699,
willj-dev). Previously the class attribute was ignored, and the name
of the role used as the class.
* DocBook reader:
+ Add `<titleabbr>` support (Rowan Rodrik van der Molen).
+ Support for `<indexterm>` (#7607, Rowan Rodrik van der Molen).
* LaTeX reader:
+ Add rudimentary support for `\autoref` (#7693).
+ Add 'uri' class when parsing `\url`, for consistency
with treatment of autolinks in other formats (#7672).
* JATS reader: Capture `alt-text` in figures (#7703, Aner Lucero).
* MediaWiki writer: use HTML spans for anchors when header has id (#7697).
We need to generate a span when the header's ID doesn't match
the one MediaWiki would generate automatically. Note that MediaWiki's
generation scheme is different from pandoc's (it uses uppercase letters,
and `_` instead of `-`, for example). This means that in going from
markdown to mediawiki, we'll now get spans before almost every heading,
unless explicit identifiers are used that correspond to the ones MediaWiki
auto-generates. This is uglier output but it's necessary for internal
links to work properly.
* Markdown writer: don't create autolinks when this loses information
(#7692). Previously we sometimes lost attributes when rendering links
as autolinks.
* Text.Pandoc.Readers.Metadata: allow multiple YAML documents when parsing
YAML for `yamlBsToRefs`. Some people use `---` as the end delimiter in
YAML bibliography files, which causes the `yaml` library to emit an
error unless we explicitly allow multiple YAML documents (and just
consider the first).
* JATS writer:
+ Ensure figures are wrapped with `<p>` in list items
(Albert Krewinkel). This prevents the generation of invalid output.
+ Add URL to element citation entries (Albert Krewinkel).
The URL of a reference, if present, is added in tag `<uri>` to
element-citation entries.
* HTML writer: Don't create invalid `data-` attribute for empty
attribute key (#7546).
* LaTeX writer:
+ Babel mappings: use `ancientgreek` for `grc`.
+ With `-t latex-smart`, don't generate `\ldots` from ellipsis (#7674).
Instead just use unicode ellipsis.
* JATS template: fix `equal-contrib` attribute (Albert Krewinkel).
The standard requires the value to be either `yes` or `no`, but is was
set to `true` for authors who contributed equally.
* reveal.js template: Add `disableLayout` variable (Christophe Dervieux).
* Text.Pandoc.Error: sort errors in `handleError` by exit code
(Albert Krewinkel).
* Text.Pandoc.Writers.Shared: Improve toLegacyTable (#7683,
Christian Despres).
* Lua subsystem:
+ Include lpeg module (#7649, Albert Krewinkel). Compiles the `lpeg`
library (Parsing Expression Grammars For Lua) into
the program. Package maintainers may choose to rely on package
dependencies to make lpeg available, in which case they can compile
the with the constraint `lpeg +rely-on-shared-lpeg-library`.
`lpeg` and `re` are always made available in global variables,
without the need for a `require`.
+ Set `lpeg` and `re` as globals; allow shared lib access via `require`.
The `lpeg` and `re` modules are loaded into globals of the respective
name, but they are not necessarily registered as loaded packages. This
ensures that
- the built-in library versions are preferred when setting the globals,
- a shared library is used if pandoc has been compiled without `lpeg`,
and
- the `require` mechanism can be used to load the shared library if
available, falling back to the internal version if possible and
necessary.
+ Fix argument order in constructor `pandoc.Cite` (Albert Krewinkel).
This restores the old behavior; argument order had been switched
accidentally in pandoc 2.15.
+ Add Pushable instance for `ReaderOptions` (Albert Krewinkel).
+ Allow to pass custom reader options to `pandoc.read` as an
optional third argument (#7656, Albert Krewinkel).
The object can either be a table or a ReaderOptions value
like `PANDOC_READER_OPTIONS`. Creating new ReaderOptions objects is
possible through the new constructor `pandoc.ReaderOptions`.
+ Display Pandoc values using their native Haskell representation
(Albert Krewinkel).
+ Require latest hslua (2.0.1) (#7661, #7657, Albert Krewinkel).
This fixes issues with
- misleading error messages when a required function parameter is
omitted;
- absent properties still being listed in the output of `pairs`; and
- alias accessing leading to errors instead of returning `nil`, e.g.
with `(pandoc.Str '').identifier`.
+ Add missing space in "package not found" message (#7658, Albert
Krewinkel).
* Update build files (#7696, Fabián Heredia Montiel).
Drop old windows 32-bit constraints.
Update cabal `tested-with` field to correspond to `ci.yml` matrix
* Remove unneeded package dependencies from benchmark target.
* Require ghc >= 8.6, base >= 4.12.
This allows us to get rid of the old custom prelude and
some crufty cpp. But the primary reason for this is that
conduit has bumped its base lower bound to 4.12, making it
impossible for us to support lower base versions.
* Require Cabal 2.4. Use wildcards to ensure that all pptx tests are
included (#7677).
* Update `bash_completion.tpl` (S.P.H.).
* Add `data/creole.lua` as sample custom reader.
* Add `doc/custom-readers.md` and `doc/custom-writers.md`.
* `doc/lua-filters.md`: add section on global modules, including lpeg
(Albert Krewinkel).
* `MANUAL.txt`: update table of exit codes and corresponding errors
(Albert Krewinkel).
* Use latest texmath.
* Wed Nov 03 2021 psimons@suse.com
- Update pandoc to version 2.16.1.
[#]# pandoc 2.16.1 (2021-11-02)
* Docx reader: don't let first line indents trigger block quotes (#7655).
This fixes a regression introduced in pandoc 2.15.
* Docx writer: use `getTimestamp` for modification times in
reference.docx (#7654). This ensures that when `SOURCE_DATE_EPOCH` is
set, the modification times of files taken from the reference.docx will
be set deterministically, allowing for reproducible builds.
* Lua subsystem (Albert Krewinkel):
+ Load module `pandoc.path` on startup (#7524). Previously the module
always had to be loaded via `require 'pandoc.path'`.
+ Fix typo in SoftBreak constructor.
+ Re-add `content` property to Strikeout elements.
Fixes a regression introduced in 2.15.
+ Be more forgiving when retrieving the Image `caption` property.
Fixes a regression introduced in 2.15.
+ Display Attr values using their native Haskell representation.
+ Allow omitting the 2nd parameter in pandoc.Code constructor.
Fixes a regression introduced in 2.15 which required users to always
specify an Attr value when constructing a Code element.
+ Allow to compare, show Citation values. Comparisons of Citation
values are performed in Haskell; values are equal if they represent
the same Haskell value. Converting a Citation value to a string
now yields its native Haskell string representation.
+ Restore List behavior of MetaList (#7650). Fixes a regression
introduced in 2.16 which had MetaList elements lose
the `pandoc.List` properties.
+ Restore `content` property on Header elements.
+ Ensure Block elements have all expected properties.
+ Ensure Inline elements have all expected properties.
* Allow tasty-bench 0.3.x.
* Mon Nov 01 2021 psimons@suse.com
- Update pandoc to version 2.16.
Upstream has edited the change log file since the last release in
a non-trivial way, i.e. they did more than just add a new entry
at the top. You can review the file at:
http://hackage.haskell.org/package/pandoc-2.16/src/changelog.md
* Thu Oct 07 2021 Ond?ej Súkup <mimi.vx@gmail.com>
- relax dep on skylighting
* Sun Aug 22 2021 psimons@suse.com
- Update pandoc to version 2.14.2.
[#]# pandoc 2.14.2 (provisional)
* Allow `--slide-level=0` (#7476). When the slide level is set
to 0, headings won't be used at all in splitting the document
into slides. Horizontal rules must be used to separate slides.
* Add RTF reader (#3982). `rtf` is now supported as an input
format as well as an output format. New module
Text.Pandoc.Readers.RTF (exporting `readRTF`). [API change]
* HTML reader: treat comments as blank when parsing (#7482).
* Markdown reader:
+ Fix raw LaTeX injection issue (#7497). Using a code block
containing `\end{verbatim}`, one could inject raw TeX into a
LaTeX document even when `raw_tex` is disabled. Thanks to
Augustin Laville for noticing the bug.
+ Multimarkdown sub- and superscripts (#5512, OCzarnecki).
Added an extension `short_subsuperscripts` which modifies
the behavior of `subscript` and `superscript`, allowing
subscripts or superscripts containing only alphanumerics
to end with a space character (eg. `x^2 = 4` or `H~2 is
combustible`). This improves support for multimarkdown.
* RST reader: Fix `:literal:` includes (#7513). These should create
code blocks, not insert raw RST.
* LaTeX reader:
+ Proper implicit grouping around environment macros.
+ Support `\global` before `\def`, `\let`, etc. (#7494).
+ Fix scope for LaTeX macros (#7494). They should by default
scope over the group in which they are defined (except `\gdef`
and `\xdef`, which are global). In addition, environments must
be treated as groups.
+ Improve handling of plain TeX macro primitives (#7474).
Fixed semantics for `\let`.
+ Implement `\edef`, `\gdef`, and `\xdef`.
* Docx reader: Improve docx reader's robustness in extracting
images (#7511). The docx reader made some assumptions about
how docx containers were laid out that were not always true, with
the result that some images in documents did not get
extracted.
* LaTeX writer: Increase table column width precision (#7466,
Peter Fabinski). In some cases, the rounding performed by the
LaTeX table writer would introduce visible overrun outside
the text area. This adds two more decimal places to the width
values.
* Powerpoint writer:
+ Include image title in description (#7352, Emily Bourke). The
image title (i.e. `![alt text](link "title")`) was previously
ignored when writing to pptx. This commit includes it in
PowerPoint's description of the image, along with the link.
+ Select layouts from reference doc by name (Emily Bourke). Until
now, users had to make sure that their reference doc contains
layouts in a specific order: the first four layouts in the file
had to have a specific structure. Now the layout selection uses
the layout names rather than order: users must make sure their
reference doc contains four layouts with specific names, and if
a layout with the right name isn?t found pandoc will emit
a warning and use the corresponding layout from the default
reference doc as a fallback.
* Docx writer: be sensitive to the `native_numbering` extension
(#7499). Figure and table numbers are now only included if
`native_numbering` is enabled. (By default it is disabled.)
This is a behavior change with respect to 2.14.1, but the
default behavior is now that of previous versions. The
change was necessary to avoid incompatibilities between
pandoc's native numbering and third-party cross reference
filters like pandoc-crossref.
* RTF writer:
+ Omit `\bin` in `\pict`. According to the spec, this is not
needed or wanted when the data is in hexadecimal format, as
here.
+ Emit `\outlinelevel`` for section headings.
* RTF template: specify font family for fixed-width font f1.
According to the spec, this is mandatory.
* LaTeX writer: Use ulem for underline (#7351). ulem is
conditionally included already when the `strikeout` variable
is set, so we set this when there is underlined text, and use
`\uline` instead of `\underline`. This fixes wrapping for
underlined text.
* Text.Pandoc.Citeproc:
+ Revise citeproc code to fit new citeproc 0.5 API (thanks to
Benjamin Bray). Linkification of URLs in the bibliography
is now done in the citeproc library, depending on the
setting of an option. We set that option depending on the
value of the metadata field `link-bibliography` (defaulting
to true, for consistency with earlier behavior). If a DOI,
PMID, PMCID, or URL field is present but not explicitly
rendered, the title (or if no title, the whole entry) is
hyperlinked. These changes implement the recommendations
from the draft CSL v1.0.2 spec (Appendix VI):
<https://github.com/citation-style-language/documentation/blob/master/specification.rst#appendix-vi-links>
+ Avoid odd handling of quotes. Recent citeproc changes
allow us to ignore Quoted elements; citeproc now uses its own
method for represented quoted things, and only localizes and
flipflops quotes it adds itself. Convert Quoted in bib
entries to special Spans before passing them off to
citeproc. This ensures that we get proper localization and
flipflopping if, e.g., quotes are used in titles
(jgm/citeproc#87).
+ Removed quote localization from citeproc processing.
This is now done in citeproc itself.
* Text.Pandoc.Logging: Add PowerpointTemplateWarning log message
type [API change] (Emily Bourke).
* Text.Pandoc.Extension: Add `Ext_short_subsuperscripts`
constructor to `Extension` [API change] (OCzarnecki).
* Various sample.lua editorial fixes (#7493, #7487, William
Lupton).
* Bump base-compat version so we get compatibility with base 4.12.
* Use Prelude from base-compat for ghc 8.4 too.
* Add haskell-language-server to shell.nix (#7496, Emily Bourke).
* Tests.Helpers: export testGolden and use it in RTF reader.
This gives a diff output on failure.
* Remove obsolete and incorrect sentence in `--slide-level` docs.
* Add internal module Text.Pandoc.Network.HTTP, exporting
`urlEncode`.
* Text.Pandoc.Parsing: `parseFromString`: preserve at least
the source directory (#7464). Previously we just set the
source name to "chunk" when parsing from strings, to avoid
misleading source positions. This had the side effect that
`rebase_relative_paths` would break inside sections that
were parsed as strings. So, now we use
"ORIGINAL_SOURCE_PATH_chunk" instead of just "chunk".
* Text.Pandoc.MIME: use image/x-xcf instead of application/x-xcf
(#7454).
* Don?t compare `cdLine` in OOXML golden tests (Emily Bourke).
The `cdLine` field gives the line of the file some CData was
found on, which reflects irrelevant formatting differences.
* Provide more detailed XML diff in tests (Emily Bourke).
* OOXML tests: silence warnings. These can make the test output
confusing, making people think tests are failing when they're
passing.
* INSTALL.md: Add GitLab CI/CD example (#7448, Veratyr).
* MANUAL.txt
- Clarifications (William Lupton).
- Add a note on security risks of include directives.
* Document use of the 'underline' class (#7492, #7484, William
Lupton).
* Add a FAQ about the "Cannot allocate memory" error on M1 macs.
* Use texmath 0.12.3.1.
* Use released citeproc 0.5.
* Remove dependency on HTTP package (#7456, mt_caret).
* Sun Jul 25 2021 Kévin Le Gouguec <kevin.legouguec@gmail.com>
- Include manpage in distribution.
* Mon Jul 19 2021 psimons@suse.com
- Update pandoc to version 2.14.1.
[#]# pandoc 2.14.1 (2021-07-18)
* Text.Pandoc.ImageSize: Add Tiff constructor for ImageType (#7405)
[Minor API change]. This allows pandoc to get size information from
tiff images.
* Markdown reader: don't try to read contents in self-closing HTML tag.
Previously we had problems parsing raw HTML with self-closing
tags like `<col/>`. The problem was that pandoc would look
for a closing tag to close the markdown contents, but the
closing tag had, in effect, already been parsed by `htmlTag`.
* LaTeX reader:
+ Avoid trailing hyphen in translating languages (#7447).
Previously `\foreignlanguage{english}` turned into `<span lang="en-">`.
The same issue affected Arabic.
+ Support `\cline` in LaTeX tables (#7442).
+ Improved parsing of raw LaTeX from Text streams (`rawLaTeXParser`,
used to read LaTeX in Markdown files, #7434). We now use source
positions from the token stream to tell us how much of the text stream
to consume. Getting this to work required a few other changes to
make token source positions accurate.
* DocBook reader:
+ Handle images with imageobjectco elements (#7440).
+ Add support for citerefentry (#7437, Jan Tojnar).
* RST reader: fix regression with code includes (#7436).
With the recent changes to include infrastructure,
included code blocks were getting an extra newline.
* HTML reader:
+ Recognize data-external when reading HTML img tags (#7429,
Michael Hoffmann). Preserve all attributes in img tags. If attributes
have a `data-` prefix, it will be stripped. In particular, this
preserves a `data-external` attribute as an `external` attribute in
the pandoc AST.
+ Add col, colgroup to 'closes' definitions
* HTML writer:
+ Remove duplicated alt text in HTML output (Aner Lucero).
+ Remove `aria-hidden` when explicit alt text is provided (Aner Lucero).
+ Set boolean values for reveal.js variables.
* Docx writer:
+ Add table numbering for captioned tables.
The numbers are added using fields, so that Word can
create a list of tables that will update automatically.
+ Support figure numbers. These are set up in such a way that they
will work with Word's automatic table of figures (#7392).
* Markdown writer: put space between Plain and following fenced Div
(#4465).
* EPUB writer: Don't incorporate externally linked images in EPUB documents
(#7430, Michael Hoffmann). Just as it is possible to avoid incorporating
an image in EPUB by passing `data-external="1"` to a raw HTML snippet,
this makes the same possible for native Images, by looking for an
associated `external` attribute.
* Text.Pandoc.PDF:
+ Fix `svgIn` path error (#7431). We were duplicating
the temp directory; this didn't cause problems on macOS or linux
because there we use absolute paths for the temp directory.
But on Windows it caused errors converting SVG files.
+ `convertImage`: normalize paths (#7431). This will avoid paths
on Windows with mixed path separators.
* Text.Pandoc.Class: Always use / when adding directory to image destination
with `extractMedia`, even on Windows.
* Text.Pandoc.Citeproc:
+ Allow `$` characters in bibtex keys (#7409).
+ Set proper initial source name in parsing BibTeX (for better error
messages.)
+ Revamp note citation handling (#7394). Use latest
citeproc, which uses a Span with a class rather than a Note for notes.
This helps us distinguish between user notes and citation notes. Don't
put citations at the beginning of a note in parentheses. Fix small bug
in handling of citations in notes, which led to commas at the end of
sentences in some cases.
+ Cleanup and efficiency improvement in `deNote`.
+ Improve punctuation moving with `--citeproc`. Previously, using
`--citeproc` could cause punctuation to move in quotes even when
there aer no citations. This has been changed; punctuation moving
is now limited to citations. In addition, we only move footnotes
around punctuation if the style is a note style, even if
`notes-after-punctuation` is `true`.
* Use citeproc 0.10. This helps improve note citations (see above)
and eliminates double hyperlinks in author-in-text citations.
Author-only citations are no longer hyperlinked. See jgm/citeproc#77.
It also fixes moving of punctuation inside quotes to conform to
the CSL spec: only comma and period are moved, not question
mark or exclamation point.
* Text.Pandoc.Error: fix line calculations in reporting parsec errors.
Also remove a spurious initial newline in the error report.
* Use doctemplates 0.4.1, which gives us better support for boolean
variable values. Previously `$if(foo)$` would evaluate to true
for variables with boolean `false` values, because it cared only
about the string rendering (#7402).
* Require commonmark-pandoc >= 0.2.2.1.
This fixes task lists with multiple paragraphs.
* Use skylighting 0.11.
* CSS in HTML template: reset overflow-wrap on code blocks
(Mauro Bieg, #7423).
* LaTeX template: Revert change in PR #7295: "move title, author, date up
to top of preamble." The change caused problem for people who used
LaTeX commands defined defined later in the preamble in the title
or author fields (#7422).
* Add `doc/faqs.md`. This is imported from the website; in the future the
website version will be drawn from here.
Added a FAQ on the use of `\AtEndPreamble` for cases when the contents of
`header-includes` need to refer to definitions that come later in the
preamble. See #7422.
* Upgrade Debian 10 AMI for build-arm.sh.
* CircleCI: change to using xcode 11.1.0 (macOS 10.14.4).
We previously built on 10.13, but 10.13 no longer gets
security updates and CirclCI is deprecating.
* Wed Jun 23 2021 psimons@suse.com
- Update pandoc to version 2.14.0.3.
[#]# pandoc 2.14.0.3 (2021-06-22)
* Text.Pandoc.MediaBag `insertMediaBag`: ensure we get a sane mediaPath
for URLs (#7391). In earlier 2.14.x versions, we'd get
incorrect paths for resources downloaded from URLs when the
media are extracted (including in PDF production).
* Text.Pandoc.Parsing: improve `emailAddress` (#7398).
Previously the parser would accept characters in domains
that are illegal in domains, and this sometimes caused it
to gobble bits of the following text.
* txt2tags reader: modify the email address parser so
it still includes form parameters, even after the change to
`emailAddress` in Text.Pandoc.Parsing.
* Text.Pandoc.Readers.Metadata: Fix regression with comment-only YAML
metadata blocks (#7400).
* reveal.js writer and template: better handling of options. Previously
it was impossible to specify false values for options that default to
true (e.g. `center`); setting the option to false just caused the portion
of the template setting the option to be omitted. Now we prepopulate
all the variables with their default values, including them all
unconditionally and allowing them to be overridden.
* Markdown writer: Fix regression in code blocks with attributes (#7397).
Code blocks with a single class but nonempty attributes
were having attributes drop as a result of #7242.
* LaTeX writer:
+ Add strut at end of minipage if it contains line breaks.
Without them, the last line is not as tall as it should be in
some cases.
+ Always use a minipage for cells with line breaks, when
width information is available (#7393). Otherwise the way we treat them
can lead to content that overflows a cell.
+ Use `\strut` instead of `~` before `\\` in empty line.
* Use lts-18.0 stack resolver.
* Require skylighting 0.10.5.2 (adding support for Swift).
* Require commonmark 0.2.1.
* Rephrase section on unsafe HTML in manual.
* Create SECURITY.md
* Mon Jun 14 2021 psimons@suse.com
- Update pandoc to version 2.14.0.2.
[#]# pandoc 2.14.0.2 (2021-06-13)
* Fix MediaBag regressions (#7345). iIn the 2.14 release `--extract-media`
stopped working as before; there could be mismatches between the
paths in the rendered document and the extracted media.
This patch makes several changes that restore the earlier behavior
(while keeping the same API). The `mediaPath` in 2.14 was always
constructed from the SHA1 hash of the media contents. Now, we
preserve the original path unless it's an absolute path or contains
`..` segments (in that case we use a path based on the SHA1 hash of
the contents).
In Text.Pandoc.MediaBag, `mediaDirectory` and `mediaItems` now use the
`mediaPath`, rather than the mediabag key, for the first component of the
tuple. This makes more sense, I think, and fits with the documentation of
these functions; eventually, though, we should rework the API so that
`mediaItems` returns both the keys and the MediaItems.
In Text.Pandoc.Class.IO, rewriting of source paths in `extractMedia` has
been fixed.
In Text.Pandoc.Class.PandocMonad, `fillMediaBag` has been modified so that
it doesn't modify image paths (that was part of the problem in #7345).
We now do path normalization (e.g. `\` separators on Windows) in
writing the media.
* Text.Pandoc.PDF:
+ Text.Pandoc.PDF: Fix regression in 2.14 for generation of PDFs with
SVGs (#7344).
+ Only print relevant part of environment on `--verbose`. Since
`--verbose` output might be put in an issue, we want to avoid
spilling out secrets in environment variables.
* Markdown reader: fix pipe table regression in 2.11.4 (#7343).
Previously pipe tables with empty headers (that is, a header
line with all empty cells) would be rendered as headerless
tables. This broke in 2.11.4. The fix here is to produce an
AST with an empty table head when a pipe table has all empty
header cells.
* LaTeX reader: don't allow optional `*` on symbol control sequences
(#7340). Generally we allow optional starred variants of LaTeX commands
(since many allow them, and if we don't accept these explicitly,
ignoring the star usually gives acceptable results). But we
don't want to do this for `\(*\)` and similar cases.
* Docx reader: handle absolute URIs in Relationship Target (#7374).
* Docx writer: fix handling of empty table headers (Albert Krewinkel,
[#7369]). A table header which does not contain any cells is now treated as
an empty header.
* LaTeX writer: Fix regression in table header position (#7347).
In recent versions the table headers were no longer bottom-aligned
(if more than one line). This patch fixes that by using minipages
for table headers in non-simple tables.
* CommonMark writer:
+ Do not use simple class for fenced-divs (Jan Tojnar, amends #7242.)
+ Do not throw away attributes when `Ext_attributes` is enabled.
`Ext_attributes` covers at least the following:
`Ext_fenced_code_attributes`, `Ext_header_attributes`,
`Ext_inline_code_attributes`, `Ext_link_attributes`.
* Markdown writer:
+ Allow `pipe_tables` to be disabled for commonmark formats
(`commonmark_x`, `gfm`) (#7375).
+ Re-use functions from Text.Pandoc.Markdown.Inline (Jan Tojnar).
* DocBook writer: Remove non-existent admonitions (Jan Tojnar).
`attention`, `error` and `hint` are reStructuredText specific.
* HTML writer: Don't omit width attribute on div (#7342).
* Text.Pandoc.MIME, `extensionFromMimeType`: add a few special cases.
When we do a reverse lookup in the MIME table, we just get the
last match, so when the same mime type is associated with several
different extensions, we sometimes got weird results, e.g. `.vs`
for `text/plain`. These special cases help us get the most standard
extensions for mime types like `text/plain`.
* Lua utils: fix handling of table headers in `from_simple_table` (Albert
Krewinkel, #7369). Passing an empty list of header cells now results
in an empty table header.
* Text.Pandoc.Citeproc:
+ Avoid duplicate classes and attributes on references div.
+ Fix regression in citeproc processing (#7376). If inline
references are used (in the metadata `references` field), we
should still only include in the bibliography items that are
actually cited (unless `nocite` is used).
* Require citeproc 0.4.0.1. This fixes a bug which led to doubled
"et al." in some (rare) circumstances.
* MANUAL.txt:
+ Mention GladTeX for EPUB export (Sebastian Humenda).
This updates the manual and the web site about the GladTeX usage.
+ More details and a useful link for YAML syntax.
* CONTRIBUTING.md: update modules overview (Albert Krewinkel).
* using-the-pandoc-api.md: switch from String to Text (Albert Krewinkel).
* Wed Jun 02 2021 psimons@suse.com
- Update pandoc to version 2.14.0.1.
Upstream has edited the change log file since the last release in
a non-trivial way, i.e. they did more than just add a new entry
at the top. You can review the file at:
http://hackage.haskell.org/package/pandoc-2.14.0.1/src/changelog.md
* Sun May 30 2021 psimons@suse.com
- Update pandoc to version 2.14.
[#]# pandoc 2.14 (2021-05-28)
* Change reader types, allowing better tracking of source positions
[API change]. Previously, when multiple file arguments were provided,
pandoc simply concatenated them and passed the contents to the readers,
which took a Text argument. As a result, the readers had no way of knowing
which file was the source of any particular bit of text. This meant that
we couldn't report accurate source positions on errors or include accurate
source positions as attributes in the AST. More seriously, it meant that
we couldn't resolve resource paths relative to the files containing them
(see e.g. #5501, #6632, #6384, #3752).
* Add `rebase_relative_paths` extension (#3752). When enabled, this
extension rewrites relative image and link paths by prepending
the (relative) directory of the containing file. This
behavior is useful when your input sources are split
into multiple files, across several directories, with files
referring to images stored in the same directory. The
extension can be enabled for all markdown and commonmark-based formats.
* Add Text.Pandoc.Sources (exported module), with a `Sources` type and a
`ToSources` class. A `Sources` wraps a list of `(SourcePos, Text)` pairs
[API change]. A parsec `Stream` instance is provided for `Sources`. The
module also exports versions of parsec's `satisfy` and other Char parsers
that track source positions accurately from a `Sources` stream (or any
instance of the new `UpdateSourcePos` class).
* Text.Pandoc.Parsing
+ Export the modified Char parsers defined in Text.Pandoc.Sources
instead of the ones parsec provides. Modified parsers to use a
`Sources` as stream [API change].
+ Improve include file functions [API change]. Remove old
`insertIncludedFileF`. Give `insertIncludedFile` a more general type,
allowing it to be used where `insertIncludedFileF` was.
+ Add parameter to the `citeKey` parser from
Text.Pandoc.Parsing, which controls whether the `@{..}`
syntax is allowed [API change].
* Text.Pandoc.Error: Modified the constructor `PandocParsecError` to take a
`Sources` rather than a `Text` as first argument, so parse error locations
can be accurately reported.
* Fix source position reporting for YAML bibliographies (#7273).
* Issue error message when reader or writer format is malformed
(#7231). Previously we exited with an error status but (due to a bug)
no message.
* Smarter smart quotes (#7216, #2103). Treat a leading `"` with no
closing `"` as a left curly quote. This supports the practice, in
fiction, of continuing paragraphs quoting the same speaker without an
end quote. It also helps with quotes that break over lines in line blocks.
* Markdown reader:
+ Use MetaInlines not MetaBlocks for multimarkdown metadata fields.
This gives better results in converting to e.g. pandoc markdown.
+ Implement curly-brace syntax for Markdown citation keys (#6026).
The change provides a way to use citation keys that contain
special characters not usable with the standard citation key syntax.
Example: `@{foo_bar{x}'}` for the key `foo_bar{x}`. It also allows
separating citation keys from immediately following text, e.g. `@{foo}A`.
* RST reader:
+ Seek include files in the directory of the file
containing the include directive, as RST requires (#6632).
+ Use `insertIncludedFile` from Text.Pandoc.Parsing
instead of reproducing much of its code.
* Org reader: Resolve org includes relative to the directory containing the
file containing the INCLUDE directive (#5501).
* ODT reader: Treat tabs as spaces (#7185, niszet).
* Docx reader:
+ Add handling of vml image objects (#7257, mbrackeantidot).
+ Support new table features (Emily Bourke, #6316): column
spans, row spans, multiple header rows, table description
(parsed as a simple caption), captions, column widths.
* LaTeX reader:
+ Improved siunitx support (#6658, #6620).
+ Better support for `\xspace` (#7299).
+ Improve parsing of `\def` macros. We previously set "verbatim mode"
even for parsing the initial `\def`; this caused problems
for `\def` nested inside another `\def`.
+ Implement `\newif`.
* ConTeXt writer: improve ordered lists (#5016, Denis Maier).
Change ordered list from itemize to enumerate. Add new
itemgroup for ordered lists. Remove manual insertion of
width attributes. Use tabular figures in ordered list
enumerators.
* HTML reader:
+ Don't fail on unmatched closing "script" tag (Albert Krenkel, #7282).
+ Keep h1 tags as normal headers (#2293, Albert Krewinkel).
The tags `<title>` and `<h1 class="title">` often contain the same
information, so the latter was dropped from the document. However, as
this can lead to loss of information, the heading is now always
retained. Use `--shift-heading-level-by=-1` to turn the `<h1>`
into the document title, or a filter to restore the previous behavior.
+ Handle relative lengths (e.g. `2*`) in HTML column widths (#4063).
See <https://www.w3.org/TR/html4/types.html#h-6.6>.
* DocBook/JATS readers:
+ Fix mathml regression caused by the switch in XML libraries (#7173).
+ Fix "phrase" in DocBook: take classes from "role" not "class" (#7195).
* DocBook reader: ensure that first and last names are separated (#6541).
* Jira reader (Albert Krewinkel, #7218):
+ Support "smart" links: `[alias|https://example.com|smart-card]` syntax.
+ Allow spaces and most unicode characters in attachment links.
+ No longer require a newline character after `{noformat}`.
+ Only allow URI path segment characters in bare links.
+ The `file:` schema is no longer allowed in bare links; these
rarely make sense.
* Plain writer: handle superscript unicode minus (#7276).
* LaTeX writer:
+ Better handling of line breaks in simple tables (#7272).
Now we also handle the case where they're embedded in other elements,
e.g. spans.
+ For beamer output, support `exampleblock` and `alertblock` (#7278).
A block will be rendered as an `exampleblock` if the heading
has class `example` and an `alertblock` if it has class `alert`.
+ Separate successive quote chars with thin space (#6958,
Albert Krewinkel). Successive quote characters are separated with
a thin space to improve readability and to prevent unwanted ligatures.
Detection of these quotes sometimes had failed if the second quote
was nested in a span element.
+ Separate successive quote chars with thin space (#6958, Albert
Krewinkel).
* EPUB Writer: Fix belongs-to-collection XML id choice (#7267, nuew).
The epub writer previously used the same XML id for both the book
identifier and the epub collection. This causes an error on epubcheck.
* BibTeX/BibLaTeX writer: Handle `annote` field (#7266).
* ZimWiki writer: allow links and emphasis in headers (#6605,
Albert Krewinkel).
* ConTeXt writer:
+ Support blank lines in line blocks (#6564, Albert Krewinkel,
thanks to @denismaier).
+ Use span identifiers as reference anchors (#7246, Albert Krewinkel).
* HTML writer:
+ Keep attributes from code nested below `pre` tag (#7221,
Albert Krewinkel). If a code block is defined with `<pre><code
class="language-x">?</code></pre>`, where the `<pre>` element has no
attributes, then the attributes from the `<code>` element are used
instead. Any leading `language-` prefix is dropped in the code's
`class` attribute are dropped to improve syntax highlighting.
+ Ensure headings only have valid attribs in HTML4 (#5944, Albert
Krewinkel).
+ Parse `<header>` as a Div (Albert Krewinkel).
* Org writer:
+ Inline latex envs need newlines (#7252, tecosaur).
As specified in https://orgmode.org/manual/LaTeX-fragments.html, an
inline \begin{}...\end{} LaTeX block must start on a new line.
+ Use LaTeX style maths deliminators (#7196, tecosaur).
* JATS writer (Albert Krewinkel):
+ Use either styled-content or named-content for spans (#7211).
If the element has a content-type attribute, or at least one class,
then that value is used as `content-type` and the span is put inside
a `<named-content>` element. Otherwise a `<styled-content>` element
is used instead.
+ Reduce unnecessary use of `<p>` elements for wrapping (#7227).
The `<p>` element is used for wrapping in cases were the contents
would otherwise not be allowed in a certain context. Unnecessary
wrapping is avoided, especially around quotes (`<disp-quote>` elements).
+ Convert spans to `<named-content>` elements (#7211). Spans with
attributes are converted to `<named-content>` elements instead of
being wrapped with `<milestone-start/>` and `<milestone-end>`
elements. Milestone elements are not allowed in documents using the
articleauthoring tag set, so this change ensures the creation of valid
documents.
+ Add footnote number as label in backmatter (#7210). Footnotes in the
backmatter are given the footnote's number as a label. The
articleauthoring output is unaffected from this change, as footnotes
are placed inline there.
+ Escape disallows chars in identifiers. XML identifiers must start
with an underscore or letter, and can contain only a limited set
of punctuation characters. Any IDs not adhering to these rules are
rewritten by writing the offending characters as `Uxxxx`,
where `xxxx` is the character's hex code.
* Jira writer: use `{color}` when span has a color attribute
(Albert Krewinkel, tarleb/jira-wiki-markup#10).
* Docx writer:
+ Autoset table width if no column has an explicit width (Albert
Krewinkel).
+ Extract Table handling into separate module (Albert Krewinkel).
+ Support colspans and rowspans in tables (Albert Krewinkel, #6315).
+ Support multirow table headers (Albert Krewinkel).
+ Improve integration of settings from reference.docx (#1209).
This change allows users to create a reference.docx that
sets `w:proofState` for spelling or grammar to `dirty`,
so that spell/grammar checking will be triggered on the
generated docx.
+ Copy over more settings from reference.docx (#7240). From settings.xml
in the reference-doc, we now include: `zoom`, `embedSystemFonts`,
`doNotTrackMoves`, `defaultTabStop`, `drawingGridHorizontalSpacing`,
`drawingGridVerticalSpacing`, `displayHorizontalDrawingGridEvery`,
`displayVerticalDrawingGridEvery`, `characterSpacingControl`,
`savePreviewPicture`, `mathPr`, `themeFontLang`, `decimalSymbol`,
`listSeparator`, `autoHyphenation`, `compat`.
+ Set zoom to 100% by default in settings.xml.
+ Align math options more with current Word defaults (e.g. Cambria Math
font).
+ Remove `rsid`s from default settings.xml. Word will add these
when revisions are made.
* Ms writer: Handle tables with multiple paragraphs (#7288).
Previously they overflowed the table cell width. We now set line lengths
per-cell and restore them after the table has been written.
* Markdown writer:
+ Use cleaner braceless syntax for code blocks with a
single class (#7242, Jan Tojnar).
+ Add quotes properly in markdown YAML metadata fields (#7245).
This fixes a bug, which caused the writer to look at the *last*
rather than the *first* character in determining whether quotes
were needed. So we got spurious quotes in some cases and
didn't get necessary quotes in others.
+ Use `@{..}` syntax for citations when needed.
+ Use fewer unneeded escapes for `#` (see #6259).
+ Improve escaping of `@`. We need to escape literal `@` before
`{` because of the new citation syntax.
* Commonmark writer: Use backslash escapes for `<` and `|`...
instead of entities (#7208).
* Powerpoint writer: allow `monofont` to be specified in metadata
(#7187).
* LaTeX template:
+ Use non-starred names for xcolor color names (#6109).
This should make svgnames and x11names work properly.
+ Fix bad vertical spacing after bibliography (#7234, badumont).
+ List of figures before list of tables (#7235, Julien Dutant).
+ Move CSL macro definitions before header-includes so they can be
overridden (#7286).
+ Improve treatment of CSL `entry-spacing` (#7296).
Previously with the default template settings (`indent` variable
not set), we would get interparagraph spaces separating bib
entries even with `entry-spacing="0"`. On the other hand,
setting `entry-spacing="2"` gave ridiculously large spacing.
This change makes the spacing caused by `entry-spacing` a multiple
of `\parskip` by default, which gives aesthetically reasonable
output. Those who want a larger or smaller unit (e.g. because
they use `indent` which sets `\parskip` to 0) may
`\setlength{\cslentryspacingunit}{10pt}` in header-includes
to override the defaults.
+ Move title, author, date up to top of preamble (#7295).
This allows header-includes to use them, and puts them
in a position where you can see them immediately.
+ Define commands for zero width non-joiner character
(#6639, Albert Krewinkel). The zero-width non-joiner character
is used to avoid ligatures (e.g. in German).
* ConTeXt template: List of figures before list of tables (#7235,
Julien Dutant).
* reveal.js template:
+ Support `toc-title` (#7171, Florian Kohrt).
+ Use `hash: true` by default rather than `history: true` (#6968).
* HTML-based slide shows: add support for `institute` (#7289, Thomas
Hodgson).
* Text.Pandoc.Extensions: Add constructor `Ext_rebase_relative_paths` to
`Extensions` [API change].
* Text.Pandoc.XML.Light: add Eq, Ord instances for Content,
Element, Attr, CDataKind [API change].
* Text.Pandoc.MediaBag:
+ Change type to use a `Text` key instead of `[FilePath]`.
We normalize the path and use `/` separators for consistency.
+ Export `MediaItem` type [API change].
+ Change `MediaBag` type to a map from Text to MediaItem [API change].
+ `lookupMedia` now returns a `MediaItem` [API change].
+ Change `insertMedia` so it sets the `mediaPath` to a filename based on
the SHA1 hash of the contents. This will be used when contents
are extracted.
* Text.Pandoc.Class.PandocMonad:
+ Remove `fetchMediaResource` [API change]. Use `fetchItem` to get
resources in `fillMediaBag`.
+ Add informational message in `downloadOrRead` indicating what path
local resources have been loaded from.
* Text.Pandoc.Logging:
+ Remove single quotes around paths in messages.
+ Add LoadedResource constructor to LogMessage [API change].
This is for INFO-level messages telling where image data has been
loaded from. (This can vary because of the resource path.)
* Text.Pandoc.Asciify: simplify code and export `toAsciiText` [API change].
Instead of encoding a giant (and incomplete) map, we now
just use unicode-transforms to normalize the text to
a canonical decomposition, and manipulate the result.
* App: allow tabs expansion even if file-scope is used (Albert Krewinkel,
[#6709]). Tabs in plain-text inputs are now handled correctly, even if
the `--file-scope` flag is used.
* Add new internal module Text.Pandoc.Writers.GridTable (Albert Krewinkel).
* Text.Pandoc.Highlighting: Change type of `languagesByExtension`, adding
a parameter for a `SyntaxMap` [API change] (Jan Tojnar, #7241).
Languages defined using `--syntax-definition` were not recognized by
`languagesByExtension`. This patch corrects that, allowing the writers
to see all custom definitions. The LaTeX writer still uses the default
syntax map, but that's okay in that context, since
`--syntax-definition` won't create new listings styles.
* Text.Pandoc.Citeproc:
+ Ensure that CSL-related attributes are passed on to a Div with id
'refs'. Otherwise things like `entry-spacing` won't work when
such Divs are used.
+ Use metadata's `lang` for the lang parameter of citeproc, overriding
`localeLanguage`.
+ Recognize locators spelled with a capital letter (#7323).
+ Add a comma and a space in front of the suffix if it doesn't start
with space or punctuation (#7324).
+ Don't detect math elements as locators (#7321).
* Remove Text.Pandoc.BCP47 module [API change]. Use types and functions
from UnicodeCollation.Lang instead. This is a richer implementation
of BCP 47.
* Text.Pandoc.Shared:
+ Fix regression in grid tables for wide characters (#7214).
In the translation from String to Text, a char-width-sensitive
`splitAt'` was dropped. This commit reinstates it and uses it to make
`splitTextByInstances` char-width sensitive.
+ Add `getLang` (formerly in the now-removed BCP47) [API change].
* Text.Pandoc.SelfContained: use `application/octet-stream`
for unknown mime types instead of halting with an error (#7202).
* Lua filters: respect Inlines/Blocks filter functions in `pandoc.walk_*`
(Albert Krewinkel).
* Add text as build-depend for trypandoc (#7193, Roman Beránek).
* Bump upper-bounds for network-uri, time, attoparsec.
* Use citeproc 0.4.
* Use texmath 0.12.3.
* Use jira-wiki-markup 1.3.5 (Albert Krewinkel).
* Require latest skylighting (fixes a bug in XML syntax highlighting).
* Use latest xml-conduit.
* Use latest commonmark, commonmark-extensions, commonmark-pandoc.
* Use haddock-library-1.10.0 (Albert Krewinkel).
* Allow compilation with base 4.15 (Albert Krewinkel).
* MANUAL:
+ Add information about `lang` and bibliography sorting.
+ Add info about YAML escape sequences, link to spec (#7152,
Albert Krewinkel).
+ Note that `institute` variable works for HTML-based slides.
+ Update documentation on citation syntax.
+ Add citation example for locators and suffixes (Tristan Stenner)
* Updated and fixed typos in documentation (Charanjit Singh,
Anti-Distinctlyminty, Tatiana Porras, obcat).
* Add instructions for installing pandoc-types before compiling filter.
* INSTALL: add note that parallel installations should be avoided
(#6865).
* Remove `biblatex-nussbaum.md` test. It is basically the same
as `biblaetx-quotes.md`.
* Command tests: fail if a file contains no tests---and fix a
test that failed in that way!
* Mon Mar 22 2021 psimons@suse.com
- Update pandoc to version 2.13.
[#]# pandoc 2.13 (2021-03-21)
* Support `yaml_metadata_block` extension for `commonmark`, `gfm` (#6537).
This supported is a bit more limited than with pandoc's
`markdown`. The YAML block must be the first thing in the input,
and the leaf notes are parsed in isolation from the rest of
the document. So, for example, you can't use reference
links if the references are defined later in the document.
* Fix fallback to default partials when custom templates are used.
If the directory containing a template does not contain the partial,
it should be sought in the default templates, but this was not
working properly (#7164).
* Handle `nocite` better with `--biblatex` and `--natbib` (#4585).
Previously the nocite metadata field was ignored with these formats.
Now it populates a `nocite-ids` template variable and causes a
`\nocite` command to be issued.
* Text.Pandoc.Citeproc: apply `fixLinks` correctly (#7130). This is code
that incorporates a prefix like `https://doi.org/` into a following link
when appropriate.
* Text.Pandoc.Shared:
+ Remove `backslashEscapes`, `escapeStringUsing` [API change]. Replace
these inefficient association list lookups with more efficient escaping
functions in the writers that used them (for a 10-25% performance boost
in org, haddock, rtf, texinfo writers).
+ Remove `ToString`, `ToText` typeclasses [API change]. These were needed
for the transition from String to Text, but they are no longer used and
may clash with other things.
+ Simplify `compactDL`.
* Text.Pandoc.Parsing:
+ Change type of `readWithM` so that it is no longer polymorphic
[API change]. The `ToText` class has been removed, and now that we've
completed the transition to Text we no longer need this to operate
on Strings.
+ Remove `F` type synonym [API change]. Muse and Org were defining their
own `F` anyway.
* Text.Pandoc.Readers.Metadata:
+ Export `yamlMetaBlock` [API change].
+ Make `yamlBsToMeta`, `yamlBsToRefs` polymorphic on the parser state
[API change].
* Markdown reader: Fix regression with `tex_math_backslash` (#7155).
* MediaWiki reader: Allow block-level content in notes (ref) (#7145).
* Jira reader (Albert Krewinkel):
+ Fixed parsing of autolinks (i.e., of bare URLs in the text).
Previously an autolink would take up the rest of a line, as spaces
were allowed characters in these items.
+ Emoji character sequences no longer cause parsing failures. This was
due to missing backtracking when emoji parsing fails.
+ Mark divs created from panels with class "panel".
* RST reader: fix logic for ending comments (#7134). Previously comments
sometimes got extended too far.
* DocBook writer: include Header attributes as XML attributes on
section (Erik Rask). Attributes with key names that are not allowed
as XML attributes are dropped, as are attributes with invalid values
and `xml:id` (DocBook 5) and `id` (DocBook 4).
* Docx writer:
+ Make `nsid` in `abstractNum` deterministic. Previously we assigned
a random number, but we don't need random values, so now we just
assign a value based on the list marker.
+ Use integral values for `w:tblW` (#7141).
* Jira writer (Albert Krewinkel):
+ Block quotes are only rendered as `bq.` if they do not contain a
linebreak.
+ Jira writer: improve div/panel handling. Include div attributes in
panels, always render divs with class `panel` as panels, and
avoid nesting of panels.
* HTML writer: Add warnings on duplicate attribute values.
This prevents emitting invalid HTML. Ultimately it would be good to
prevent this in the types themselves, but this is better for now.
* Org writer: Prevent unintended creation of ordered list items (#7132,
Albert Krewinkel). Adjust line wrapping if default wrapping would cause
a line to be read as an ordered list item.
* JATS templates: support 'equal-contrib' attrib for authors (Albert
Krewinkel). Authors who contributed equally to a paper may be marked
with `equal-contrib`.
* reveal.js template: replace JS comment with HTML (#7154, Florian Kohrt).
* Text.Pandoc.Logging: Add `DuplicateAttribute` constructor to `LogMessage`.
[API change]
* Use `-j4` for linux release build. This speeds up the build dramatically
on arm.
* cabal.project: remove ghcoptions. Move flags to top level, so they can
be set differently on the command line.
* Require latest texmath, skylighting, citeproc, jira-wiki-markup.
(The latest skylighting fixes a bad bug with Haskell syntax highlighting.)
Narrow version bounds for texmath, skylighting, and citeproc, since
the test output depend on them.
* Use doclayout 0.3.0.2. This significantly reduces the time and memory
needed to compile pandoc.
* Use `foldl'` instead of `foldl` everywhere.
* Update bounds for random (#7156, Alexey Kuleshevich).
* Remove uses of some partial functions.
* Don't bake in a larger stack size for the executable.
* Test improvements:
+ Use `getExecutablePath` from base, avoiding the dependency on
`executable-path`.
+ Factor out `setupEnvironment` in Helpers, to avoid code duplication.
+ Fix finding of data files by setting teh `pandoc_datadir` environment
variable when we shell out to pandoc. This avoids the need to use
`--data-dir` for the tests, which caused problems finding `pandoc.lua`
when compiling without the `embed_data_files` flag (#7163).
* Benchmark improvements:
+ Build `+RTS -A8m -RTS` into default ghc-options for benchmark.
This is necessary to get accurate benchmark results; otherwise we
are largely measuring garbage collecting, some not related to the
current benchmark.
+ Allow specifying BASELINE file in 'make bench' for comparison
(otherwise the latest benchmark is chosen by default).
+ Force `readFile` in benchmarks early (Bodigrim).
* CONTRIBUTING: suggest using a `cabal.project.local` file (#7153,
Albert Krewinkel).
* Add ghcid-test to Makefile. This loads the test suite in ghcid.
* Tue Mar 09 2021 psimons@suse.com
- Update pandoc to version 2.12.
Upstream has edited the change log file since the last release in
a non-trivial way, i.e. they did more than just add a new entry
at the top. You can review the file at:
http://hackage.haskell.org/package/pandoc-2.12/src/changelog.md
* Sun Jan 24 2021 psimons@suse.com
- Update pandoc to version 2.11.4.
[#]# pandoc 2.11.4 (2021-01-22)
* Add `biblatex`, `bibtex` as output formats (closes #7040).
* Recognize more extensions as markdown by default (#7034):
`mkdn`, `mkd`, `mdwn`, `mdown`, `Rmd`.
* Implement defaults file inheritance (#6924, David Martschenko).
Allow defaults files to inherit options from other defaults files by
specifying them with the following syntax:
`defaults: [list of defaults files or single defaults file]`.
* Fix infinite HTTP requests when writing epubs from URL source (#7013).
Due to a bug in code added to avoid overwriting the cover image
if it had the form `fileX.YYY`, pandoc made an endless sequence
of HTTP requests when writing epub with input from a URL.
* Org reader:
+ Allow multiple pipe chars in todo sequences (Albert Krewinkel, #7014).
Additional pipe chars, used to separate "action" state from "no further
action" states, are ignored. E.g., for the following sequence, both
`DONE` and `FINISHED` are states with no further action required:
`#+TODO: UNFINISHED | DONE | FINISHED`.
+ Restructure output of captioned code blocks (Albert Krewinkel, #6977).
The Div wrapper of code blocks with captions now has the class
"captioned-content". The caption itself is added as a Plain block
inside a Div of class "caption". This makes it easier to write filters
which match on captioned code blocks. Existing filters will need to be
updated.
+ Mark verbatim code with class `verbatim` (Dimitri Sabadie, #6998).
* LaTeX reader:
+ Handle `filecontents` environment (#7003).
+ Put contents of unknown environments in a Div when `raw_tex` is not
enabled (#6997). (When `raw_tex` is enabled, the whole environment is
parsed as a raw block.) The class name is the name of the environment.
Previously, we just included the contents without the surrounding Div,
but having a record of the environment's boundaries and name can be
useful.
* Mediawiki reader:
+ Allow space around storng/emph delimiters (#6993).
* New module Text.Pandoc.Writers.BibTeX, exporting
writeBibTeX and writeBibLaTeX. [API change]
* LaTeX writer:
+ Revert table line height increase in 2.11.3 (#6996).
In 2.11.3 we started adding `\addlinespace`, which produced less dense
tables. This wasn't an intentional change; I misunderstood a comment in
the discussion leading up to the change. This commit restores the earlier
default table appearance. Note that if you want a less dense table, you
can use something like `\def\arraystretch{1.5}` in your header.
* EPUB writer:
+ Adjust internal links to identifiers defined in raw HTML sections
after splitting into chapters (#7000).
+ Recognize `Format "html4"`, `Format "html5"` as raw HTML.
+ Adjust internal links to images, links, and tables after splitting into
chapters. Previously we only did this for Div and Span and Header
elements (see #7000).
* Ms writer:
+ Don't justify text inside table cells.
* JATS writer:
+ Use `<element-citation>` if `element_citations`
extension is enabled (Albert Krewinkel).
+ Fix citations (Albert Krewinkel, #7018). By default
we use formatted citations.
+ Ensure that `<disp-quote>` is always wrapped in `<p>` (#7041).
* Markdown writer:
+ Cleaned up raw formats. We now react appropriately
to `gfm`, `commonmark`, and `commonmark_x` as raw formats.
* RST writer:
+ Fix bug with dropped content from inside spans with a class in
some cases (#7039).
* Docx writer:
+ Handle table header using styles (#7008). Instead of hard-coding
the border and header cell vertical alignment, we now let this
be determined by the Table style, making use of Word's
"conditional formatting" for the table's first row. For
headerless tables, we use the tblLook element to tell Word
not to apply conditional first-row formatting.
* Commonmark writer:
+ Implement start number on ordered lists (#7009). Previously they always
started at 1, but according to the spec the start number is respected.
* HTML writer:
+ Fix implicit_figure at end of footnotes (#7006).
* ConTeXt template: Remove `\setupthinrules` from default template.
The width parameter this used is not actually supported,
and the command didn't do anything.
* Text.Pandoc.Extensions:
+ Add `Ext_element_citations` constructor (Albert Krewinkel).
* Text.Pandoc.Citeproc.BibTeX: New unexported function
`writeBibtexString`.
* Text.Pandoc.Citeproc:
+ Use finer grained imports (Albert Krewinkel).
+ Factor out and export `getStyle` [API change].
+ Export `getReferences` [API change, #7106].
+ Factor out getLang.
* Text.Pandoc.Parsing: modify `gridTableWith'` for headerless tables.
If the table lacks a header, the header row should be an empty
list. Previously we got a list of empty cells, which caused
an empty header to be emitted instead of no header. In LaTeX/PDF
output that meant we got a double top line with space between.
* ImageSize: use `viewBox` for SVG if no length, width attributes (#7045).
This change allows pandoc to extract size information from more SVGs.
* Add simple default.nix.
* Use commonmark 0.1.1.3.
* Use citeproc 0.3.0.5.
* Update default CSL to use latest chicago-author-date.csl.
* CONTRIBUTING.md: add note on GNU xargs.
* MANUAL.txt:
+ Update description of `-L`/`--lua-filter`.
+ Document use of citations in note styles (#6828).
* Wed Dec 30 2020 psimons@suse.com
- Update pandoc to version 2.11.3.2.
[#]# pandoc 2.11.3.2 (2020-12-29)
* HTML reader: use renderTags' from Text.Pandoc.Shared (Albert Krewinkel).
A side effect of this change is that empty `<col>` elements are written
as self-closing tags in raw HTML blocks.
* Asciidoc writer: Add support for writing nested tables (#6972, timo-a).
Asciidoc supports one level of nesting. If deeper tables are to be
written, they are omitted and a warning is issued.
* Docx writer: fix nested tables with captions (#6983).
Previously we got unreadable content, because docx seems
to want a `<w:p>` element (even an empty one) at the end of
every table cell.
* Powerpoint writer: allow arbitrary OOXML in raw inline elements
(Albert Krewinkel). The raw text is now included verbatim in the
output. Previously is was parsed into XML elements, which prevented
the inclusion of partial XML snippets.
* LaTeX writer: support colspans and rowspans in tables (#6950,
Albert Krewinkel). Note that the multirow package is needed for
rowspans. It is included in the latex template under a variable,
so that it won't be used unless needed for a table.
* HTML writer: don't include p tags in CSL bibliography entries
(#6966). Fixes a regression in 2.11.3.
* Add `meta-description` variable to HTML templates (#6982). This
is populated by the writer by stringifying the `description`
field of metadata (Jerry Sky). The `description` meta tag will
make the generated HTML documents more complete and SEO-friendly.
* Citeproc: fix handling of empty URL variables (`DOI`, etc.).
The `linkifyVariables` function was changing these to links
which then got treated as non-empty by citeproc, leading
to wrong results (e.g. ignoring nonempty URL when empty DOI is present).
See jgm/citeproc#41.
* Use citeproc 0.3.0.3. Fixes an issue in author-only citations when
both an author and translator are present, and an issue with
citation group delimiters.
* Require texmath 0.12.1. This improves siunitx support in math,
fixes bugs with `\*mod` family operators and arrays, and avoids
italicizing symbols and operator names in docx output.
* Ensure that the perl interpreter used for filters with `.pl`
extension (wuffi).
* MANUAL: note that textarea content is never parsed as Markdown
(Albert Krewinkel).
* Sat Dec 19 2020 psimons@suse.com
- Update pandoc to version 2.11.3.1.
[#]# pandoc 2.11.3.1 (2020-12-18)
* Added some missing files to extra-source-files and data
files, so they are included in the sdist tarball. Closes #6961.
Cleaned up some extraneous data and test files, and added
a CI check to ensure that the test and data files included
in the sdist match what is in the git repository.
* Use citeproc 0.3.0.1, which avoids removing nonbreaking
space at the end of the `initialize-with` attribute. (Some
journals require nonbreaking space after initials, and this
makes that possible.)
* Fri Dec 18 2020 psimons@suse.com
- Update pandoc to version 2.11.3.
[#]# pandoc 2.11.3 (2020-12-17)
* With `--bibliography` (or `bibliography` in metadata), a
URL may now be provided, and pandoc will fetch the resource.
In addition, if a file path is provided and it is not
found relative to the working directory, the resource
path will be searched (#6940).
* Add `sourcepos` extension for `commonmark`, `gfm`, `commonmark_x`
(#4565). With the `sourcepos` extension set set, `data-pos`
attributes are added to the AST by the commonmark reader. No other
readers are affected. The `data-pos` attributes are put on elements
that accept attributes; for other elements, an enlosing Div or Span
is added to hold the attributes.
* Change extensions for `commonmark_x`: replace `auto_identifiers`
with `gfm_auto_identifiers` (#6863). `commonmark_x` never actually
supported `auto_identifiers` (it didn't do anything), because the
underlying library implements gfm-style identifiers only. Attempts
to add the `auto_identifiers` extension to `commonmark` will now
fail with an error.
* HTML reader:
+ Split module into several submodules (Albert Krewinkel). Reducing
module size should reduce memory use during compilation.
+ Support advanced table features (Albert Krewinkel):
block level content in captions, row and colspans,
body headers, row head columns, footers, attributes.
+ Disable round-trip testing for tables. Information for cell
alignment in a column is not preserved during round-trips (Albert
Krewinkel).
+ Allow finer grained options for tag omission (Albert Krewinkel).
+ Simplify list attribute handling (Albert Krewinkel).
+ Pay attention to `lang` attributes on body element (#6938).
These (as well as `lang` attributes on the html element) should update
lang in metadata.
+ Retain attribute prefixes and avoid duplicates (#6938).
Previously we stripped attribute prefixes, reading `xml:lang` as
`lang` for example. This resulted in two duplicate `lang`
attributes when `xml:lang` and `lang` were both used. This commit
causes the prefixes to be retained, and also avoids invald
duplicate attributes.
* Commonmark reader:
+ Refactor `specFor`.
+ Set input name to `""` to avoid clutter in sourcepos output.
* Org reader:
+ Parse `#+LANGUAGE` into `lang` metadata field (#6845, Albert
Krewinkel).
+ Preserve targets of spurious links (#6916, Albert
Krewinkel). Links with (internal) targets that the reader doesn't
know about are converted into emphasized text. Information on the
link target is now preserved by wrapping the text in a Span of class
`spurious-link`, with an attribute `target` set to the link's
original target. This allows to recover and fix broken or unknown
links with filters.
* DocBook reader:
+ Table text width support (#6791, Nils Carlson).
Table width in relation to text width is not natively supported
by docbook but is by the docbook `fo` stylesheets through an XML
processing instruction, `<?dbfo table-width="50%"?>`.
* LaTeX reader:
+ Improve parsing of command options (#6869, #6873).
In cases where we run into trouble parsing inlines til the
closing `]`, e.g. quotes, we return a plain string with the
option contents. Previously we mistakenly included the brackets
in this string.
+ Preserve center environment (#6852, Igor Pashev).
The contents of the `center` environment are put in a `Div`
with class `center`.
+ Don't parse `\rule` with width 0 as horizontal rule. These are
sometimes used as spacers in LaTeX.
+ Don't apply theorem default styling to a figure inside (#6925).
If we put an image in italics, then when rendering to Markdown
we no longer get an implicit figure.
* Dokuwiki reader:
+ Handle unknown interwiki links better (#6932).
DokuWiki lets the user define his own Interwiki links. Previously
pandoc reacted to these by emitting a google search link, which is
not helpful. Instead, we now just emit the full URL including the
wikilink prefix, e.g. `faquk>FAQ-mathml`. This at least gives users
the ability to modify the links using filters.
* Markdown writer:
+ Properly handle boolean values in writing YAML metadata (#6388).
+ Ensure that a new csl-block begins on a new line (#6921).
This just looks better and doesn't affect the semantics.
* RST writer:
+ Better image handling (#6948). An image alone in its paragraph
(but not a figure) is now rendered as an independent image, with an
`alt` attribute if a description is supplied. An inline image that
is not alone in its paragraph will be rendered, as before, using a
substitution. Such an image cannot have a "center", "left", or
"right" alignment, so the classes `align-center`, `align-left`, or
`align-right` are ignored. However, `align-top`, `align-middle`,
`align-bottom` will generate a corresponding `align` attribute.
* Docx writer:
+ Keep raw openxml strings verbatim (#6933, Albert Krewinkel).
+ Use Content instead of Element. This allows us to inject
raw OpenXML into the document without reparsing it into an
Element, which is necessary if you want to inject an open
tag or close tag.
+ Fix bullets/lists indentation, so that the first level is slightly
indented to the right instead of right on the margin (cholonam).
+ Support bold and italic in "complex script" (#6911).
Previously bold and italics didn't work properly in LTR
text. This commit causes the w:bCs and w:iCs attributes
to be used, in addition to w:b and w:i, for bold and
italics respectively.
* ICML writer:
+ Fix image bounding box for custom widths/heighta (Mauro Bieg, #6936).
* LaTeX writer:
+ Improve table spacing (#6842, #6860).
Remove the `\strut` that was added at the end of minipage
environments in cells. Replace `\tabularnewline` with
`\\ \addlinespace`.
+ Improve calculation of column spacing (#6883).
+ Extract table handling into separate module (Albert Krewinkel).
+ Fix bug with nested `csl-` display Spans (#6921).
+ Improve longtable output (#6883). Don't create minipages for
regular paragraphs. Put width and alignment information in the
longtable column descriptors.
* OpenDocument writer:
+ Support for table width as a percentage of text width
(#6792, Nils Carson).
+ Implement Div and Span ident support (#6755, Nils Carson).
Spans and Divs containing an ident in the Attr will become bookmarks
or sections with idents in OpenDocument format.
+ Add two extensions, `xrefs_name` and `xrefs_number` (#6774, Nils
Carlson). Links to headings, figures and tables inside the
document are substituted with cross-references that will use the
name or caption of the referenced item for `xrefs_name` or the
number for `xrefs_number`. For the `xrefs_number` to be useful
heading numbers must be enabled in the generated document and
table and figure captions must be enabled using for example the
`native_numbering` extension. In order for numbers and reference
text to be updated the generated document must be refreshed.
* JATS writer:
+ Support advanced table features (Albert Krewinkel).
+ Support author affiliations (#6687, Albert Krewinkel).
* Docbook writer:
+ Use correct id attribute consistently (Jan Tojnar).
DocBook5 should always use `xml:id` instead of `id`.
+ Handle admonition titles better (Jan Tojnar).
Docbook reader produces a `Div` with `title` class for `<title>`
element within an ?admonition? element. Markdown writer then turns
this into a fenced div with `title` class attribute. Since fenced
divs are block elements, their content is recognized as a
paragraph by the Markdown reader. This is an issue for Docbook
writer because it would produce an invalid DocBook document from
such AST ? the `<title>` element can only contain ?inline?
elements. Handle this special case separately by unwrapping
the paragraph before creating the `<title>` element.
+ Add XML namespaces to top-level elements (#6923, Jan Tojnar).
Previously, we only added `xmlns` attributes to chapter
elements, even when running with `--top-level-division=section`.
These namespaces are now added to part and section elements too,
when they are the selected top-level divisions.
We do not need to add namespaces to documents produced with
`--standalone` flag, since those will already have xmlns attribute on
the root element in the template.
* HTML writer:
+ Fix handling of nested `csl-` display spans (#6921).
Previously inner Spans used to represent CSL display attributes were
not rendered as div tags as intended.
* EPUB writer:
+ Include title page in landmarks (#6919).
Note that the toc is also included if `--toc` is specified.
+ Add frontmatter type on body element for nav.xhtml (#6918).
* EPUB templates: use preserveAspectRatio="xMidYMid" for cover image (#6895,
Shin Sang-jae). This change affects both the epub2 and the epub3
templates. It avoids distortion of the cover image by requiring that the
aspect ratio be preserved.
* LaTeX template:
+ Include `csquotes` package if `csquotes` variable set.
+ Put back `amssymb`. We need it for checkboxes in todo lists,
and maybe for other things. In this location it seems compatible
with the cases that prompted #6469 and PR #6762.
+ Disable language-specific shorthands in babel (#6817, #6887).
Babel defines "shorthands" for some languages, and these can
produce unexpected results. For example, in Spanish, `1.22`
gets rendered as `122`, and `et~al.` as `etal`.
One would think that babel's `shorthands=off` option (which
we were using) would disable these, but it doesn't. So we
remove `shorthands=off` and add some code that redefines
the shorthands macro. Eventually this will be fixed in babel,
I hope, and we can revert to something simpler.
* JATS template: allow array of persistent institute ids in `pid`
(Albert Krewinkel).
* Text.Pandoc.Parsing: minor code and efficiency improvements.
* Text.Pandoc.Extension:
+ Add `Ext_sourcepos` constructor for `Extension` [API change].
+ Add `Ext_xrefs_name` and `Ext_xrefs_number` constructors for
`Extension` (Nils Carson) [API change].
* Text.Pandoc.Citeproc:
+ Fix truncation of `[Citation]` list in `Cite` inside footnotes (#6890).
This affected author-in-text citations in footnotes. It didn't cause
problems for the printed output, but for filters that expected the
citation id and other information.
+ Allow the use of both inline and external references (#6951),
as with pandoc-citeproc. References defined in the document's
metadata take priority over references with the same id defined in
an external bibliography.
+ Use `fetchItem` to get external bibliography (#6940).
+ Ensure that BCP47 lang codes can be used. We ignore the variants
and just use the base lang code and country code when passing off
to citeproc.
+ Citeproc BibTeX parser: revert change in `getRawField`
which was made (for reasons forgotten) when transferring
this code from pandoc-citeproc. The change led to `--` in
URLs being interpreted as en-dashes, which is unwanted (#6874).
* Text.Pandoc.ImageSize:
+ Default to DPI 72 if the format specifies DPI of 0 (#6880).
This shouldn't happen, in general, but it can happen with
JPEGs that don't conform to the spec. Having a DPI of 0
will blow up size calculations (division by 0).
+ ImageSize: use JuicyPixels to determine size for png, jpeg, and
gif, instead of doing our own binary parsing (#6936). This
gives more reliable results.
* Text.Pandoc.CSS:
+ Remove `foldOrElse` (internal module) (Albert Krewinkel).
* Use skylighting 0.10.2 (#6625).
* Use citeproc 0.3. This fixes issues with references with
duplicate ids (jgm/citeproc#36).
* Use doctemplates 0.9. This fixes issues with boolean
metadata values in the Markdown writer (#6388)
and in `meta-json` (#6650). It also fixes
issues with nested for loops in templates.
* Add translations zh-Hans.yaml and zh-Hant.yaml (#6904, #6909,
Kolen Cheung, taotieren).
* Add tests: True to cabal.project.
This fixes some CI failures for cabal.
* Normalize test/tables/*.native (#6888, Kolen Cheung).
* Move executable to `app` directory to avoid problems with cabal repl.
* CONTRIBUTING: add section "How can I help?" (#6892, Albert Krewinkel).
Also adds a paragraph aimed at highlighting the importance of feature
maintenance.
* MANUAL: Document that --number-sections works in `ms` (#6935).
* Thu Dec 17 2020 Ond?ej Súkup <mimi.vx@gmail.com>
- disable %{ix86} build
* Fri Nov 20 2020 psimons@suse.com
- Update pandoc to version 2.11.2.
[#]# pandoc 2.11.2 (2020-11-19)
* Default to using ATX (`##`-style) headings for Markdown output
(#6662, Aner Lucero). Previously we used Setext (underlined) headings
by default for levels 1--2.
* Add option `--markdown-headings=atx|setext`, and deprecate
`--atx-headers` (#6662, Aner Lucero).
* Support `markdown-headings` in defaults files.
* Fix corner case in YAML metadata parsing (#6823). Previously YAML
metadata would sometimes not get recognized if a field ended with a
newline followed by spaces.
* `--self-contained`: increase coverage (#6854).
Previously we only self-contained attributes for certain tag names
(`img`, `embed`, `video`, `input`, `audio`, `source`, `track`,
`section`). Now we self-contain any occurrence of `src`,
`data-src`, `poster`, or `data-background-image`, on any tag; and
also `href` on `link` tags.
* Markdown reader:
+ Fix detection of locators following in-text citations.
Prevously, if we had `@foo [p. 33; @bar]`, the `p. 33` would be
incorrectly parsed as a prefix of `@bar` rather than a suffix of
`@foo`.
+ Improve period suppression algorithm for citations in notes
in note citation styles (#6835).
+ Don't increment `stateNoteNumber` for example list references.
This helps with #6836 (a bug in which example list references
disturb calculation of citation note number and affect when
`ibid` is triggered).
* LaTeX reader:
+ Move `getNextNumber` from Readers.LaTeX to Readers.LaTeX.Parsing.
+ Fix negative numbers in siunitx commands. A change in pandoc 2.11
broke negative numbers, e.g. `\SI{-33}{\celcius}` or `\num{-3}`.
This fixes the regression.
* DocBook reader: drop period in formalpara title
and put it in a div with class `formalpara-title`, so that
people can reformat with filters (#6562).
* Man reader: improve handling of `.IP` (#6858). We now better handle
`.IP` when it is used with non-bullet, non-numbered lists, creating a
definition list. We also skip blank lines like groff itself.
* Bibtex reader: fall back on `en-US` if locale for LANG not found.
This reproduces earlier pandoc-citeproc behavior (jgm/citeproc#26).
* JATS writer:
+ Wrap all tables (Albert Krewinkel).
All `<table>` elements are put inside `<table-wrap>` elements, as the
former are not valid as immediate child elements of `<body>`.
+ Move Table handling to separate module (Albert Krewinkel).
Adds two new unexported modules:
Text.Pandoc.Writers.JATS.Types, Text.Pandoc.Writers.JATS.Table.
* Org writer:
+ Replace org #+KEYWORDS with #+keywords (TEC).
As of ~2 years ago, lower case keywords became the standard (though
they are handled case insensitive, as always).
+ Update org supported languages and identifiers according to the
current list contained in
<https://orgmode.org/worg/org-contrib/babel/languages/index.html>
(TEC).
* Only use `filterIpynbOutput` if input format is ipynb (#6841).
Before this change content could go missing from divs with class
`output`, even when non-ipynb was being converted.
* When checking reader/writer name, check base name now that we permit
extensions on formats other than markdown.
* Text.Pandoc.PDF: Fix `changePathSeparators` for Windows (#6173).
Previously a path beginning with a drive, like `C:\foo\bar`, was
translated to `C:\/foo/bar`, which caused problems.
With this fix, the backslashes are removed.
* Text.Pandoc.Logging: Add constructor `ATXHeadingInLHS` constructor
to `LogMessage` [API change].
* Fix error that is given when people specify `doc` output (#6834,
gison93).
* LaTeX template: add a `\break` after parbox in `CSLRightInline`.
This should fix spacing problems between entries with numeric styles.
Also fix number of params on `CSLReferences`.
* reveal.js template: Put quotes around `controlsLayout`,
`controlsBackArrows`, and `display`, since these require strings.
Add `showSlideNumber`, `hashOneBasedIndex`, `pause`.
* Use citeproc 0.2. This fixes a bug with title case around parentheses.
* pandoc.cabal: remove 'static' flag.
This isn't really necessary and can be misleading (e.g. on macOS,
where a fully static build isn't possible). cabal's new option
`--enable-executable-static` does the same. On stack you can add
something like this to the options for your executable in package.yaml:
ld-options: -static -pthread
* Remove obsolete bibutils flag setting in `linux/make_artifacts.sh`.
* Manual:
+ Correct `link-citation` -> `link-citations`.
+ Add a sentence about `pagetitle` for HTML (#6843, Alex Toldaiev).
* INSTALL.md: Remove references to `pandoc-citeproc` (#6857).
* CONTRIBUTING: describe hlint and how it's used (#6840, Albert
Krewinkel).
* Sun Nov 08 2020 psimons@suse.com
- Update pandoc to version 2.11.1.1.
[#]# pandoc 2.11.1.1 (2020-11-07)
* Citeproc: improve punctuation in in-text note citations (#6813).
Previously in-text note citations inside a footnote would sometimes have
the final period stripped, even if it was needed (e.g. on the end of
'ibid').
* Use citeproc 0.1.1.1. This improves the decision about when
to use `ibid` in cases where citations are used inside
a footnote (#6813).
* Support `nocase` spans for `csljson` output.
* Require latest commonmark, commonmark-extensions.
This fixes a bug with `autolink_bare_uris` and commonmark.
* LaTeX reader: better handling of `\\` inside math in table cells (#6811).
* DokuWiki writer: translate language names for code elements
and improve whitespace (#6807).
* MediaWiki writer: use `syntaxhighlight` tag instead of deprecated
`source` for highlighted code (#6810). Also support `startFrom`
attribute and `numberLines`.
* Lint code in PRs and when committing to master (#6790,
Albert Krewinkel).
* doc/filters.md: describe technical details of filter invocations (#6815,
Albert Krewinkel).
Version: 1.16.0.2-3.2
* Sat Jan 23 2016 mimi.vx@gmail.com
- update to 1.16.0.2
- very long changelog again. For details please see changelog file or
https://hackage.haskell.org/package/pandoc-1.16.0.2/changelog
* Wed Dec 23 2015 mimi.vx@gmail.com
- create placeholder package for pdf support
* Mon Nov 16 2015 mimi.vx@gmail.com
- update to 1.15.2.1
- correct license to GPL-2.0+
- very long changelog again, for details please see changelog file or
https://hackage.haskell.org/package/pandoc-1.15.2.1/changelog
* Sun Oct 25 2015 mimi.vx@gmail.com
- update to 1.15.1.1
* `Text.Pandoc.Data`: store paths in dataFiles using posix separators.
+ add Suggests: texlive-latex-bin-bin
* Sun Oct 18 2015 mimi.vx@gmail.com
- update to 1.15.1
* `pandocVersion` is now defined in `Text.Pandoc.Shared`
and reexported from `Text.Pandoc` (Alex Vong). This allows
writers to access it. (Alex Vong) (API change)
* For `markdown_mmd`, add: `implicit_figures`, `superscripts`,
`subscripts` (#2401).
* Added `odt` as input format (MarLinn). Added new module
`Text.Pandoc.Reader.ODT` (API change). Fully implemented features:
Paragraphs, Headers, Basic styling, Unordered lists, Ordered lists,
External Links, Internal Links, Footnotes, Endnotes, Blockquotes.
Partly implemented features: Citations, Tables.
* Markdown Reader:
+ Add basic tests for each header style (Ophir Lifshitz).
+ Add implicit header ref tests for headers with spaces (Ophir Lifshitz).
+ Skip spaces in headers (Ophir Lifshitz).
+ Handle 'id' and 'class' in parsing key/value attributes (#2396).
`# Header {id="myid" class="foo bar"}`
is now equivalent to `# Header {#myid .foo .bar}`.
+ Use '=' instead of '#' for atx-style headers in markdown+lhs.
(Kristof Bastiaensen)
+ Pipe tables: allow indented columns. Previously the left-hand column
could not start with 4 or more spaces indent. This was inconvenient
for right-aligned left columns. Note that the first (header column)
must still have 3 or fewer spaces indentation, or the table will be
treated as an indented code block.
+ Fix regression: allow HTML comments containing `--`.
Technically this isn't allowed in an HTML comment, but
we've always allowed it, and so do most other implementations.
It is handy if e.g. you want to put command line arguments
in HTML comments.
* LaTeX reader:
+ Don't eat excess whitespace after macros with only optional
arguments (#2446).
+ Support longtable (#2411).
+ Implement `\Cite` (#2335).
+ Support abstract environment. The abstract populates an
`abstract` metadata field.
+ Properly handle booktabs lines. Lines aren't part of the
pandoc table model, so we just ignore them (#2307).
* HTML reader:
+ Handle type attribute on ol, e.g. `<ol type="i">` (#2313).
+ Updated for new automatic header attributes.
+ Add auto identifiers if not present on headers. This makes
TOC linking work properly.
+ Detect `font-variant` with `pickStyleAttrProps` (Ophir Lifshitz).
+ Test `<ol>` type, class, and inline list-style(-type) CSS
(Ophir Lifshitz).
+ Better handling of "section" elements (#2438). Previously
`<section>` tags were just parsed as raw HTML blocks. With
this change, section elements are parsed as Div elements with
the class "section".
* MediaWiki reader: handle unquoted table attributes (#2355).
* DocBook reader:
+ Added proper support for DocBook `xref` elements (Frerich Raabe).
Added `dbContent` field to reader state, so we can lookup
cross refs.
+ Handle `informalexample` (#2319).
* Docx Reader:
+ Create special punctuation test (Ophir Lifshitz).
+ Parse soft, no-break hyphen elements (Ophir Lifshitz).
+ Updated headers test (Ophir Lifshitz). Replaced `styles.xml`
in `headers.docx` with pandoc's current `styles.xml`, which
contains styles for Heading 1 through 6. Added Heading 4
through 7 to the test document. Note that Heading 7 is not
parsed as a Heading because there is no Heading 7 style.
* RST reader: better handling of indirect roles.
Previously the parser failed on this kind of case
.. role:: indirect(code)
.. role:: py(indirect)
:language: python
:py:`hi`
Now it correctly recognizes `:py:` as a code role.
* Org reader:
+ Add auto identifiers if not present on headers
(#2354, Juliusz Gonera).
+ Allow verse blocks to contain empty lines (#2402,
Albert Krewinkel).
* EPUB reader: stop mangling external URLs (#2284).
* RST writer:
+ Don't insert `\ ` when complex expression in matched pairs.
E.g. `` [:sup:`3`] `` is okay; you don't need `` [:sup:`3`\ ] ``.
+ Ensure that `\ ` is inserted when needed before Cite and Span
elements that begin with a "complex" element (jgm/pandoc-citeproc#157).
+ Normalize headers only in "standalone" mode (#2394).
* Haddock writer: escape `*` and `^` (G. Bataille).
* Markdown writer:
+ In TOC, add links to headers (#829).
+ Use unicode super/subscripts for digits in plain output
(when the `superscripts` and `subscripts` extensions are
not enabled).
* Docx writer:
+ Moved invalid character stripping to `formattedString`.
This avoids an inefficient generic traversal (#2356).
+ Use user data directory for `reference.docx` archive.
This allows the test suite to work without installing pandoc first.
It also brings the docx writer in line with the odt writer.
+ Tests: docx writer tests now use `../data` for data directory.
This allows tests to be run without installing first.
+ Tests: Use real jpg (not empty) for docx tests to avoid warning.
* LaTeX writer:
+ Fixed detection of 'chapters' from template.
If a documentclass isn't specified in metadata, but the
template has a hardwired bookish documentclass, act as if
`--chapters` was used. This was the default in earlier
versions, but it has been broken for a little while.
+ Correctly recognize book documentclass in metadata (#2395).
+ Set language-related variables automatically, depending
on the value of the `lang` field, which is now always
assumed to be in BCP47 format (mb21, #1614, #2437).
+ Add `\protect` to `\hyperdef` in inline context. This way we
don't get an error when this is used as a moveable argument (#2136).
+ Support all frame attributes in Beamer.
+ Percent-encode more special characters in URLs (#1640, #2377).
The special characters are '<','>','|','"','{','}','[',']','^', '`'.
* HTML writer:
+ Update KaTeX JS and CSS versions (Emily Eisenberg).
+ For dzslides, add `role="note"` for speaker notes (#1693).
+ Percent-encode more special characters in URLs (#1640, #2377).
The special characters are '<','>','|','"','{','}','[',']','^', '`'.
+ Render Div with class `section` as `<section>` in HTML5.
* EPUB writer:
+ In TOC, replace literal "<br/>" with space (#2105).
+ With `--webtex`, include image file rather than `data:` URI (#2363).
* Native writer: format Div properly, with blocks separated.
* Support bidirectional text output with XeLaTeX, ConTeXt and HTML
* Reference Docx:
+ Add missing Header 6 style (steel blue) (Ophir Lifshitz).
+ Correct `outlineLvl` for Header styles (Ophir Lifshitz).
* Templates
+ Beamer: Add `innertheme`, `outertheme` variables
(Guilhem Bonnefille, #121). Add space after colon in figure caption.
Integrate recent font and language updates from LaTeX template;
allow use of `mainfont` variable for changing the slide text
in XeTeX and LuaTeX (Andrew Dunning, #131).
+ LaTeX: Add `mainfontoptions`, `sansfontoptions`,
`monofontoptions`, `mathfontoptions`, `fontfamilyoptions`
(Andrew Dunning, #122). Support handling of bidirectional
text (mb21, #120). Improve reliability of superscripts/subscripts
under XeTeX and prevent letters and numbers from appearing on a
different baseline by removing use of the `realscripts` package
(via `xltxtra`). To restore use of OpenType characters for these
features under XeTeX or LuaTeX, add `\usepackage{realscripts}` to
`header-includes` (Andrew Dunning, #130). Remove redundant
reference to `xunicode` (Andrew Dunning, #130). Add `fontenc`,
`indent`, `subparagraph` variables (Andrew Dunning).
Allow use of `hidelinks` variable for `hyperref` package (Hugo Roy,
[#113]). Prevent package clash with `tufte-latex` and other classes that
include `hyperref` or `color` (Xavier Olive, #115).
+ ConTeXt: Support handling of bidirectional text (mb21, #120).
+ LaTeX and ConTeXt: Use more specific language variables.
Instead of directly using `lang`, we now use `babel-lang` and
`polyglossia-lang` and `context-lang`. These variables are set by
the writers to the necessary values, based on the `lang` variable
(which now always takes a value in BCP47 format). (mb21, #114, #129).
+ HTML: Support handling of bidirectional text (mb21, #120).
Move HTML5 shiv after CSS and fix URL (Andrew Dunning).
Add dir attribute in html5 (Andrew Dunning).
+ reveal.js: Add `controls`, `progress` variables (Grégoire Pineau, #127).
Add `width`, `height` variables (Anrew Dunning). Update template
from 3.1 source (Andrew Dunning). All configuration options are now
available as variables, but are only be included if set (reveal.js
uses defaults otherwise).
+ man: Added comment stating that the page is autogenerated by pandoc,
giving version. Added `adjusting` and `hyphenate` variables
(Alex Vong, #123).
* epub.css: added selectors for nested emphasis (Pablo Rodriguez).
* MediaBag: ensure that `/` is always used as path separator.
* `sample.lua`: define `CaptionedImage`, add newline at end (#2393).
* Added `--bash-completion` option. This generates a bash completion
script. To use: `eval "$(pandoc --bash-completion)"`.
* Text.Pandoc.Error: Define Typeable and Exception instances
for PandocError (#2386).
* Text.Pandoc.Parsing: `toKey`: strip off outer brackets.
This makes keys with extra space at the beginning and end
work: e.g.
[foo]: bar
[ foo ]
will now be a link to bar (it wasn't before).
* Text.Pandoc: disable `auto_identifiers` for epub.
The epub writer inserts its own auto identifiers;
this is more complex due to splitting into "chapter" files.
* Renamed Text.Pandoc.Compat.Locale -> Text.Pandoc.Compat.Time.
It now reexports Data.Time.
* Use custom Prelude to avoid compiler warnings.
+ The (non-exported) prelude is in prelude/Prelude.hs.
+ It exports Monoid and Applicative, like base 4.8 prelude,
but works with older base versions.
+ It exports (<>) for mappend.
+ It hides 'catch' on older base versions.
* Added a `stack.ymal` and stack install instructions to INSTALL.
* Clarified what is "out of scope" in README and CONTRIBUTING.md.
* Added note to CONTRIBUTING.md about ghc versions and travis.
* Clarify docs on block quotes. The space after `>` is optional (#2346).
* Removed obsolete reference to default.csl (#2372).
* List all styles in manual for `--reference-docx` (Chris Black)
* Don't capitalize header links in man page.
* Added section on repl to CONTRIBUTING.md.
* README: Added space after backslash in image example (#2329).
* Document details of citation locator terms (Nick Bart).
* Fixed some internal links in README (#2309).
* Improve CSL documentation, variables documentations,
links, and cross-references in README. (Andrew Dunning)
* Fix build failure with `--flags=-https` (Sergei Trofimovich).
* Use `newManager` instead of `withManager` in recent `http-client`.
This avoids a deprecation warning.
* Allow building with latest versions of http-types,
HUnit, criterion, syb, aeson.
* Setup.hs: rewrite so as not to use process, directory, filepath.
Using anything outside base is dangerous, since older
versions of ghc may link against two different versions.
* Tue Jul 28 2015 mimi.vx@gmail.com
- update to 1.15.0.6
- removed man.patch , pandoc.1.gz and pandoc_markdown.5.gz
* `--self-contained`: Fixed overaggressive CSS minimization (#2301, 2286).
Previously `--self-contained` wiped out all spaces in CSS,
including semantically significant spaces. This was a regression
from 1.14.x.
* Markdown reader: don't allow bare URI links or autolinks in link
label (#2300). Added test cases.
* `Text.Pandoc.Parsing`, `uri`: Improved bare autolink detection (#2299).
Previously we disallowed `-` at the end of an autolink,
and disallowed the combination `=-`. This commit liberalizes the
rules for allowing punctuation in a bare URI, and adds test cases.
One potential drawback is that you can no longer put a bare
URI in em dashes like this:
`this uri---http://example.com---is an example.`
But in this respect we now match github's treatment of bare URIs.
* HTML writer: support speaker notes in dzslides.
With this change `<div class="notes">` and also `<div class="notes"
role="note">` will be output if `-t dzslides` is used. So we can
have speaker notes in dzslides too. Thanks to maybegeek.
* Updated dzslides template.
* Improved documentation of options to print system default files (#2298).
`--print-default-data-file` and `--print-default-template`.
* DokuWiki writer: use `$..$` for Math instead of `<math>..</math>`
(Tiziano Müller). MathJax seems currently to be the only maintained
math rendering extension for DokuWiki.
* `Text.Pandoc.Shared`: Changed `hierarchicalize` so it treats references
div as top-level header (#2294). This fixes a bug with `--section-divs`,
where the final references section added by pandoc-citeproc, enclosed in
its own div, got nested in the div for the section previous to it.
* Allow vector 0.11.
* Require cmark > 0.4.
* HTML writer: Fixed email javascript obfuscation with `mailto:`
URLs (#2280). This fixes a potential security issue. Because
single quotes weren't being escaped in the link portion, a
specially crafted email address could allow javascript code injection.
* Markdown/HTML readers: Avoid parsing partial URLs like
`<www.pandoc.org/blah#foo>` as HTML tags (#2277).
* RST reader: allow inline formatting in definition list field
names (Lars-Dominik Braun).
* PDF: Make sure `--latex-engine-opt` goes before the filename
on the command line. LaTeX needs the argument to come after
the options (#1779).
* CommonMark writer: fixed tags used for super/subscript.
* ConTeXt template: activate hanging indent for definition lists
(mb21).
* Make cabal require `hsb2hs` >= 0.3.1 if `embed_data_files` specified.
This is done by adding `hookedPrograms` in `Setup.hs`, which allows us
to include `hsb2hs` in Build-Tools in cabal.
+ Admin privileges are no longer required for a per-user install
* Travis: unpack sdist for build to catch packaging bugs.
* Improved documentation on where user templates go (#2272).
* Added pandoc.1 man page to the repository. It is no longer
built as part of the cabal build process. (This proved too
fragile.) pandoc.1 can be regenerated (`make man/pandoc.1`)
when `README` is changed.
* Copying of the man page now respects `--destdir` (#2262).
* Improved error messages for filters. User is now informed if
the filter requires an interpreter that isn't found in the path,
or if the filter returns an error status.
* Ensure target directory is created when installing man page.
* Added files needed for building man page to Extra-Source-Files.
* Man page is now built and installed as part of the cabal build
process. Removed Makefile target for man page.
* Man page changes:
+ Removed `--man1`, `--man5` options (breaking change).
+ Removed `Text.Pandoc.ManPages` module (breaking API change).
+ Makefile target for `man/man1/pandoc.1`. This uses pandoc to
create the man page from README using a custom template and filters.
+ Added `man/` directory with template and filters needed to build
man page.
+ We no longer have two man pages: `pandoc.1` and `pandoc_markdown.5`.
Now there is just pandoc.1, which has all the content from README.
This change was needed because of the extensive cross-references
between parts of the README.
+ Removed old `data/pandoc.1.template` and
`data/pandoc_markdown.5.template`.
* OpenDocument writer: Do not add a carriage return after a hard
line break (Michael Chladek).
* ConTeXt writer:
+ use `\goto` for internal links.
+ Added a `%` at end for `\reference` to avoid spurious space.
* Ignore sandbox on 'make quick'
* Added new unexported module: `Text.Pandoc.ManPages`.
* `README` now acts like a data file (even though it isn't in
`data/`). So, for example, `pandoc --print-default-data-file README`
will produce the README.) This change was required for the `--man1`
and `--man5` options, since the man pages are produced from the
README, but it may be useful for other purposes as well.
* Allow `reference.docx` and `reference.odt` to be used with
`--print-default-data-file` and to shadow defaults if placed in
the user data directory. Note that as of 1.14, we no longer
include these files as data files; instead, we include their
components. This change causes pandoc to behave as if it has
these data files; they are constructed on demand when needed
using `getDefaultReferenceDocx` and `getDefaultReferenceODT`.
* Fixed regression in CSS parsing with `--self-contained` (#2224).
Pandoc 1.14.0.x used css-text to parse the CSS, but its parser
silently drops big sections of CSS. This commit replaces the
use of css-text with a small but principled CSS preprocessor,
which removes whitespace and comments and replaces `url()` with
base 64 data when possible.
* Use `https://` instead of `//` for MathJax and KaTeX CDN URLs (#1920).
This will allow math to work when pages are being viewed locally.
* `Text.Pandoc.Options`: Export `plainExtensions`.
These are the extensions used in `plain` output.
* LaTeX reader: Don't parse `_` and `^` as sub/superscript outside of
math mode; treat them as regular inline text. Normally these will
cause an error in LaTeX, but there are contexts (e.g. `alltt`
environments) where they are allowed.
* HTML reader: allow `<body>` to close `<head>`.
* DocBook reader: support `mediaobject`s and `figures` (#2184, mb21).
* RST reader: Fix reference names with special characters
(Lars-Dominik Braun).
* Textile writer: escape `+` and `-` as entities (#2225).
* DokuWiki writer: Use proper `<code>` tags for code blocks (#2213).
* Plain writer: don't use symbols for super/subscript (#2237).
Simplified code by using `plainExtensions`.
* InDesign writer: Properly escape URLs containing more than one
colon character (gohai).
* Docx writer: Make sure we use dist version of `reference.docx`
(and not the user's version) for certain settings. Taking some
settings values from a user-supplied reference.docx can lead to
corruption. This fixes a regression from the last release (#2249).
* `Text.Pandoc.Shared`: exports `getDefaultReferenceDocx` and
`getDefaultReferenceODT` (API change). These functions have been
removed from the Docx and ODT writers.
* LaTeX template (Xavier Olive):
+ Added `CJKmainfont` and `CJKoptions` variables.
+ Allow dvipsnames (e.g. `MidnightBlue`) for colors (Xavier Olive).
* Epub templates: use `author.role`, not `author.type`.
* Bump cmark version to >= 0.3.4.
* Improved Windows installer (#2205, thanks to nkalvi).
Users can now select a per-user or systemwide install, and can set
the installation path. At the end of installation, the install location
is given. The install location is also now given in the list of
installed programs in Control Panel. Cleaner WiX syntax is used for
setting the path.
* Added `download_stats` target to Makefile.
* Thu Jun 04 2015 mimi.vx@gmail.com
- update to 1.14.0.4
* Added missing commonmark template.
* Tue Jun 02 2015 mimi.vx@gmail.com
- update to 1.14.0.3
* Allow compilation with syb 0.5.*.
* Custom writer: fixed some compiler warnings for ghc < 7.10.
* Tue Jun 02 2015 mimi.vx@gmail.com
- reworked man patch
* Sun May 31 2015 mimi.vx@gmail.com
- update to 1.14.0.2
- man.patch to remove generating of man pages
* for changes please see upstream 'changelog' file
* Thu May 14 2015 mimi.vx@gmail.com
- disable old-locale support
* Sun Apr 26 2015 mimi.vx@gmail.com
- correct ghc-http-client-tls dep
* Fri Apr 24 2015 mimi.vx@gmail.com
- update to 1.13.2.1
pandoc (1.13.2)
===============
* TWiki Reader: add new new twiki reader (API chaneg, Alexander Sulfrian).
* Markdown reader:
+ Better handling of paragraph in div (#1591).
Previously text that ended a div would be parsed as Plain
unless there was a blank line before the closing div tag.
+ Don't treat a citation as a reference link label (#1763).
+ Fix autolinks with following punctuation (#1811).
The price of this is that autolinked bare URIs can no longer
contain `>` characters, but this is not a big issue.
+ Fix `Ext_lists_without_preceding_blankline` bug (#1636, Artyom).
+ Allow `startnum` to work without `fancy_lists`. Formerly
`pandoc -f markdown-fancy_lists+startnum` did not work properly.
* RST reader (all Daniel Bergey):
+ Parse quoted literal blocks (#65). RST quoted literal blocks are
the same as indented literal blocks (which pandoc already supports)
except that the quote character is preserved in each line.
+ Parse RST class directives. The class directive accepts one or more
class names, and creates a Div value with those classes. If the
directive has an indented body, the body is parsed as the children of
the Div. If not, the first block folowing the directive is made a
child of the Div. This differs from the behavior of rst2xml, which
does not create a Div element. Instead, the specified classes are
applied to each child of the directive. However, most Pandoc Block
constructors to not take an Attr argument, so we can't duplicate this
behavior.
+ Warn about skipped directives.
+ Literal role now produces Code. Code role should have "code" class.
+ Improved support for custom roles
- Added `sourceCode` to classes for `:code:` role, and anything
inheriting from it.
- Add the name of the custom role to classes if the Inline
constructor supports Attr.
- If the custom role directive does not specify a parent role,
inherit from the `:span:` role.
This differs somewhat from the `rst2xml.py` behavior. If a custom
role inherits from another custom role, Pandoc will attach both
roles' names as classes. `rst2xml.py` will only use the class of
the directly invoked role (though in the case of inheriting from a
`:code:` role with a `:language:` defined, it will also provide the
inherited language as a class).
+ Warn about ignored fields in role directives.
* LaTeX reader:
+ Parse label after caption into a span instead of
inserting an additional paragraph of bracketed text (#1747).
+ Parse math environments as inline when possible (#1821).
+ Better handling of `\noindent` and `\greektext` (#1783).
+ Handle `\texorpdfstring` more gracefully.
+ Handle `\cref` and `\sep` (Wikiwide).
+ Support `\smartcite` and `\Smartcite` from biblatex.
* HTML reader:
+ Retain display type of MathML output (#1719, Matthew Pickering).
+ Recognise `<br>` tags inside `<pre>` blocks (#1620, Matthew Pickering).
+ Make `embed` tag either block or inline (#1756).
* DocBook reader:
+ Handle `keycombo`, `keycap` (#1815).
+ Get string content in inner tags for literal elements (#1816).
+ Handle `menuchoice` elements better, with a `>` between (#1817).
+ Include `id` on section headers (#1818).
+ Document/test "type" as implemented (Brian O'Sullivan).
+ Add support for calloutlist and callout (Brian O'Sullivan).
We treat a calloutlist as a bulleted list. This works well in practice.
+ Add support for `classname` (Bryan O'Sullivan).
* Docx reader:
+ Fix window path for image lookup (Jesse Rosenthal).
Don't use os-sensitive "combine", since we always want the paths in our
zip-archive to use forward-slashes.
+ Single-item headers in ordered lists are headers (Jesse Rosenthal).
When users number their headers, Word understands that as a single item
enumerated list. We make the assumption that such a list is, in fact,
a header.
+ Rewrite rewriteLink to work with new headers (Jesse Rosenthal).
There could be new top-level headers after making lists, so we have to
rewrite links after that.
+ Use polyglot header list (Jesse Rosenthal).
We're just keeping a list of header formats that different languages
use as their default styles. At the moment, we have English, German,
Danish, and French. We can continue to add to this.
This is simpler than parsing the styles file, and perhaps less
error-prone, since there seems to be some variations, even within a
language, of how a style file will define headers.
+ Remove header class properly in other langs (Jesse Rosenthal).
When we encounter one of the polyglot header styles, we want to remove
that from the par styles after we convert to a header. To do that, we
have to keep track of the style name, and remove it appropriately.
+ Account for external link URLs with anchors. Previously, if a URL
had an anchor, the reader would incorrectly identify it as an
internal link and return only the anchor as URL. (Caleb McDaniel)
+ Fix for Issue #1692 (i18n styles) (Nikolay Yakimov).
* Org reader:
+ Added state changing blanklines (Jesse Rosenthal).
This allows us to emphasize at the beginning of a new paragraph (or, in
general, after blank lines).
+ Fixed bug with bulleted lists:
- a
- b
* c
was being parsed as a list, even though an unindented `*`
should make a heading. See
<http://orgmode.org/manual/Plain-lists.html#fn-1>.
+ Org reader: absolute, relative paths in link (#1741, Albert
Krewinkel). The org reader was too restrictive when parsing links;
some relative links and links to files given as absolute paths
were not recognized correctly.
+ Org reader: allow empty links (jgm/gitit#471, Albert Krewinkel).
This is important for use in gitit, which uses empty links
for wikilinks.
+ Respect indent when parsing Org bullet lists (#1650, Timothy
Humphries). Fixes issue with top-level bullet list parsing.
+ Fix indent issue for definition lists (Timothy Humphries,
see #1650, #1698, #1680).
+ Parse multi-inline terms correctly in definition list (#1649,
Matthew Pickering).
+ Fix rules for emphasis recognition (Albert Krewinkel).
Things like `/hello,/` or `/hi'/` were falsy recognized as emphasised
strings. This is wrong, as `,` and `'` are forbidden border chars and
may not occur on the inner border of emphasized text.
+ Drop COMMENT document trees (Albert Krewinkel).
Document trees under a header starting with the word `COMMENT` are
comment trees and should not be exported. Those trees are dropped
silently (#1678).
+ Properly handle links to `file:target` (Albert Krewinkel).
Org links like `[[file:target][title]]` were not handled correctly,
parsing the link target verbatim. The org reader is changed such that
the leading `file:` is dropped from the link target (see #756, #1812).
+ Parse LaTeX-style MathML entities (#1657, Albert Krewinkel).
Org supports special symbols which can be included using LaTeX syntax,
but are actually MathML entities. Examples for this are
`\nbsp` (non-breaking space), `\Aacute` (the letter A with accent acute)
or `\copy` (the copyright sign ©)
* EPUB reader:
+ URI handling improvements. Now we outsource most of the work to
`fetchItem'`. Also, do not include queries in file extensions (#1671).
* LaTeX writer:
+ Use `\texorpdfstring` for section captions when needed (Vaclav Zeman).
+ Handle consecutive linebreaks (#1733).
+ Protect graphics in headers (Jesse Rosenthal).
Graphics in `\section`/`\subsection` etc titles need to be `\protect`ed.
+ Put `~` before header in list item text (Jesse Rosenthal).
Because of the built-in line skip, LaTeX can't handle a section header
as the first element in a list item.
+ Avoid using reserved characters as `\lstinline` delimiters (#1595).
+ Better handling of display math in simple tables (#1754).
We convert display math to inline math in simple tables,
since LaTeX can't deal with display math in simple tables.
+ Escape spaces in code (#1694, Bjorn Buckwalter).
* MediaWiki writer:
+ Fixed links with URL = text. Previously these were rendered as bare
words, even if the URL was not an absolute URL (#1825).
* ICML writer:
+ Don't force all citations into footnotes.
* RTF writer:
+ Add blankline at end of output (#1732, Matthew Pickering).
* RST writer:
+ Ensure blank line after figure.
+ Avoid exces whitespace after last list item (#1777).
+ Wrap line blocks with spaces before continuations (#1656).
+ Fixed double-rendering of footnotes in RST tables (#1769).
* DokuWiki writer:
+ Better handling of block quotes. This change ensures that
multiple paragraph blockquotes are rendered using native `>`
rather than as HTML (#1738).
+ Fix external images (#1739). Preface relative links with ":",
absolute URIs without. (Timothy Humphries)
* HTML writer:
+ Use protocol-relative URL for mathjax.
+ Put newline btw img and caption paragraph.
+ MathML now outputted with tex annotation (#1635, Matthew Pickering).
+ Add support for KaTeX HTML math (#1626, Matthew Pickering).
This adds `KaTeX` to `HTMLMathMethod` (API change).
+ Don't double render when `email-obfuscation=none` (#1625, Matthew
Pickering).
+ Make header attributes work outside top level (#1711).
Previously they only appeared on top level header elements.
Now they work e.g. in blockquotes.
* ODT writer:
+ Correctly handle images without extensions (#1729).
+ Strip querystring in ODT write (#1682, Todd Sifleet).
* FB2 writer:
+ Add newline to output.
* EPUB writer:
+ Don't add `sourceURL` to absolute URIs (#1669).
+ Don't use unsupported `opf:title-type` for epub2.
+ Include "landmarks" section in nav document for epub3 (#1757).
+ Removed playOrder from navpoint elements in ncx file (#1760).
These aren't required, and they make manual modification of epubs
difficult.
+ Extract title even from structured title.
+ Don't include nav node in spine unless `--toc` was requested.
Previously we included it in the spine with `linear="no"`, leading
to odd results in some readers (#1593).
+ Fixed absolute URI detection (#1672).
+ Correctly resolve relative URIs (#1671).
+ Use regular page template for `nav.xhtml`, including doctype (#1759).
* Docx writer:
+ Put docx table captions above tables (#1641, Nikolay Yakimov).
+ Get the page width from the reference docx file, and use
it to scale images that are too large to fit (Grégory Bataille).
+ Partial fix for #1607 (Nikolay Yakimov). International heading styles
are inferred based on `<w:name val="heading #">` fallback, if there
are no en-US "Heading#" styles
+ Look in user data dir for archive `reference.docx`.
+ Renumber header and footer relationships to avoid collisions (Jesse
Rosenthal). We previously took the old relationship names of the
headers and footer in secptr. That led to collisions. We now make
a map of availabl names in the relationships file, and then rename
in secptr.
* ConTeXt writer:
+ Add function toLabel (Mark Szepieniec).
This function can be used to sanitize reference labels so that
they do not contain any of the illegal characters \#[]",{}%()|= .
Currently only Links have their labels sanitized, because they
are the only Elements that use passed labels.
* `Text.Pandoc.Shared`:
+ Moved import of `toChunks` outside of CPP conditional (#1590).
+ Fix `inDirectory` to reset to the original directory in case
an exception occurs (Freiric Barral).
* Templates:
+ LaTeX template: load polyglossia before bibtex (jgm/pandoc-templates#70).
Thanks to bluebirch.
+ LaTeX template: Added `\VerbatimFootnotes` if there is verbatim in notes
(#1616).
+ LaTeX template: Add shorthands=off to babel options (#1648).
+ EPUB, EPUB3 templates: Added `id="cover"` to body of cover page.
This aids styling, making it possible for example to set 0 margins
on the title page (#1758).
+ EPUB, EPUB3 templates: Handle structured metadata on titlepage.
Previously we just expected 'title', 'subtitle', 'author', 'date'.
Now we still support those, but also support the format recommended
for epub metadata in the pandoc README:
- --
title:
- type: main
text: My Book
- type: subtitle
text: An investigation of metadata
creator:
- role: author
text: John Smith
- role: editor
text: Sarah Jones
identifier:
- scheme: DOI
text: doi:10.234234.234/33
publisher: My Press
rights: (c) 2007 John Smith, CC BY-NC
...
* `Text.Pandoc.Templates.getDefaultTemplate`:
don't fail when called with "fb2" (#1660).
* `Text.Pandoc.Parsing`:
+ Fixed `inlineMath` so it handles `\text{..}` containing `$`.
For example: `$x = \text{the $n$th root of $y$}` (#1677).
+ Change `parseFromString` to fail if not all input is consumed.
(Matthew Pickering)
+ Moved `addWarning` from Markdown reader to `Parsing`, so it can be
used by more readers (API change, Daniel Bergey).
* `Text.Pandoc.Pretty`:
+ Improve performance of `realLength` (Matthew Pickering).
+ Make CR + BLANKLINE = BLANKLINE. This fixes an extra blank line we
were getting at the end of markdown fragments (as well as rst, org,
etc.) (#1705).
* `Text.Pandoc.MIME`:
+ Add mime type for WebVTT (Jason Ronallo).
+ Changed mime type for `otf` to `application/vnd.ms-opentype` (#1761).
This is needed for epub3 validation.
* `Text.Pandoc.MediaBag`:
+ Fix Windows specific path problems (#1597).
* `Text.Pandoc.Shared`:
+ Make `collapseFilePath` OS-agnostic (Matthew Pickering).
* Link the test suite using `-threaded`.
This allows the test suite to be run using `+RTS -N`.
* Added `network` dependency under `network-uri` flag in test section.
* Give better error messages when someone tries to convert from
pdf, doc, odt (#1683).
* Added `track` to list of tags treated by `--self-contained` (#1664).
pandoc (1.13.1)
===============
* Fixed `--self-contained` with Windows paths (#1558).
Previously `C:\foo.js` was being wrongly interpreted as a URI.
* HTML reader: improved handling of tags that can be block or inline.
Previously a section like this would be enclosed in a paragraph,
with RawInline for the video tags (since video is a tag that can
be either block or inline):
<video controls="controls">
<source src="../videos/test.mp4" type="video/mp4" />
<source src="../videos/test.webm" type="video/webm" />
<p>
The videos can not be played back on your system.<br/>
Try viewing on Youtube (requires Internet connection):
<a href="http://youtu.be/etE5urBps_w">Relative Velocity on
Youtube</a>.
</p>
</video>
This change will cause the video and source tags to be parsed
as RawBlock instead, giving better output.
The general change is this: when we're parsing a "plain" sequence
of inlines, we don't parse anything that COULD be a block-level tag.
* Docx reader:
+ Be sensitive to user styles. Note that "Hyperlink" is
"blacklisted," as we don't want the default underline styling to be
inherited by all links by default (Jesse Rosenthal).
+ Read single paragraph in table cell as `Plain` (Jesse Rosenthal).
This makes to docx reader's native output fit with the way the markdown
reader understands its markdown output.
* Textile writer: Extended the range of cases where native textile
tables will be used (as opposed to raw HTML): we now handle any
alignment type, but only for simple tables with no captions.
* Txt2Tags reader:
+ Header is now parsed only if standalone flag is set (Matthew Pickering).
+ The header is now parsed as meta information. The first line is the
`title`, the second is the `author` and third line is the `date`
(Matthew Pickering).
+ Corrected formatting of `%%mtime` macro (Matthew Pickering).
+ Fixed crash when reading from stdin.
* EPUB writer: Don't use page-progression-direction in EPUB2, which
doesn't support it. Also, if page-progression-direction not specified
in metadata, don't include the attribute even in EPUB3; not including it
is the same as including it with the value "default", as we did before.
(#1550)
* Org writer: Accept example lines with indentation at the beginning
(Calvin Beck).
* DokuWiki writer:
+ Refactor to use Reader monad (Matthew Pickering).
+ Avoid using raw HTML in table cells; instead, use `\\`
instead of newlines (Jesse Rosenthal).
+ Properly handle HTML table cell alignments, and use spacing
to make the tables look prettier (#1566).
* Docx writer:
+ Bibliography entries get `Bibliography` style (#1559).
+ Implement change tracking (Jesse Rosenthal).
* LaTeX writer:
+ Fixed a bug that caused a table caption to repeat across all pages
(Jose Luis Duran).
+ Improved vertical spacing in tables and made it customizable using
standard lengths set by booktab. See
<https://groups.google.com/forum/#!msg/pandoc-discuss/qMu6_5lYy0o/ZAU7lzAIKw0J>
(Jose Luis Duran).
+ Added `\strut` to fix spacing in multiline tables (Jose Luis Duran).
+ Use `\tabularnewline` instead of `\\` in table cells (Jose Luis Duran).
+ Made horizontal rules more flexible (Jose Luis Duran).
* Text.Pandoc.MIME:
+ Added `MimeType` (type synonym for `String`) and `getMimeTypeDef`.
Code cleanups (Artyom Kazak).
* Templates:
+ LaTeX template: disable microtype protrusion for typewriter font (#1549,
thanks lemzwerg).
* Improved OSX build procedure.
* Added `network-uri` flag, to deal with split of `network-uri` from
`network`.
* Fix build dependencies for the `trypandoc` flag, so that they are
ignored if `trypandoc` flag is set to False (Gabor Pali).
* Updated README to remove outdated claim that `--self-contained`
looks in the user data directory for missing files.
pandoc (1.13.0.1)
=================
* Docx writer:
+ Fixed regression which bungled list numbering (#1544), causing
all lists to appear as basic ordered lists.
+ Include row width in table rows (Christoffer Ackelman, Viktor Kronvall).
Added a property to all table rows where the sum of column widths
is specified in pct (fraction of 5000). This helps persuade Word
to lay out the table with the widths we specify.
* Fixed a bug in Windows 8 which caused pandoc not to find the
`pandoc-citeproc` filter (#1542).
* Docx reader: miscellaneous under-the-hood improvements (Jesse Rosenthal).
Most significantly, the reader now uses Builder, leading to some
performance improvements.
* HTML reader: Parse appropriately styled span as SmallCaps.
* Markdown writer: don't escape `$`, `^`, `~` when `tex_math_dollars`,
`superscript`, and `subscript` extensions, respectively, are
deactivated (#1127).
* Added `trypandoc` flag to build CGI executable used in the online
demo.
* Makefile: Added 'quick', 'osxpkg' targets.
* Updated README in templates to indicate templates license.
The templates are dual-licensed, BSD3 and GPL2+.
pandoc (1.13)
=============
* Added `docx` as an input format (Jesse Rosenthal). The docx
reader includes conversion of native Word equations to pandoc
LaTeX `Math` elements. Metadata is taken from paragraphs at the
beginning of the document with styles `Author`, `Title`, `Subtitle`,
`Date`, and `Abstract`.
* Added `epub` as an input format (Matthew Pickering). The epub
reader includes conversion of MathML to pandoc LaTeX `Math`
elements.
* Added `t2t` (Txt2Tags) as an input format (Matthew Pickering).
Txt2tags is a lightweight markup format described at
<http://txt2tags.org/>.
* Added `dokuwiki` as an output format (Clare Macrae).
* Added `haddock` as an output format.
* Added `--extract-media` option to extract media contained in a zip
container (docx or epub) while adjusting image paths to point to the
extracted images.
* Added a new markdown extension, `compact_definition_lists`, that
restores the syntax for definition lists of pandoc 1.12.x, allowing
tight definition lists with no blank space between items, and
disallowing lazy wrapping. (See below under behavior changes.)
* Added an extension `epub_html_exts` for parsing HTML in EPUBs.
* Added extensions `native_spans` and `native_divs` to activate
parsing of material in HTML span or div tags as Pandoc Span
inlines or Div blocks.
* `--trace` now works with the Markdown, HTML, Haddock, EPUB,
Textile, and MediaWiki readers. This is an option intended
for debugging parsing problems; ordinary users should not need
to use it.
[behavior changes]
* Changed behavior of the `markdown_attribute` extension, to bring
it in line with PHP markdown extra and multimarkdown. Setting
`markdown="1"` on an outer tag affects all contained tags,
recursively, until it is reversed with `markdown="0"` (#1378).
* Revised markdown definition list syntax (#1429). Both the reader
and writer are affected. This change brings pandoc's definition list
syntax into alignment with that used in PHP markdown extra and
multimarkdown (with the exception that pandoc is more flexible about
the definition markers, allowing tildes as well as colons). Lazily
wrapped definitions are now allowed. Blank space is required
between list items. The space before a definition is used to determine
whether it is a paragraph or a "plain" element. **WARNING: This change
may break existing documents!** Either check your documents for
definition lists without blank space between items, or use
`markdown+compact_definition_lists` for the old behavior.
* `.numberLines` now works in fenced code blocks even if no language
is given (#1287, jgm/highlighting-kate#40).
* Improvements to `--filter`:
+ Don't search PATH for a filter with an explicit path.
This fixed a bug wherein `--filter ./caps.py` would run `caps.py` from
the system path, even if there was a `caps.py` in the working directory.
+ Respect shebang if filter is executable (#1389).
+ Don't print misleading error message.
Previously pandoc would say that a filter was not found,
even in a case where the filter had a syntax error.
* HTML reader:
+ Parse `div` and `span` elements even without `--parse-raw`,
provided `native_divs` and `native_spans` extensions are set.
Motivation: these now generate native pandoc Div and Span
elements, not raw HTML.
+ Parse EPUB-specific elements if the `epub_html_exts`
extension is enabled. These include `switch`, `footnote`,
`rearnote`, `noteref`.
* Org reader:
+ Support for inline LaTeX. Inline LaTeX is now accepted and parsed by the
org-mode reader. Both math symbols (like `\tau`) and LaTeX commands (like
`\cite{Coffee}`), can be used without any further escaping (Albert
Krewinkel).
* Textile reader and writer:
+ The `raw_tex` extension is no longer set by default. You can
enable it with `textile+raw_tex`.
* DocBook reader:
+ Support `equation`, `informalequation`, `inlineequation` elements with
`mml:math` content. This is converted into LaTeX and put into a Pandoc
Math inline.
* Revised `plain` output, largely following the style of Project
Gutenberg:
+ Emphasis is rendered with `_underscores_`, strong emphasis
with ALL CAPS.
+ Headings are rendered differently, with space to set them off,
not with setext style underlines. Level 1 headers are ALL CAPS.
+ Math is rendered using unicode when possible, but without the
distracting emphasis markers around variables.
+ Footnotes use a regular `[n]` style.
* Markdown writer:
+ Horizontal rules are now a line across the whole page.
+ Prettier pipe tables. Columns are now aligned (#1323).
+ Respect the `raw_html` extension. `pandoc -t markdown-raw_html`
no longer emits any raw HTML, including span and div tags
generated by Span and Div elements.
+ Use span with style for `SmallCaps` (#1360).
* HTML writer:
+ Autolinks now have class `uri`, and email autolinks have class
`email`, so they can be styled.
* Docx writer:
+ Document formatting is carried over from `reference.docx`.
This includes margins, page size, page orientation, header,
and footer, including images in headers and footers.
+ Include abstract (if present) with `Abstract` style (#1451).
+ Include subtitle (if present) with `Subtitle` style, rather
than tacking it on to the title (#1451).
* Org writer:
+ Write empty span elements with an id attribute as org anchors.
For example `Span ("uid",[],[]) []` becomes `<<uid>>`.
* LaTeX writer:
+ Put table captions above tables, to match the conventional
standard. (Previously they appeared below tables.)
+ Use `\(..\)` instead of `$..$` for inline math (#1464).
+ Use `\nolinkurl` in email autolinks. This allows them to be styled
using `\urlstyle{tt}`. Thanks to Ulrike Fischer for the solution.
+ Use `\textquotesingle` for `'` in inline code. Otherwise we get
curly quotes in the PDF output (#1364).
+ Use `\footnote<.>{..}` for notes in beamer, so that footnotes
do not appear before the overlays in which their markers appear
(#1525).
+ Don't produce a `\label{..}` for a Div or Span element. Do produce
a `\hyperdef{..}` (#1519).
* EPUB writer:
+ If the metadata includes `page-progression-direction` (which can be
`ltr` or `rtl`, the `page-progression-direction` attribute will
be set in the EPUB spine (#1455).
* Custom lua writers:
+ Custom writers now work with `--template`.
+ Removed HTML header scaffolding from `sample.lua`.
+ Made citation information available in lua writers.
* `--normalize` and `Text.Pandoc.Shared.normalize` now consolidate
adjacent `RawBlock`s when possible.
[API changes]
* Added `Text.Pandoc.Readers.Docx`, exporting `readDocx` (Jesse Rosenthal).
* Added `Text.Pandoc.Readers.EPUB`, exporting `readEPUB` (Matthew
Pickering).
* Added `Text.Pandoc.Readers.Txt2Tags`, exporting `readTxt2Tags` (Matthew
Pickering).
* Added `Text.Pandoc.Writers.DokuWiki`, exporting `writeDokuWiki`
(Clare Macrae).
* Added `Text.Pandoc.Writers.Haddock`, exporting `writeHaddock`.
* Added `Text.Pandoc.MediaBag`, exporting `MediaBag`, `lookupMedia`,
`insertMedia`, `mediaDirectory`, `extractMediaBag`. The docx and epub
readers return a pair of a `Pandoc` document and a `MediaBag` with
the media resources they contain. This can be extracted using
`--extract-media`. Writers that incorporate media (PDF, Docx,
ODT, EPUB, RTF, or HTML formats with `--self-contained`) will look
for resources in the `MediaBag` generated by the reader, in addition to
the file system or web.
* `Text.Pandoc.Readers.TexMath`: Removed deprecated `readTeXMath`.
Renamed `readTeXMath'` to `texMathToInlines`.
* `Text.Pandoc`: Added `Reader` data type (Matthew Pickering).
`readers` now associates names of readers with `Reader`
structures. This allows inclusion of readers, like the docx
reader, that take binary rather than textual input.
* `Text.Pandoc.Shared`:
+ Added `capitalize` (Artyom Kazak), and replaced uses of
`map toUpper` (which give bad results for many languages).
+ Added `collapseFilePath`, which removes intermediate `.` and
`..` from a path (Matthew Pickering).
+ Added `fetchItem'`, which works like `fetchItem` but searches
a `MediaBag` before looking on the net or file system.
+ Added `withTempDir`.
+ Added `removeFormatting`.
+ Added `extractSpaces` (from HTML reader) and generalized its type
so that it can be used by the docx reader (Matthew Pickering).
+ Added `ordNub`.
+ Added `normalizeInlines`, `normalizeBlocks`.
+ `normalize` is now `Pandoc -> Pandoc` instead of
`Data a :: a -> a`. Some users may need to change their uses of
`normalize` to the newly exported `normalizeInlines` or
`normalizeBlocks`.
* `Text.Pandoc.Options`:
+ Added `writerMediaBag` to `WriterOptions`.
+ Removed deprecated and no longer used `readerStrict` in
`ReaderOptions`. This is handled by `readerExtensions` now.
+ Added `Ext_compact_definition_lists`.
+ Added `Ext_epub_html_exts`.
+ Added `Ext_native_divs` and `Ext_native_spans`.
This allows users to turn off the default pandoc behavior of
parsing contents of div and span tags in markdown and HTML
as native pandoc Div blocks and Span inlines.
* `Text.Pandoc.Parsing`:
+ Generalized `readWith` to `readWithM` (Matthew Pickering).
+ Export `runParserT` and `Stream` (Matthew Pickering).
+ Added `HasQuoteContext` type class (Matthew Pickering).
+ Generalized types of `mathInline`, `smartPunctuation`, `quoted`,
`singleQuoted`, `doubleQuoted`, `failIfInQuoteContext`,
`applyMacros` (Matthew Pickering).
+ Added custom `token` (Matthew Pickering).
+ Added `stateInHtmlBlock` to `ParserState`. This is used to keep
track of the ending tag we're waiting for when we're parsing inside
HTML block tags.
+ Added `stateMarkdownAttribute` to `ParserState`. This is used
to keep track of whether the markdown attribute has been set in
an enclosing tag.
+ Generalized type of `registerHeader`, using new type classes
`HasReaderOptions`, `HasIdentifierList`, `HasHeaderMap` (Matthew
Pickering). These allow certain common functions to be reused
even in parsers that use custom state (instead of `ParserState`),
such as the MediaWiki reader.
+ Moved `inlineMath`, `displayMath` from Markdown reader to Parsing,
and generalized their types (Matthew Pickering).
* `Text.Pandoc.Pretty`:
+ Added `nestle`.
+ Added `blanklines`, which guarantees a certain number of blank lines
(and no more).
[bug fixes]
* Markdown reader:
+ Fixed parsing of indented code in list items. Indented code
at the beginning of a list item must be indented eight spaces
from the margin (or edge of the container), or four spaces
from the list marker, whichever is greater.
+ Fixed small bug in HTML parsing with `markdown_attribute`, which
caused incorrect tag nesting for input like
`<aside markdown="1">*hi*</aside>`.
+ Fixed regression with intraword underscores (#1121).
+ Improved parsing of inline links containing quote characters (#1534).
+ Slight rewrite of `enclosure`/`emphOrStrong` code.
+ Revamped raw HTML block parsing in markdown (#1330).
We no longer include trailing spaces and newlines in the
raw blocks. We look for closing tags for elements (but without
backtracking). Each block-level tag is its own `RawBlock`;
we no longer try to consolidate them (though `--normalize` will do so).
+ Combine consecutive latex environments. This helps when you have
two minipages which can't have blank lines between them (#690, #1196).
+ Support smallcaps through span.
`<span style="font-variant:small-caps;">foo</span>` will be
parsed as a `SmallCaps` inline, and will work in all output
formats that support small caps (#1360).
+ Prevent spurious line breaks after list items (#1137). When the
`hard_line_breaks` option was specified, pandoc would formerly
produce a spurious line break after a tight list item.
+ Fixed table parsing bug (#1333).
+ Handle `c++` and `objective-c` as language identifiers in
github-style fenced blocks (#1318).
+ Inline math must have nonspace before final `$` (#1313).
* LaTeX reader:
+ Handle comments at the end of tables. This resolves the issue
illustrated in <http://stackoverflow.com/questions/24009489>.
+ Correctly handle table rows with too few cells. LaTeX seems to
treat them as if they have empty cells at the end (#241).
+ Handle leading/trailing spaces in `\emph` better.
`\emph{ hi }` gets parsed as `[Space, Emph [Str "hi"], Space]`
so that we don't get things like `* hi *` in markdown output.
Also applies to `\textbf` and some other constructions (#1146).
+ Don't assume preamble doesn't contain environments (#1338).
+ Allow (and discard) optional argument for `\caption` (James Aspnes).
* HTML reader:
+ Fixed major parsing problem with HTML tables. Table cells were
being combined into one cell (#1341).
+ Fixed performance issue with malformed HTML tables.
We let a `</table>` tag close an open `<tr>` or `<td>` (#1167).
+ Allow space between `<col>` and `</col>`.
+ Added `audio` and `source` in `eitherBlockOrInline`.
+ Moved `video`, `svg`, `progress`, `script`, `noscript`, `svg` from
`blockTags` to `eitherBlockOrInline`.
+ `map` and `object` were mistakenly in both lists; they have been removed
from `blockTags`.
+ Ignore `DOCTYPE` and `xml` declarations.
* MediaWiki reader:
+ Don't parse backslash escapes inside `<source>` (#1445).
+ Tightened up template parsing.
The opening `{{` must be followed by an alphanumeric or `:`.
This prevents the exponential slowdown in #1033.
+ Support "Bild" for images.
* DocBook reader:
+ Better handle elements inside code environments. Pandoc's document
model does not allow structure inside code blocks, but at least this way
we preserve the text (#1449).
+ Support `<?asciidoc-br?>` (#1236).
* Textile reader:
+ Fixed list parsing. Lists can now start without an intervening
blank line (#1513).
+ HTML block-level tags that do not start a line are parsed as
inline HTML and do not interrupt paragraphs (as in RedCloth).
* Org reader:
+ Make tildes create inline code (#1345). Also relabeled `code` and
`verbatim` parsers to accord with the org-mode manual.
+ Respect `:exports` header argument in code blocks (Craig Bosma).
+ Fixed tight lists with sublists (#1437).
* EPUB writer:
+ Avoid excess whitespace in `nav.xhtml`. This should improve
TOC view in iBooks (#1392).
+ Fixed regression on cover image.
In 1.12.4 and 1.12.4.2, the cover image would not appear properly,
because the metadata id was not correct. Now we derive the id from the
actual cover image filename, which we preserve rather than using
"cover-image."
+ Keep newlines between block elements. This allows
easier diff-ability (#1424).
+ Use `stringify` instead of custom `plainify`.
+ Use `renderTags'` for all tag rendering. This properly handles tags
that should be self-closing. Previously `<hr/>` would appear in EPUB
output as `<hr></hr>` (#1420).
+ Better handle HTML media tags.
+ Handle multiple dates with OPF `event` attributes. Note: in EPUB3 we
can have only one dc:date, so only the first one is used.
* LaTeX writer:
+ Correctly handle figures in notes. Notes can't contain figures in
LaTeX, so we fake it to avoid an error (#1053).
+ Fixed strikeout + highlighted code (#1294).
Previously strikeout highlighted code caused an error.
* ConTeXt writer:
+ Improved detection of autolinks with URLs containing escapes.
* RTF writer:
+ Improved image embedding: `fetchItem'` is now used to get the
images, and calculated image sizes are indicated in the RTF.
+ Avoid extra paragraph tags in metadata (#1421).
* HTML writer:
+ Deactivate "incremental" inside slide speaker notes (#1394).
+ Don't include empty items in the table of contents for
slide shows. (These would result from creating a slide
using a horizontal rule.)
* MediaWiki writer:
+ Minor renaming of `st` prefixed names.
* AsciiDoc writer:
+ Double up emphasis and strong emphasis markers in intraword
contexts, as required by asciidoc (#1441).
* Markdown writer:
+ Avoid wrapping that might start a list, blockquote, or header (#1013).
+ Use Span instead of (hackish) `SmallCaps` in `plainify`.
+ Don't use braced attributes for fenced code (#1416).
If `Ext_fenced_code_attributes` is not set, the first class
attribute will be printed after the opening fence as a bare word.
+ Separate adjacent lists of the same kind with an HTML comment (#1458).
* PDF writer:
+ Fixed treatment of data uris for images (#1062).
* Docx writer:
+ Use Compact style for empty table cells (#1353).
Otherwise we get overly tall lines when there are empty
table cells and the other cells are compact.
+ Create overrides per-image for `media/` in reference docx.
This should be somewhat more robust and cover more types of images.
+ Improved `entryFromArchive` to avoid an unneeded parse.
+ Section numbering carries over from reference.docx (#1305).
+ Simplified `abstractNumId` numbering. Instead of sequential numbering,
we assign numbers based on the list marker styles.
* `Text.Pandoc.Options`:
+ Removed `Ext_fenced_code_attributes` from `markdown_github`
extensions.
* `Text.Pandoc.ImageSize`:
+ Use default instead of failing if image size not found
in exif header (#1358).
+ ignore unknown exif header tag rather than crashing.
Some images seem to have tag type of 256, which was causing
a runtime error.
* `Text.Pandoc.Shared`:
+ `fetchItem`: unescape URI encoding before reading local file (#1427).
+ `fetchItem`: strip a fragment like `?#iefix` from the extension before
doing mime lookup, to improve mime type guessing.
+ Improved logic of `fetchItem`: absolute URIs are fetched from the net;
other things are treated as relative URIs if `sourceURL` is `Just _`,
otherwise as file paths on the local file system.
+ `fetchItem` now properly handles links without a protocol (#1477).
+ `fetchItem` now escapes characters not allowed in URIs before trying
to parse the URIs.
+ Fixed runtime error with `compactify'DL` on certain lists (#1452).
* `pandoc.hs`: Don't strip path off of `writerSourceURL`: the path is
needed to resolve relative URLs when we fetch resources (#750).
* `Text.Pandoc.Parsing`
+ Simplified `dash` and `ellipsis` (#1419).
+ Removed `(>>~)` in favor of the equivalent `(<*)` (Matthew Pickering).
+ Generalized functions to use `ParsecT` (Matthew Pickering).
+ Added `isbn` and `pmid` to list of recognized schemes (Matthew
Pickering).
[template changes]
* Added haddock template.
* EPUB3: Added `type` attribute to `link` tags. They are supposed to
be "advisory" in HTML5, but kindlegen seems to require them.
* EPUB3: Put title page in section with `epub:type="titlepage"`.
* LaTeX: Made `\subtitle` work properly (#1327).
* LaTeX/Beamer: remove conditional around date (#1321).
* LaTeX: Added `lot` and `lof` variables, which can be set to
get `\listoftables` and `\listoffigures` (#1407). Note that
these variables can be set at the command line with `-Vlot -Vlof`
or in YAML metadata.
[under the hood improvements]
* Rewrote normalize for efficiency (#1385).
* Rewrote Haddock reader to use `haddock-library` (#1346).
+ This brings pandoc's rendering of haddock markup in line
with the new haddock.
+ Fixed line breaks in `@` code blocks.
+ alex and happy are no longer build-depends.
* Added `Text.Pandoc.Compat.Directory` to allow building against
different versions of the `directory` library.
+ Added `Text.Pandoc.Compat.Except` to allow building against
different verions of `mtl`.
* Code cleanup in some writers, using Reader monad to avoid
passing options parameter around (Matej Kollar).
* Improved readability in `pandoc.hs`.
* Miscellaneous code cleanups (Artyom Kazak).
* Avoid `import Prelude hiding (catch)` (#1309, thanks to Michael
Thompson).
* Changed `http-conduit` flag to `https`. Depend on `http-client`
and `http-client-tls` instead of `http-conduit`. (Note: pandoc still
depends on `conduit` via `yaml`.)
* Require `highlighting-kate >= 0.5.8.5` (#1271, #1317, Debian #753299).
This change to highlighting-kate means that PHP fragments no longer need
to start with `<?php`. It also fixes a serious bug causing failures with
ocaml and fsharp.
* Require latest `texmath`. This fixes `\tilde{E}` and allows
`\left` to be used with `]`, `)` etc. (#1319), among many other
improvements.
* Require latest `zip-archive`. This has fixes for unicode path names.
* Added tests for plain writer.
* `Text.Pandoc.Templates`:
+ Fail informatively on template syntax errors.
With the move from parsec to attoparsec, we lost good error
reporting. In fact, since we weren't testing for end of input,
malformed templates would fail silently. Here we revert back to
Parsec for better error messages.
+ Use `ordNub` (#1022).
* Benchmarks:
+ Made benchmarks compile again (Artyom Kazak).
+ Fixed so that the failure of one benchmark does not prevent others
from running (Artyom Kazak).
+ Use `nfIO` instead of the `getLength` trick to force full evaluation.
+ Changed benchmark to use only the test suite, so that benchmarks
run more quickly.
* Windows build script:
+ Use one install command for pandoc, pandoc-citeproc.
+ Force install of pandoc-citeproc.
* `make_osx_package`: Call zip file `pandoc-VERSION-osx.zip`.
The zip should not be named `SOMETHING.pkg.zip`, or OSX finder
will extract it into a folder named `SOMETHING.pkg`, which it
will interpret as a defective package (#1308).
* `README`:
+ Made headers for all extensions so they have IDs and can be
linked to (Beni Cherniavsky-Paskin).
+ Fixed typos (Phillip Alday).
+ Fixed documentation of attributes (#1315).
+ Clarified documentation on small caps (#1360).
+ Better documentation for `fenced_code_attributes` extension
(Caleb McDaniel).
+ Documented fact that you can put YAML metadata in a separate file
(#1412).
pandoc (1.12.4.2)
=================
* Shared: `addMetaValue` now behaves slightly differently:
if both the new and old values are lists, it concatenates their
contents to form a new list.
* LaTeX reader:
+ Set `bibliography` in metadata from `\bibliography` or
`\addbibresource` command.
+ Don't error on `%foo` with no trailing newline.
* Org reader:
+ Support code block headers (`#+BEGIN_SRC ...`) (Albert Krewinkel).
+ Fix parsing of blank lines within blocks (Albert Krewinkel).
+ Support pandoc citation extension (Albert Krewinkel). This can
be turned off by specifying `org-citations` as the input format.
* Markdown reader:
+ `citeKey` moved to `Text.Pandoc.Parsing` so it can be used by
other readers (Albert Krewinkel).
* `Text.Pandoc.Parsing`:
+ Added `citeKey` (see above).
+ Added `HasLastStrPosition` type class and `updateLastStrPos`
and `notAfterString` functions.
* Updated copyright notices (Albert Krewinkel).
* Added default.icml to data files so it installs with the package.
pandoc (1.12.4)
===============
* Made it possible to run filters that aren't executable (#1096).
Pandoc first tries to find the executable (searching the path
if path isn't given). If it fails, but the file exists and has
a `.py`, `.pl`, `.rb`, `.hs`, or `.php` extension, pandoc runs the filter
using the appropriate interpreter. This should make it easier to
use filters on Windows, and make it more convenient for everyone.
* Added Emacs org-mode reader (Albert Krewinkel).
* Added InDesign ICML Writer (mb21).
* MediaWiki reader:
+ Accept image links in more languages (Jaime Marqui?nez Ferra?ndiz).
+ Fixed bug in certain nested lists (#1213). If a level 2 list was
followed by a level 1 list, the first item of the level 1 list
would be lost.
+ Handle table rows containing just an HTML comment (#1230).
* LaTeX reader:
+ Give better location information on errors, pointing to line
numbers within included files (#1274).
+ LaTeX reader: Better handling of `table` environment (#1204).
Positioning options no longer rendered verbatim.
+ Better handling of figure and table with caption (#1204).
+ Handle `@{}` and `p{length}` in tabular. The length is not actually
recorded, but at least we get a table (#1180).
+ Properly handle `\nocite`. It now adds a `nocite` metadata
field. Citations there will appear in the bibliography but not
in the text (unless you explicitly put a `$nocite$` variable
in your template).
* Markdown reader:
+ Ensure that whole numbers in YAML metadata are rendered without
decimal points. (This became necessary with changes to aeson
and yaml libraries. aeson >= 0.7 and yaml >= 0.8.8.2 are now required.)
+ Fixed regression on line breaks in strict mode (#1203).
+ Small efficiency improvements.
+ Improved parsing of nested `div`s. Formerly a closing `div` tag
would be missed if it came right after other block-level tags.
+ Avoid backtracking when closing `</div>` not found.
+ Fixed bug in reference link parsing in `markdown_mmd`.
+ Fixed a bug in list parsing (#1154). When reading a raw list
item, we now strip off up to 4 spaces.
+ Fixed parsing of empty reference link definitions (#1186).
+ Made one-column pipe tables work (#1218).
* Textile reader:
+ Better support for attributes. Instead of being ignored, attributes
are now parsed and included in Span inlines. The output will be a bit
different from stock textile: e.g. for `*(foo)hi*`, we'll get
`<em><span class="foo">hi</span></em>` instead of
`<em class="foo">hi</em>`. But at least the data is not lost.
+ Improved treatment of HTML spans (%) (#1115).
+ Improved link parsing. In particular we now pick up on attributes.
Since pandoc links can't have attributes, we enclose the whole link in
a span if there are attributes (#1008).
+ Implemented correct parsing rules for inline markup (#1175, Matthew
Pickering).
+ Use Builder (Matthew Pickering).
+ Fixed list parsing bug (#1500).
+ Don't allow inline formatting to extend over newlines.
This matches the behavior of RedCarpet, avoids some ugly bugs,
and improves performance.
* DocBook reader:
+ Better treatment of `formalpara`. We now emit the title (if present)
as a separate paragraph with boldface text (#1215).
+ Set metadata `author` not `authors`.
+ Added recognition of `authorgroup` and `releaseinfo` elements (#1214,
Matthew Pickering).
+ Converted current meta information parsing in DocBook to a more
extensible version which is aware of the more recent meta
representation (Matthew Pickering).
* HTML reader:
+ Require tagsoup 0.13.1, to fix a bug with parsing of script tags
(#1248).
+ Treat processing instructions & declarations as block. Previously
these were treated as inline, and included in paragraph tags in HTML
or DocBook output, which is generally not what is wanted (#1233).
+ Updated `closes` with rules from HTML5 spec.
+ Use Builder (Matthew Pickering, #1162).
* RST reader:
+ Remove duplicate `http` in PEP links (Albert Krewinkel).
+ Make rst figures true figures (#1168, CasperVector)
+ Enhanced Pandoc's support for rST roles (Merijn Verstaaten).
rST parser now supports: all built-in rST roles, new role definition,
role inheritance, though with some limitations.
+ Use `author` rather than `authors` in metadata.
+ Better handling of directives. We now correctly handle field
lists that are indented more than three spaces. We treat an
`aafig` directive as a code block with attributes, so it can be
processed in a filter (#1212).
* LaTeX writer:
+ Mark span contents with label if span has an ID (Albert Krewinkel).
+ Made `--toc-depth` work well with books in latex/pdf output (#1210).
+ Handle line breaks in simple table cells (#1217).
+ Workaround for level 4-5 headers in quotes. These previously produced
invalid LaTeX: `\paragraph` or `\subparagraph` in a `quote` environment.
This adds an `mbox{}` in these contexts to work around the problem.
See <http://tex.stackexchange.com/a/169833/22451> (#1221).
+ Use `\/` to avoid en-dash ligature instead of `-{}-` (Vaclav Zeman).
This is to fix LuaLaTeX output. The `-{}-` sequence does not avoid the
ligature with LuaLaTeX but `\/` does.
+ Fixed string escaping in `hyperref` and `hyperdef` (#1130).
* ConTeXt writer: Improved autolinks (#1270).
* DocBook writer:
+ Improve handling of hard line breaks in Docbook writer
(Neil Mayhew). Use a `<literallayout>` for the entire paragraph, not
just for the newline character.
+ Don't let line breaks inside footnotes influence the enclosing
paragraph (Neil Mayhew).
+ Distinguish tight and loose lists in DocBook output, using
`spacing="compact"` (Neil Mayhew, #1250).
* Docx writer: When needed files are not present in the user's
`reference.docx`, fall back on the versions in the `reference.docx`
in pandoc's data files. This fixes a bug that occurs when a
`reference.docx` saved by LibreOffice is used. (#1185)
* EPUB writer:
+ Include extension in epub ids. This fixes a problem with duplicate
extensions for fonts and images with the same base name but different
extensions (#1254).
+ Handle files linked in raw `img` tags (#1170).
+ Handle media in `audio` source tags (#1170).
Note that we now use a `media` directory rather than `images`.
+ Incorporate files linked in `video` tags (#1170). `src` and `poster`
will both be incorporated into `content.opf` and the epub container.
* HTML writer:
+ Add colgroup around col tags (#877). Also affects EPUB writer.
+ Fixed bug with unnumbered section headings. Unnumbered section
headings (with class `unnumbered`) were getting numbers.
+ Improved detection of image links. Previously image links with
queries were not recognized, causing `<embed>` to be used instead
of `<img>`.
* Man writer: Ensure that terms in definition lists aren't line wrapped
(#1195).
* Markdown writer:
+ Use proper escapes to avoid unwanted lists (#980). Previously we used
0-width spaces, an ugly hack.
+ Use longer backtick fences if needed (#1206). If the content contains a
backtick fence and there are attributes, make sure longer fences are
used to delimit the code. Note: This works well in pandoc, but github
markdown is more limited, and will interpret the first string of three
or more backticks as ending the code block.
* RST writer: Avoid stack overflow with certain tables (#1197).
* RTF writer: Fixed table cells containing paragraphs.
* Custom writer:
+ Correctly handle UTF-8 in custom lua scripts (#1189).
+ Fix bugs with lua scripts with mixed-case filenames and
paths containing `+` or `-` (#1267). Note that `getWriter`
in `Text.Pandoc` no longer returns a custom writer on input
`foo.lua`.
* AsciiDoc writer: Handle multiblock and empty table cells
(#1245, #1246). Added tests.
* `Text.Pandoc.Options`: Added `readerTrace` to `ReaderOptions`
* `Text.Pandoc.Shared`:
+ Added `compactify'DL` (formerly in markdown reader) (Albert Krewinkel).
+ Fixed bug in `toRomanNumeral`: numbers ending with '9' would
be rendered as Roman numerals ending with 'IXIV' (#1249). Thanks to
Jesse Rosenthal.
+ `openURL`: set proxy with value of http_proxy env variable (#1211).
Note: proxies with non-root paths are not supported, due to
limitations in `http-conduit`.
* `Text.Pandoc.PDF`:
+ Ensure that temp directories deleted on Windows (#1192). The PDF is
now read as a strict bytestring, ensuring that process ownership will
be terminated, so the temp directory can be deleted.
+ Use `/` as path separators in a few places, even on Windows.
This seems to be necessary for texlive (#1151, thanks to Tim Lin).
+ Use `;` for `TEXINPUTS` separator on Windows (#1151).
+ Changes to error reporting, to handle non-UTF8 error output.
* `Text.Pandoc.Templates`:
+ Removed unneeded datatype context (Merijn Verstraaten).
+ YAML objects resolve to "true" in conditionals (#1133).
Note: If `address` is a YAML object and you just have `$address$`
in your template, the word `true` will appear, which may be
unexpected. (Previously nothing would appear.)
* `Text.Pandoc.SelfContained`:
+ `mkSelfContained` now takes just two arguments, `WriterOptions` and
the string.
* It no longer looks in data files. This only made sense when we
had copies of slidy and S5 code there.
* `fetchItem'` is used instead of the nearly duplicate `getItem`.
+ Handle `poster` attribute in `video` tags (#1188).
* `Text.Pandoc.Parsing`:
+ Made `F` an instance of Applicative (#1138).
+ Added `stateCaption`.
+ Added `HasMacros`, simplified other typeclasses.
Removed `updateHeaderMap`, `setHeaderMap`, `getHeaderMap`,
`updateIdentifierList`, `setIdentifierList`, `getIdentifierList`.
+ Changed the smart punctuation parser to return `Inlines`
rather than `Inline` (Matthew Pickering).
+ Changed `HasReaderOptions`, `HasHeaderMap`, `HasIdentifierList`
from typeclasses of monads to typeclasses of states. This simplifies
the instance definitions and provides more flexibility. Generalized
type of `getOption` and added a default definition. Removed
`askReaderOption`. Added `extractReaderOption`. Added
`extractHeaderMap` and `updateHeaderMap` in `HasHeaderMap`.
Gave default definitions for `getHeaderMap`, `putHeaderMap`,
`modifyHeaderMap`. Added `extractIdentifierList` and
`updateIdentifierList` in `HasIdentifierList`. Gave defaults
for `getIdentifierList`, `putIdentifierList`, and
`modifyIdentifierList`. The ultimate goal here is to allow different
parsers to use their own, tailored parser states (instead of
`ParserState`) while still using shared functions.
* Template changes:
+ LaTeX template: Use `fontenc` package only with `pdflatex` (#1164).
+ LaTeX template: Add `linestretch` and `fontfamily` variables.
+ LaTeX template: Conditionalize author and date commands.
+ Beamer template: Consistent styles for figure and table captions
(aaronwolen).
+ LaTeX and beamer template: Adjust widths correctly for oversized
images. Use `\setkeys{Gin}{}` to set appropriate defaults for
`\includegraphics` (Yihui Xie, Garrick Aden-Buie). Load
`upquote` only after `fontenc` (Yihui Xie).
+ Beamer template: Added caption package (#1200).
+ Beamer template: changes for better unicode handling (KarolS).
+ DocBook template: use `authorgroup` if there are authors.
+ revealjs template: Move `include-after` to end (certainlyakey).
+ revealjs template: Fixed PDF print function (#1220, kevinkenan).
* Bumped version bounds of dependencies.
* Added a `--trace` command line option, for debugging backtracking
bugs. So far this only works with the markdown reader.
* MathMLinHTML: Fixed deprecation warning (#362, gwern, Albert Krewinkel).
* Updated travis script to test with multiple GHC versions.
* Force failure of a Travis build if GHC produces warnings (Albert
Krewinkel).
* Add `.editorconfig` (Albert Krewinkel).
See <http://editorconfig.org/> for details.
* Give more useful error message if '-t pdf' is specified (#1155).
* Added `Cite`, `SmallCaps` to `Arbitrary` instance (#1269).
* Allow `html4` as a synonym of `html` as a reader (it already works
as a writer).
* README:
+ Added an explanation of how to use YAML metadata to
force items to appear in the bibliography without citations in
the text (like LaTeX `\nocite`).
+ Added note to `--bibtex/--natbib`: not for use in making PDF
(#1194, thanks to nahoj).
+ Added explanatory notes about `--natbib` and `--biblatex`.
+ Added specification of legal syntax for citation keys.
+ Fixed variable defaults documentation (Albert Krewinkel).
* Removed copyright statements for files that have been removed
(Albert Krewinkel).
* Moved some doc files from `data-files` to `extra-source-files` (#1123).
They aren't needed at runtime. We keep README and COPYRIGHT in data
to ensure that they'll be available on all systems on which pandoc
is installed.
* Thu Mar 27 2014 sbahling@suse.com
- Correct package license
* Sun Mar 16 2014 sbahling@suse.com
- update to 1.12.3.3
- Remove zip-archive-upper-bound.patch (fix integrated)
Pandoc Changes:
1.12.3.3
========
* To changes to source; recompiled tarball with latest alex and
happy, so they will work with GHC 7.8.
1.12.3.2
========
* Bumped version bounds for blaze-html, blaze-markup.
* ImageSize: Avoid use of lookAhead, which is not in binary >= 0.6
(#1124).
* Fixed mediawiki ordered list parsing (#1122).
* HTML reader: Fixed bug reading inline math with `$$` (#225).
* Added support for LaTeX style literate Haskell code blocks in rST
(Merijn Verstraaten)
1.12.3.1
========
* Relaxed version constraint on binary, allowing the use of binary 0.5.
1.12.3
======
* The `--bibliography` option now sets the `biblio-files` variable.
So, if you're using `--natbib` or `--biblatex`, you can just use
`--bibliography=foo.bib` instead of `-V bibliofiles=foo`.
* Don't run pandoc-citeproc filter if `--bibliography` is
used together with `--natbib` or `--biblatex` (Florian Eitel).
* Template changes:
+ Updated beamer template to include booktabs.
+ Added `abstract` variable to LaTeX template.
+ Put `header-includes` after `title` in LaTeX template (#908).
+ Allow use of `\includegraphics[size]` in beamer.
This just required porting a macro definition from the default
LaTeX template to the default beamer template.
* `reference.docx`: Include `FootnoteText` style.
Otherwise Word ignores the style, even when specified in the `pPr`.
(#901)
* `reference.odt`: Tidied `styles.xml`.
* Relaxed version bounds for dependencies.
* Added `withSocketsDo` around http conduit code in `openURL`,
so it works on Windows (#1080).
* Added `Cite` function to `sample.lua`.
* Markdown reader:
+ Fixed regression in title blocks (#1089).
If author field was empty, date was being ignored.
+ Allow backslash-newline hard line breaks in grid and
multiline table cells.
+ Citation keys may now start with underscores, and may contain
underscores adjacent to internal punctuation.
* LaTeX reader:
+ Add support for `Verb` macro (jrnold) (#1090).
+ Support babel-style quoting: `` "`..."' ``.
* Properly handle script blocks in strict mode. (That is,
`markdown-markdown_in_html_blocks`.) Previously a spurious
`<p>` tag was being added (#1093).
* Docbook reader: Avoid failure if `tbody` contains no `tr` or `row`
elements.
* LaTeX writer:
+ Factored out function for table cell creation.
+ Better treatment of footnotes in tables.
Notes now appear in the regular sequence, rather than in the
table cell. (This was a regression in 1.10.)
* HTML reader: Parse name/content pairs from meta tags as metadata.
Closes #1106.
* Moved `fixDisplayMath` from Docx writer to `Writer.Shared`.
* OpenDocument writer: Fixed `RawInline`, `RawBlock` so they don't escape.
* ODT writer: Use mathml for proper rendering of formulas.
Note: LibreOffice's support for this seems a bit buggy. But
it should be better than what we had before.
* RST writer: Ensure no blank line after def in definition list (#992).
* Markdown writer: Don't use tilde code blocks with braced attributes in
`markdown_github` output. A consequence of this change is that the
backtick form will be preferred in general if both are enabled. That
is good, as it is much more widespread than the tilde form. (#1084)
* Docx writer: Fixed problem with some modified reference docx files.
Include `word/_rels/settings.xml.rels` if it exists, as well as other
`rels` files besides the ones pandoc generates explicitly.
* HTML writer:
+ With `--toc`, headers no longer link to themselves (#1081).
+ Omit footnotes from TOC entries. Otherwise we get doubled
footnotes when headers have notes!
* EPUB writer:
+ Avoid duplicate notes when headings contain notes.
This arose because the headings are copied into the metadata
"title" field, and the note gets rendered twice. We strip the
note now before putting the heading in "title".
+ Strip out footnotes from toc entries.
+ Fixed bug with `--epub-stylesheet`. Now the contents of
`writerEpubStylesheet` (set by `--epub-stylesheet`)
should again work, and take precedence over a stylesheet specified
in the metadata.
* `Text.Pandoc.Pretty`: Added `nestle`. API change.
* `Text.Pandoc.MIME`: Added `wmf`, `emf`.
* `Text.Pandoc.Shared`: `fetchItem` now handles image URLs beginning
with `//`.
* `Text.Pandoc.ImageSize`: Parse EXIF format JPEGs. Previously
we could only get size information for JFIF format, which led
to squished images in Word documents. Closes #976.
* Removed old `MarkdownTest_1.0.3` directory (#1104).
* Tue Dec 31 2013 peter.trommler@ohm-hochschule.de
- update to 1.12.2.1
- add zip-archive-upper-bound.patch
* relax version constraint on ghc-zip-archive so we can avoid
a dependency on ghc-utf8-string, which is not in Factory
* see upstream commit 26052d3
* can be dropped with next upstream release
* Sun Dec 29 2013 peter.trommler@ohm-hochschule.de
- expand macro in name tag, OBS requirement
* Sun Dec 29 2013 peter.trommler@ohm-hochschule.de
- merge d:l:haskell changes
* Mon Oct 07 2013 sbahling@suse.com
- Update to 1.12.0.2
- Use %fdupes to make rpmlint happy
- Move documentation from /usr/share/pandoc-%version to standard docdir
Pandoc New Features:
* Much more flexible metadata using YAML metadata.
* Added opml (OPML) as input and output format.
* Added haddock (Haddock markup) as input format
* Added revealjs output format, for reveal.js HTML 5 slide shows.
* Custom writers can now be written in lua.
* New --filter/-F option to make it easier to run ?filters?
* Added --metadata/-M option.
* Added --print-default-data-file
* Added syntax for ?pauses? in slide shows.
* New markdown extensions:
- ignore_line_breaks
- yaml_metadata_block
- ascii_identifiers
- lists_without_preceding_blankline
* Sat May 18 2013 peter.trommler@ohm-hochschule.de
- add manual pages to files
- remove man page helper program that was added by cabal-rpm