aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-08-18pptx: Include image title in descriptionEmily Bourke10-12/+19
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 (which was already included). Fixes 7352.
2021-08-17Revise citeproc code to fit new citeproc 0.5 API.John MacFarlane7-51/+21
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, though the new behavior includes the CSL draft recommendation of hyperlinking the title or the whole entry if a DOI, PMID, PMCID, or URL field is present but not explicitly rendered). These changes implement the following recommendations from the draft CSL v1.0.2 spec (Appendix VI): > The CSL syntax does not have support for configuration of links. > However, processors should include links on bibliographic references, > using the following rules: > If the bibliography entry for an item renders any of the following > identifiers, the identifier should be anchored as a link, with the > target of the link as follows: > - url: output as is > - doi: prepend with "`https://doi.org/`" > - pmid: prepend with "`https://www.ncbi.nlm.nih.gov/pubmed/`" > - pmcid: prepend with "`https://www.ncbi.nlm.nih.gov/pmc/articles/`" > If the identifier is rendered as a URI, include rendered URI components > (e.g. "`https://doi.org/`") in the link anchor. Do not include any other > affix text in the link anchor (e.g. "Available from: ", "doi: ", "PMID: "). > If the bibliography entry for an item does not render any of > the above identifiers, then set the anchor of the link as the item > title. If title is not rendered, then set the anchor of the link as the > full bibliography entry for the item. Set the target of the link as one > of the following, in order of priority: > > - doi: prepend with "`https://doi.org/`" > - pmcid: prepend with "`https://www.ncbi.nlm.nih.gov/pmc/articles/`" > - pmid: prepend with "`https://www.ncbi.nlm.nih.gov/pubmed/`" > - url: output as is > > If the item data does not include any of the above identifiers, do not > include a link. > > Citation processors should include an option flag for calling > applications to disable bibliography linking behavior. Thanks to Benjamin Bray for getting this all working.
2021-08-17Document new link-bibliography metadata field.John MacFarlane1-3/+10
This affects whether hyperlinks are added to the bibliography by citeproc.
2021-08-17OOXML tests: silence warnings.John MacFarlane1-0/+1
These can make the test output confusing, making people think tests are failing when they're passing.
2021-08-17Rename TemplateWarning -> PowerpointTemplateWarning.John MacFarlane2-6/+7
@undergroundquizscene - I think TemplateWarning is apt to be confusing, since this actually doesn't have anything to do with what we call 'templates' in pandoc. Hence the change to a powerpoint-specific name.
2021-08-17Use released citeproc 0.5.John MacFarlane3-8/+2
2021-08-17pptx: Select layouts from reference doc by nameEmily Bourke47-33/+242
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, or else pandoc would error (or sometimes successfully produce a pptx file, which PowerPoint would then fail to open). This commit changes the layout selection to use 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 output a warning and use the corresponding layout from the default reference doc as a fallback. I believe the use of names rather than order will be clearer to users, and the clearer errors will help them troubleshoot when things go wrong. - Add tests for moved layouts - Add tests for deleted layouts - Add newly included layouts to slideMaster1.xml to fix tests
2021-08-17Don’t compare cdLine in OOXML golden testsEmily Bourke1-1/+0
The `cdLine` field gives the line of the file some CData was found on. I don’t think this is a difference that should fail these golden tests, as the XML should still be parsable if nothing else has changed.
2021-08-17Provide more detailed XML diff in testsEmily Bourke1-21/+51
I had some failing tests and couldn’t tell what was different in the XML. Updating the comparison to return what’s different made it easier to figure out what was wrong, and I think will be helpful for others in future.
2021-08-17Add TemplateWarning log message type [API change]Emily Bourke1-0/+6
This is a general warning to use for messages about templates.
2021-08-17Escape backslashes in haddock comments (#7505)Emily Bourke1-4/+4
Any literal backslash needs to be escaped: these are currently showing up as “‘r’” instead of “‘\r’”. Co-authored-by: Emily Bourke <undergroundquizscene@protonmail.com>
2021-08-16Fix bug in last commit due to removal of take1WhileP.John MacFarlane1-2/+2
2021-08-15Multimarkdown sub- and superscripts (#5512) (#7188)OCzarnecki4-15/+80
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. Closes #5512. Add `Ext_short_subsuperscripts` constructor to `Extension` [API change]. This is enabled by default for `markdown_mmd`.
2021-08-15Remove documentation for `.ul` shortcut for now.John MacFarlane1-1/+1
See #7307. Motivation: there is talk of removing this.
2021-08-15Make docx writer sensitive to `native_numbering` extension.John MacFarlane5-14/+25
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 behavior is 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. Closes #7499.
2021-08-15Remove misleading description from command/citeproc-87 test.John MacFarlane1-5/+2
2021-08-13Convert Quoted in bib entries to special Spans...John MacFarlane4-2/+47
before passing them off to citeproc. This ensures that we get proper localization and flipflopping if, e.g., quotes are used in titles. Closes jgm/citeproc#87.
2021-08-13Citeproc: avoid odd handling of quotes.John MacFarlane4-3/+24
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. See #87. The one thing left to do is to convert Quoted elements in bibliography databases (esp. titles) to `Span ("",["csl-quoted"],[])` before passing them to citeproc, IF the localized quotes for the quote type match the standard inverted commas.
2021-08-13Removed quote localization from citeproc processing.John MacFarlane3-25/+10
This is now done in citeproc itself.
2021-08-13Fix raw LaTeX injection issue (LaTeX writer).John MacFarlane2-5/+47
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. Closes #7497.
2021-08-13LaTeX reader: proper implicit grouping around environment macros.John MacFarlane1-1/+2
2021-08-12Document use of the 'underline' class. (#7492)William Lupton1-0/+12
Addresses a comment in #7484.
2021-08-12Various sample.lua editorial fixes. (#7493)William Lupton2-16/+19
These address most of the items mentioned in #7487. There's also a table caption fix (the caption wasn't escaped).
2021-08-12Bump base-compat version so we get compatibility with base 4.12.John MacFarlane1-1/+1
2021-08-12Use Prelude from base-compat for ghc 8.4 too.John MacFarlane2-6/+2
We were having trouble building on ghc 8.4 because of the lack of a Foldable instance for (Alt Maybe) in base < 4.12. Mystery: for some reason our builds were failing for gitit but not in the pandoc CI.
2021-08-12Add haskell-language-server to shell.nix (#7496)Emily Bourke1-0/+1
I find it useful to have this installed via the nix shell when working on pandoc, so I think others may also find it useful. Co-authored-by: Emily Bourke <undergroundquizscene@protonmail.com>
2021-08-11Try fixing compile error on older ghcs.John MacFarlane1-1/+5
See https://github.com/jgm/gitit/runs/3308381697
2021-08-11Fix some lint issues.John MacFarlane2-6/+5
2021-08-11LaTeX reader: Support `\global` before `\def`, `\let`, etc.John MacFarlane2-2/+22
See #7494.
2021-08-11Fix scope for LaTeX macros.John MacFarlane4-55/+150
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. We handle this by making sMacros in the LaTeX parser state a STACK of macro tables. Opening a group adds a table to the stack, closing one removes one. Only the top of the stack is queried. This commit adds a parameter for scope to the Macro constructor (not exported). Closes #7494.
2021-08-11Clarify internal punctuation in citation keys. (#7491)William Lupton1-5/+8
Addresses a comment in #5458.
2021-08-11LaTeX reader: improve handling of plain TeX macro primitives.John MacFarlane3-7/+66
- Fixed semantics for `\let`. - Implement `\edef`, `\gdef`, and `\xdef`. - Add comment noting that currently `\def` and `\edef` set global macros (so are equivalent to `\gdef` and `\xdef`). This should be fixed by scoping macro definitions to groups, in a future commit. Closes #7474.
2021-08-10Tests.Helpers: export testGolden and use it in RTF reader.John MacFarlane2-13/+27
This gives a diff output on failure.
2021-08-10HTML reader: treat commments as blank when parsing.John MacFarlane2-5/+54
This modifies pBlank. Previously comments could sometimes flummox the parser. Cloes #7482.
2021-08-10Add test for #7488.John MacFarlane3-0/+447
2021-08-10Fix RTF table parsing bug that created undesired nested tables.John MacFarlane1-1/+1
Closes #7488.
2021-08-10Add RTF reader.John MacFarlane31-4/+2292
- `rtf` is now supported as an input format as well as output. - New module Text.Pandoc.Readers.RTF (exporting `readRTF`). [API change] Closes #3982.
2021-08-08Allow `--slide-level=0`.John MacFarlane2-7/+9
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. Closes #7476.
2021-08-08Remove obsolete and incorrect sentence in `--slide-level` docs.John MacFarlane1-3/+1
2021-08-04RTF writer: emit \outlinelevel for section headings.John MacFarlane2-32/+33
2021-08-03Stop using the HTTP package. (#7456)mt_caret7-12/+30
We only depend on the urlEncode function in the package, which is also provided by http-types. The HTTP package also depends on the network package, which has difficulty building on ghcjs. Add internal module Text.Pandoc.Network.HTTP, exporting `urlEncode`.
2021-08-03LaTeX table writer: Increase column width precision (#7466)Peter Fabinski6-21/+21
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.
2021-08-01RTF writer: omit `\bin` in `\pict`.John MacFarlane2-3/+3
According to the spec, this is not needed or wanted when the data is in hexadecimal format, as it is here.
2021-08-01Add a faq about the "Cannot allocate memory" error on M1 macs.John MacFarlane1-0/+8
2021-08-01RTF template: specify font family for fixed-width font f1.John MacFarlane2-2/+2
According to the spec, this is mandatory.
2021-07-29parseFromString: preserve at least the source directory.John MacFarlane1-1/+1
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". Closes #7464.
2021-07-22LaTeX writer: Use ulem for underline.John MacFarlane2-1/+4
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. Closes #7351.
2021-07-22MIME: use image/x-xcf instead of application/x-xcf.John MacFarlane1-1/+1
Closes #7454.
2021-07-19INSTALL.md: Add GitLab CI/CD example (#7448)Veratyr1-0/+6
2021-07-18Bump to 2.14.1, update changelog and man page.John MacFarlane4-5/+150