aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2021-04-17Remove Text.Pandoc.BCP47 module.John MacFarlane19-293/+198
[API change] Use Lang from UnicodeCollation.Lang instead. This is a richer implementation of BCP 47.
2021-04-17Move getLang from BCP47 -> T.P.Writers.Shared.John MacFarlane5-74/+76
[API change]
2021-04-16JATS writer: reduce unnecessary use of <p> elements for wrappingAlbert Krewinkel3-16/+47
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). Closes: #7227
2021-04-10JATS writer: convert spans to <named-content> elementsAlbert Krewinkel1-6/+7
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. Closes: #7211
2021-04-10JATS writer: add footnote number as label in backmatterAlbert Krewinkel1-0/+1
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. Closes: #7210
2021-04-08Fix regression in grid tables for wide characters.John MacFarlane1-5/+13
In the translation from String to Text, a char-width-sensitive splitAt' was dropped. This commit reinstates it. Closes #7214.
2021-04-08Lua filter: respect Inlines/Blocks filter functions in pandoc.walk_*Albert Krewinkel2-3/+10
2021-04-05Commonmark writer: Use backslash escapes for `<` and `|`...John MacFarlane1-1/+11
instead of entities. Closes #7208.
2021-04-05SelfContained: remove unneeded imports.John MacFarlane1-2/+0
2021-04-05JATS writer: escape disallows chars in identifiersAlbert Krewinkel4-19/+47
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.
2021-04-05SelfContained: use application/octet-stream for unknown mime types...John MacFarlane1-5/+4
instead of halting with an error. Closes #7202.
2021-04-02Fix "phrase" in DocBook: take classes from "role" not "class".John MacFarlane1-1/+1
Closes #7195. Revises #6438.
2021-04-01Org writer: Use LaTeX style maths deliminators (#7196)tecosaur1-2/+2
Org works better with LaTeX-style delimiters.
2021-03-31Treat tabs as spaces in ODT Reader. (#7185)niszet1-1/+7
2021-03-29Powerpoint writer: allow monofont to be specified in metadata...John MacFarlane2-6/+19
...not just using `--variable` on the command line (as in other writers). Closes #7187.
2021-03-24Fix DocBook reader mathml regression...John MacFarlane2-4/+7
...caused by the switch in XML libraries. Also fixed a similar issue in JATS. Closes #7173.
2021-03-21Simplify T.P.Asciify and export toAsciiText [API change].John MacFarlane3-395/+18
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. The new `toAsciiText` is equivalent to the old `T.pack . mapMaybe toAsciiChar . T.unpack` but should be faster.
2021-03-20Support `yaml_metadata_block` extension form commonmark, gfm.John MacFarlane3-1/+34
This is a bit more limited than with markdown, as documented in the manual: - The YAML block must be the first thing in the input. - 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. Closes #6537.
2021-03-20Move yamlMetaBlock from Markdown reader to T.P.Readers.Metadata.John MacFarlane2-22/+22
2021-03-20Markdown reader: export `yamlMetaBlock`.John MacFarlane1-17/+23
[API change] This will allow us to parse YAML metadata blocks in other readers, potentially.
2021-03-20Text.Pandoc.Parsing: remove F type synonym.John MacFarlane5-9/+9
Muse and Org were defining their own F anyway, with their own state. We therefore move this definition to the Markdown reader.
2021-03-20T.P.Readers.Metadata: made `yamlBsToMeta`, `yamlBsToRefs` polymorphic...John MacFarlane1-15/+15
on the parser state, instead of requiring ParserState. [API change]
2021-03-20RST writer: use NonEmpty for init, last.John MacFarlane1-8/+12
2021-03-20Include Header.Attr.attributes as XML attributes on sectionErik Rask1-2/+45
Add key-value pairs found in the attributes list of Header.Attr as XML attributes on the corresponding section element. Any key name not allowed as an XML attribute name is dropped, as are keys with invalid values where they are defined as enums in DocBook, and xml:id (for DocBook 5)/id (for DocBook 4) to not intervene with computed identifiers.
2021-03-20T.P.Shared: remove `backslashEscapes`, `escapeStringUsing`.John MacFarlane8-47/+77
[API change] These are inefficient association list lookups. Replace with more efficient functions in the writers that used them (with 10-25% performance improvements in haddock, org, rtf, texinfo writers).
2021-03-19Fix fallback to default partials on templates.John MacFarlane1-0/+4
If the directory containing a template does not contain the partial, it should be sought in the default data files. Closes #7164.
2021-03-19Hlint suggestion.John MacFarlane1-2/+3
2021-03-19T.P.Shared: Remove ToString, ToText typeclasses [API change].John MacFarlane2-24/+4
T.P.Parsing: revise type of readWithM so that it takes a Text rather than a polymorphic ToText value. These typeclasses were there to ease the transition from String to Text. They are no longer needed, and they may clash with more useful versions under the same name. This will require a bump to 2.13.
2021-03-19Protect partial uses of maximum with NonEmpty.John MacFarlane21-86/+108
2021-03-19Use NonEmpty instead of minimumDef.John MacFarlane4-8/+9
2021-03-19Docx reader: Don't reimplement NonEmpty.John MacFarlane1-5/+1
2021-03-18Use minimumDef instead of minimum (partial function).John MacFarlane4-9/+8
2021-03-18Require safe >= 0.3.18 and remove cpp.John MacFarlane1-5/+0
2021-03-18Rewrite a foldl1 as a foldl'.John MacFarlane1-1/+5
2021-03-18Remove another foldr1 partial function use.John MacFarlane1-5/+6
2021-03-18T.P.Readers.Odt.StyleReader: rewrite foldr1 use as foldr.John MacFarlane1-5/+6
This avoids a partial function.
2021-03-17Docx writer: make nsid in abstractNum deterministic.John MacFarlane1-6/+4
Previously we assigned a random number (though in a deterministic way). But changes in the random package mean we get different results now on different architectures, even with the same random seed. We don't need random values; so now we just assign a value based on the list number id, which is guaranteed to be unique to the list marker.
2021-03-17Fix regression with `tex_math_backslash` in Markdown reader.John MacFarlane1-1/+1
Added regression test. Closes #7155.
2021-03-16Removed unused LANGUAGE pragmas.John MacFarlane2-2/+0
2021-03-15Remove an unneeded importJohn MacFarlane1-1/+0
2021-03-15Use foldl' instead of foldl everywhere.John MacFarlane16-29/+34
2021-03-14Handle 'nocite' better with --biblatex and --natbib.John MacFarlane1-2/+10
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. Closes #4585.
2021-03-13T.P.App.FormatHeuristics: shorten code, improve docs.Albert Krewinkel1-7/+13
2021-03-13MediaWiki reader: Allow block-level content in notes (ref).John MacFarlane1-1/+9
Closes #7145.
2021-03-13Use integral values for w:tblW in docx.John MacFarlane1-1/+1
Cloess #7141.
2021-03-13Jira reader: mark divs created from panels with class "panel".Albert Krewinkel1-2/+2
Closes: tarleb/jira-wiki-markup#2
2021-03-13Jira writer: improve div/panel handlingAlbert Krewinkel1-11/+28
Include div attributes in panels, always render divs with class `panel` as panels, and avoid nesting of panels.
2021-03-12Citeproc: apply fixLinks correctly.John MacFarlane1-5/+5
This is code that incorporates a prefix like `https://doi.org/` into a following link when appropriate. But it didn't work because we were walking with a `[Inline] -> [Inline]` function on an `Inlines`. Changed the point of application of `fixLink` to resolve the issue. Closes #7130.
2021-03-12Simplify compactDL.John MacFarlane1-13/+11
2021-03-10HTML writer: Add warnings on duplicate attribute values.John MacFarlane2-18/+31
This prevents emitting invalid HTML. Ultimately it would be good to prevent this in the types themselves, but this is better for now. T.P.Logging: Add DuplicateAttribute constructor to LogMessage. [API change]