aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2025-11-08ICML writer: base FirstParagraph styles on corresponding...issue_11268John MacFarlane
Paragraph styles. This should ensure that existing documents still work with the FirstParagraph style, without the need to define new styles.
2025-11-05ICML writer: add FirstParagraph and Bibliography styles.John MacFarlane
Closes #11268.
2025-11-04Better handling of `\makeatletter` in parsing raw LaTeX.John MacFarlane
Closes #11270.
2025-11-04Revert "Improve parsing of raw LaTeX blocks..."John MacFarlane
This reverts commit 22863a3e124215e6fd24efe55a5a99fb2d605e5b.
2025-11-04Improve parsing of raw LaTeX blocks...John MacFarlane
containing macro definitions with `\makeatletter` and `\makeatother`. Closes #9953, see also #11270.
2025-11-04T.P.LaTeX.Parsing: change type on rawLaTeXParser.John MacFarlane
The preparser doesn't need to return a value.
2025-11-04LaTeX reader: fix spurious paragraph breaks in math environments (#11265)Emmanuel Ferdman
Previously, a math environment with extra space before the `\end` would get rendered with a blank line, which LaTeX treats as a paragraph break. Signed-off-by: Emmanuel Ferdman <[email protected]>
2025-11-03LaTeX reader: fix bugs in raw LaTeX parsing.John MacFarlane
Fix `rawTeXParser`. Make macro expansion in raw LaTeX depend on the setting of the `latex_macros` extension. Previously macros were always expanded, even in raw TeX in markdown. In addition, there was previously a bug that caused content to be garbled in certain cases. Closes #11253. Handle `ifstrequal` at a lower level, like the other `if` commands. See #11253.
2025-11-03asciidoc writer: Add more table features (#11267)Tuong Nguyen Manh
This adds the following table features: - row span and column span - footer row - individual horizontal cell alignment [API change] T.P.Writers.Shared: Add functions `allRowsEmpty` and `tableBodiesToRows` from the RST writer for reuse in other writers. Also fix hlint warning about `unzip` from `NonEmpty`: The exported polymorphic function will become monomorphic in the future. Restrict the `NonEmpty` import to use the Prelude `unzip` function.
2025-11-03Markdown reader: fix performance issue in links with `'`.John MacFarlane
Closes #10880.
2025-11-02LaTeX writer: improve handling of math environments in tex math.John MacFarlane
Previously the special handling added for #9711 worked only when the math element did not contain spaces before the math environment. Closes #11266.
2025-10-30Typst reader: handle document metadata and `#title`.John MacFarlane
See jgm/typst-hs#80. Note that previously, the typst reader never returned document metadata. Now it does, even if the typst document does not contain a `#title` function that would result in actually printing the title block.
2025-10-30PDF: fix regression with typst and smart quotes.John MacFarlane
Before 3.8, the default behavior when producing a PDF `-t typst` was to produce smart quotes according to typst's defaults. (This could be defeated by specifying `-t typst-smart`.) This behavior broke in 3.8 because of a change to Text.Pandoc.PDF. This change caused `smart` to be disabled for all formats when producing PDFs, when before it was only disable for TeX-based formats (to avoid bad ligatures). This commit restores the old behavior. Possibly the regression also other affects other non-TeX formats, e.g. HTML. Closes #11256.
2025-10-28LaTeX reader: Moved some entries from environments to blockCommands.John MacFarlane
They are not environments! `ifstrequal`, `iftoggle`, etc. ifstrequal, iftoggle, etc. -- these are not environments, and they are handled under inlineCommands.
2025-10-27Djot reader: add Space elements.John MacFarlane
Previously we just got big Str elements with spaces included. But many pandoc writers assume that breakable spaces will be Space elements. So, we got odd results with e.g. jira output. Closes #11250.
2025-10-24Citeproc: allow formatting in locator to be transmitted to citeproc.John MacFarlane
We do this indirectly, by rendering the formatting using the HTML tags that citeproc recognizes. Fixes jgm/citeproc#68 and jgm/citeproc#163. Note that formatting is only possible for locators given in the explicit form, surrounded by curly braces. It won't work for implicit locators, since these expect number-like expressions.
2025-10-18Org reader: parse parameter lists on unknown blocks.Albert Krewinkel
The reader tries to parse the rest of the opening line of a block, e.g., `#+begin_myblock …`, as a parameters list. It first assumes that the parameters are in lisp-style (`:key value`), then alternatively tries to read python-style key-value pairs (`key=value`) and falls back to reading the entire remaining line as a single `parameter` attribute. This method is also applied to dynamic blocks. Closes: #11188
2025-10-18Org reader: add support for dynamic blocks.Albert Krewinkel
2025-10-15Docx writer: properly handle nested comment spans.John MacFarlane
Patch credit: @mmourino. Closes #8189. Closes #6959.
2025-10-14RST writer: Don't use simple tables with RowSpans (#11214)TuongNM
2025-10-13RTF reader: improve hyperlink parsing.John MacFarlane
Closes #11211.
2025-10-13Typst writer: Escape open paren after non-space.John MacFarlane
This fixes an issue that occurs if an open paren comes right after e.g. `#strong[test]`. Closes #11210.
2025-10-11HTML reader: allow blank space between open and close iframe.John MacFarlane
2025-10-06LaTeX writer/template: small fix for unnumbered tables.John MacFarlane
This improves on commit e13aa5c0157744de262ac512cc95a76a4562e37b, which worked only for recent versions of longtable. For older versions, we need to define a dummy counter `none`. Closes #11201. Thanks to @priiduonu for the solution.
2025-10-05Typst writer: don't add semicolons as much.John MacFarlane
Previously we added semicolons after inline commands not followed by spaces, but mainly this was to deal with one issue: the presence of a semicolon after an inline command, which would be swallowed as a command separator (#9252). This commits adopts an approach that should avoid so many superfluous semicolons: it escapes semicolons that might come right after a command. See #11196.
2025-10-04Small improvement to oneOfStrings.John MacFarlane
Use accumulator.
2025-10-04LaTeX writer: Fix strikeout in links (#11192)TuongNM
As in #1294 \url and \href need to be protected inside an mbox for soul commands. Closes #9366.
2025-10-03Parsing.General: Rewrite `oneOfStrings'` with less conversion to string.John MacFarlane
2025-10-02Markdown tables: implement `table_attributes` extension.John MacFarlane
When `table_attributes` is enabled (as it is by default for pandoc's Markdown), attributes can be attached to a table by including them at the end of the caption. Previously the writer would emit an identifier in this position, but the reader didn't handle it. Now arbitrary attributes are allowed, and they work in both the reader and writer. Closes #10884. [API change]: Text.Pandoc.Extensions: Add `Ext_table_attributes` constructor for `Extension`.
2025-09-29T.P.XML: Add `fetchpriority` to list of HTML attributes.John MacFarlane
Closes #11176.
2025-09-29RST writer: Add col spans for simple tables (#11173)TuongNM
Closes #10127.
2025-09-28LaTeX writer: Fix strikeouts in beamer title (#11169)TuongNM
beamer uses pdfstring for the pdfinfo which can't handle soul strikeouts. Therefore, the title, subtitle and author contents need to be put inside texorpdfstring to deal with both the pdfinfo as well as the formatting. Fixes #11168.
2025-09-28Typst writer: Fix syntax highlighting.John MacFarlane
See #11171. Previously the native typst highlighting was always used, regardless of the setting of `--syntax-highlighting`. With this change, `--syntax-highlighting=none` and `--syntax-highlighting=<style name>` (with skylighting) will work. Completes #10525.
2025-09-28T.P.Highlighting: export typst functions.John MacFarlane
[API change] New exported functions `formatTypstBlock`, `formatTypstInline`, `styleToTypst`.
2025-09-27LaTeX writer: make beamer footnotes compatible with pauses.John MacFarlane
Previously they would appear before the content to which the note was attached, when there were pauses in a slide. Closes #5954. See related discussion in https://github.com/josephwright/beamer/issues/565.
2025-09-24RST writer: ensure blank line before directives.John MacFarlane
Closes #11162.
2025-09-20OpenDocument writer: Add missing table elements (#11157)TuongNM
Add missing header rows after the first one, footer rows as well as TableBody header rows. Also apply hlint suggestions to use Down and fuse mapM/map. Closes #10002.
2025-09-19Docx writer: fix regression (3.8) in highlighted code.John MacFarlane
We added DefaultHighlighting in commit 6475725 but didn't adjust the pattern-match here. Closes #11156.
2025-09-19Docx reader: handle figures in indented paragraphs.John MacFarlane
Previously these were omitted. Closes #11028.
2025-09-19LaTeX writer: avoid `\_` in bibliography variable.John MacFarlane
Since underscores are common in filenames, and pandoc will render strings to variables using default LaTeX escaping, we special-case `bibliography`, under the assumption that this variable will be used in the context of the `\bibliography{..}` command, which accepts unescaped underscores. Closes #11152.
2025-09-18RST reader: fix regression in simple table parsing.John MacFarlane
Closes #11150.
2025-09-18RST reader: SkippedContent warning if table directive...John MacFarlane
containts non-tabular content.
2025-09-17RST simple table fix.John MacFarlane
Leading space in a cell should not cause the contents to be parsed as a block quote. Closes #11146.
2025-09-17Docx reader: change default for textwidth.John MacFarlane
This should only be used if sectPr is not found.
2025-09-17Docx reader: properly calculate table column widths.John MacFarlane
Previously we assumed that every table took up the full text width. Now we read the text width from the document's sectPr. Closes #9837. Closes #11147.
2025-09-16LaTeX writer: ensure that unlabelled tables don't increment counter.John MacFarlane
Closes #11141.
2025-09-16Markdown reader: Improve superscript/subscript/inline note parsing.John MacFarlane
We do not allow inline notes to be followed by `(` or `[`. Otherwise, we parse inline notes before superscripts. This fixes #8652. Also, the sub/superscript parsers have been adjusted so that they really exclude unescaped spaces (as they did not before, when the spaces occurred in nested inlines). See #5878 for comment.
2025-09-16Markdown reader: refactor out litBetween.John MacFarlane
2025-09-15Vimdoc writer (#11132)reptee
Support for vimdoc, documentation format used by vim in its help pages. Relies heavily on definition lists and precise text alignment to generate tags.
2025-09-15LaTeX reader: ignore `\pandocbounded`.John MacFarlane
Third issue in #11140.