summaryrefslogtreecommitdiff
path: root/pandoc-lua-engine/src/Text/Pandoc/Lua/Marshal
AgeCommit message (Collapse)Author
2024-02-20Lua: avoid crashing when an error message is not valid UTF-8Albert Krewinkel
Invalid input bytes in error messages caused pandoc to crash with an encoding exception. Instead, the invalid bytes are now replaced with the Unicode replacement character U+FFFD.
2023-03-12Lua: allow to get the JSON encoding of log messagesAlbert Krewinkel
2023-02-09Lua: add field `chunk_template` to WriterOptions objects [API change]Albert Krewinkel
The PathTemplate type exported from Text.Pandoc.Chunks is now an instance of the ToJSON and FromJSON classes. Closes: #8607
2023-01-18Lua: add function pandoc.format.extensions.Albert Krewinkel
This simplifies the creation of custom readers and writers that are based on built-in formats.
2023-01-15Lua: add module `pandoc.structure`.Albert Krewinkel
Adds support for table of contents and chunks handling. The function `make_sections` has been given a friendlier interface and was moved to the new module; the old `pandoc.utils.make_sections` has been deprecated.
2023-01-12Replace `--epub-chapter-level` with `--split-level`.John MacFarlane
Rationale: we need this splitting level now not just in EPUB but in chunked HTML. `--epub-chapter-level` will still function as a deprecated synonynm. `epub-chapter-level` will also continue to work in defaults files, ande `epub_chapter_level` will still work for Lua marshalling. [API changes] Text.Pandoc.App.Opt: remove `optEpubChapterLevel`, add `optSplitLevel`. Text.Pandoc.Options: remove `writerEpubChapterLevel`, add `writerSplitLevel`.
2023-01-10Update copyright years, it's 2023!Albert Krewinkel
2022-12-16Lua: allow table structure as format spec.Albert Krewinkel
This allows to pass structured values as format specifiers to `pandoc.write` and `pandoc.read`.
2022-10-30hlint suggestions.John MacFarlane
2022-10-27Lua: allow strings in place of compiled templates.Albert Krewinkel
This allows to use a string as parameter to `pandoc.template.apply` and in the WriterOptions `template` field. Closes: #8321
2022-10-20Add custom extensions.John MacFarlane
T.P.Extensions [API change]: + Add CustomExtension constructor to Extension. + Remove Bounded, Enum instances for Extension. + Add `extensionsToList` function. + Revise `readExtension` so it can handle CustomExtension, and so that it returns a Text rather than Maybe Text. + Add `showExtension`. T.P.Format: + Revise error checking to handle CustomExtension.
2022-10-16Lua: fix rendering of Lua errors in LuaAlbert Krewinkel
Otherwise the `Error running Lua` message can be prepended multiple times.
2022-10-16Lua: fix peeker for PandocError.Albert Krewinkel
String error messages were incorrectly popped of the stack when retrieving a PandocError.
2022-10-12Lua: add function `pandoc.template.meta_to_context`.Albert Krewinkel
The functions converts Meta values to template contexts; the intended use is in combination with `pandoc.template.apply`.
2022-10-12Lua: allow Doc values in `WriterOptions.variables`.Albert Krewinkel
The specialized peeker and pusher function for `Context Text` values does not go via JSON, and thus keeps Doc values unchanged during round-tripping.
2022-10-11Lua: add function `pandoc.template.apply`Albert Krewinkel
The new function applies a context, containing variable assignments, to a template.
2022-10-10Lua: support extensions in custom writersAlbert Krewinkel
Custom writers can define the extensions that they support via the global `writer_extensions`. The variable's value must be a table with all supported extensions as keys, and their default status as values. E.g., the below specifies that the writer support the extensions `smart` and `sourcepos`, but only the `smart` extension is enabled by default: writer_extensions = { smart = true, sourcepos = false, }
2022-10-05Lua: produce more informative error messages for pandoc errorsAlbert Krewinkel
Errors are reported in Lua in the same words in which they would be reported in the terminal.
2022-10-04Lua: ensure that extensions marshaling is consistent.Albert Krewinkel
2022-09-30[API Change] Extract Lua code into new package pandoc-lua-engineAlbert Krewinkel
The flag 'lua53` must now be used with that package if pandoc is to be compiled against Lua 5.3.