aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Writers
AgeCommit message (Collapse)AuthorFilesLines
2019-03-28Use strict instead of lazy sum.John MacFarlane1-2/+2
sum is lazy; replace with `foldl' (+) 0` to avoid stack overflow in Text.Pandoc.Pretty with very long strings. Closes #5401.
2019-03-27ipynb writer: preserve nbformat_minor if it's given.John MacFarlane1-2/+10
This helps with round-tripping.
2019-03-27Writers.Shared.metaValueToJSON: use Number Values for integers.John MacFarlane1-4/+9
Pandoc's MetaValue doesn't have a distinguished number type, so numbers are put in MetaStrings. If the MetaString consists entirely of digits, we convert it to a Number. We should probably consider adding a MetaNumber constructor to MetaValue, for better round-tripping with JSON etc. This change aids round-tripping in ipynb metadata fields, like `toc_depth`.
2019-03-26JATS writer: Ensure that plain strings go inside `<pub-id>` tag.John MacFarlane1-1/+9
See #5397.
2019-03-22LaTeX writer: Fix footnotes in table caption and cells.John MacFarlane1-13/+11
This fixes a bug wherein footnotes appeared in the wrong order, and with duplicate numbers, when in table captions and cells. We now use regular `\footnote` commands, even in the table caption and the minipages containing cells. Apparently longtable knows how to handle this. Closes #5367.
2019-03-21Docx writer: Use w:br without attributes for line breaks.John MacFarlane1-4/+1
We previously added the attribute `type="textWrapping"`, but this causes problems on Word Online. Closes #5377.
2019-03-18Improved fix to #5340 and added test.John MacFarlane1-2/+2
2019-03-18Improve autolink detection in LaTeX reader.John MacFarlane1-2/+2
This determines whether `\url` or `\href` is used. Closes #5340.
2019-03-17Properly escape attributes in Markdown writer.John MacFarlane1-4/+9
Closes #5369.
2019-03-11docx writer: avoid extra copy of abstractNum and num elements...John MacFarlane1-1/+9
...in numbering.xml. This caused pandoc-produced docx files to be uneditable using Word Online. The problem was that recent versions of reference.docx include samples of various kinds of text, including lists. The numering elements for these were getting copied over to the new docx, where they clashed with the autogenerated elements produced by pandoc. This didn't confuse Desktop Word, but it did confuse Word Online. Closes #5358.
2019-03-09Markdown writer: improve handling of raw blocks/inline.John MacFarlane1-34/+55
We now emit raw content using `raw_attribute` when no more direct method is available.
2019-03-09Ipynb reader/writer: better handling of cell metadata.John MacFarlane1-7/+6
We now handle even complex cell metadata in the Div's attributes. Simple metadata fields are rendered as a plain string, and complex ones as JSON.
2019-03-06ipynb writer: recurse into native divs for output cell data.John MacFarlane1-0/+1
See #5354.
2019-03-04LaTeX writer: Add classes for frontmatter support (#5353)Andrew Dunning1-2/+2
Remove frontmatter from scrreprt The KOMA-Script `scrreprt` class follows the pattern of `report`, and does not support `\frontmatter`. Use frontmatter for more classes
2019-03-04LaTeX writer/template: better handling of front/main/backmatter.John MacFarlane1-26/+29
In pandoc 2.7 we assumed that every class with chapters would accept `\frontmatter`, `\mainmatter`, and `\backmatter`. This is not so (e.g. report does not). So pandoc 2.7 breaks on report class by including an unsupported command. So we replace the book-class variable in the template with two variables, has-chapters and has-frontmatter, and set these intelligently in the writer. Closes #5348.
2019-03-01LaTeX(Beamer) writer: include contents under headers < slidelevel.John MacFarlane1-1/+8
Currently we keep the fancy title slide and add a new slide with the same title and whatever content was under the header. This changes behavior of slides, but is consistent with the new behavior of the revealjs and other HTML slide show writers. See #4317.
2019-03-01HTML writer: include content under title slides.John MacFarlane1-7/+9
This facilitates real 2D revealjs slideshows, with content under the top-level slide in each stack. It also enables notes on title slides. Closes #4317 and #5237.
2019-03-01Remove license boilerplate.John MacFarlane36-659/+0
The haddock module header contains essentially the same information, so the boilerplate is redundant and just one more thing to get out of sync.
2019-02-28ipynb writer: only include metadata under 'jupyter' field.John MacFarlane1-1/+1
2019-02-27PowerPoint writer: add underlinesJesse Rosenthal1-0/+3
Use span with single class "underline" as in docx writer.
2019-02-22Add section identifiers support for FB2 writer (#5315)John1-35/+28
Closes #5229.
2019-02-18hlint MuseAlexander Krotov1-2/+2
2019-02-18Muse writer: escape secondary notesAlexander Krotov1-7/+10
2019-02-18Move a comment in Muse WriterAlexander Krotov1-1/+1
2019-02-15ipynb writer: don't create attachments for images with absolute URIs.John MacFarlane1-2/+3
...including data: URIs. Closes #5303.
2019-02-15Revert "JATS writer: Support citations."John MacFarlane1-4/+3
This reverts commit 39889c22df578a4310bcf549fcd507c08fbf1416.
2019-02-15JATS writer: Support citations.John MacFarlane1-3/+4
2019-02-10Implement aria roles doc-bibliography, doc-biblioentry, doc-biblioref.John MacFarlane1-2/+10
Note that doc-biblioref is only used when link-citations produces links, since it belongs on links. See #4213.
2019-02-10JATS writer: wrap figure caption in <p> to fix validation (#5292)Mauro Bieg1-1/+1
closes #5290
2019-02-09ipynb writer - ensure final newline.John MacFarlane1-0/+1
2019-02-09Fixed asciidoc display math in list contexts.John MacFarlane1-17/+46
2019-02-09Asciidoctor writer sets the stem attribute if it contains latexmathTG1-1/+7
2019-02-09Adds Asciidoctor sprcific writer and testsTG1-12/+29
2019-02-09AsciiDoc Writer: DisplayMath as asciidoc latexmath blockTG1-1/+4
2019-02-09AsciiDoc writer: change bulletListLevel and orderedListLevel...John MacFarlane1-4/+4
so that 0 means "not in a list," which is more what one would expect.
2019-02-04Add missing copyright notices and remove license boilerplate (#5112)Albert Krewinkel36-73/+73
Quite a few modules were missing copyright notices. This commit adds copyright notices everywhere via haddock module headers. The old license boilerplate comment is redundant with this and has been removed. Update copyright years to 2019. Closes #4592.
2019-02-02HTML5 writer: implement WAI-ARIA roles for (end)notes.John MacFarlane1-12/+25
See #4213.
2019-02-01LaTeX writer: use right fold for escapeString.John MacFarlane1-15/+13
This is more elegant than the explicit recursive we were using.
2019-02-01LaTeX writer: code simplification in escaping.John MacFarlane1-20/+21
2019-02-01Markdown writer: use markdown="1" when appropriate for Divs.John MacFarlane1-0/+6
When `native_divs` and `markdown_in_html_blocks` are disabled but `raw_html` and `markdown_attribute` are enabled...
2019-02-01LaTeX writer: avoid `{}` after control sequences when escaping.John MacFarlane1-26/+36
`\ldots{}.` doesn't behave as well as `\ldots.` with the latex ellipsis package. This patch causes pandoc to avoid emitting the `{}` when it is not necessary. Now `\ldots` and other control sequences used in escaping will be followed by either a `{}`, a space, or nothing, depending on context. Thanks to Elliott Slaughter for the suggestion.
2019-01-26Improve writing metadata for docx, pptx and odt (#5252)Agustín Martín Barbero4-18/+99
* docx writer: support custom properties. Solves the writer part of #3024. Also supports additional core properties: `subject`, `lang`, `category`, `description`. * odt writer: improve standard properties, including the following core properties: `generator` (Pandoc/VERSION), `description`, `subject`, `keywords`, `initial-creator` (from authors), `creation-date` (actual creation date). Also fix date. * pptx writer: support custom properties. Also supports additional core properties: `subject`, `category`, `description`. * Includes golden tests. * MANUAL: document metadata support for docx, odt, pptx writers
2019-01-25Texinfo writer: use header identifier for anchor if present.John MacFarlane1-2/+4
Previously we were overwriting an existing identifier with a new one. Closes #4731.
2019-01-25LaTeX writer: add `#` special characeters for listings.John MacFarlane1-1/+1
This character needs special handling in lstinline. Closes #4939.
2019-01-24Ipynb: Put all jupyter metadata under 'jupyter' key.John MacFarlane1-1/+6
2019-01-24Revert "Prepend `jupyter_` to jupyter metadata keys."John MacFarlane1-6/+0
This reverts commit 5eaff399d5d6dc30b0d453eff42c4101674d75ab.
2019-01-24Ms writer: ensure we have a newline after .EN in disply math.John MacFarlane1-1/+1
Closes #5251.
2019-01-24Prepend `jupyter_` to jupyter metadata keys.John MacFarlane1-0/+6
This avoids conflics with things like 'toc'.
2019-01-23Removed superfluous import.John MacFarlane1-1/+0
2019-01-22Support ipynb (Jupyter notebook) as input and output format.John MacFarlane1-0/+233
[API change] * Depend on ipynb library. * Add `ipynb` as input and output format. * Added Text.Pandoc.Readers.Ipynb (supports both nbformat v3 and v4). * Added Text.Pandoc.Writers.Ipynb (supports nbformat v4). * Added ipynb readers and writers to T.P.Readers, T.P.Writers, and T.P.Extensions. Register the file extension .ipynb for this format. * Add `PandocIpynbDecodingError` constructor to Text.Pandoc.Error.Error. * Note: there is no template for ipynb.