summaryrefslogtreecommitdiff
path: root/doc/custom-writers.md
AgeCommit message (Collapse)Author
2022-10-25Lua: rename `reader_extensions`/`writer_extensions` globals...John MacFarlane
...as `Extensions`. Update documnetation. Include a custom extension in the documentation example. See #8390.
2022-10-24Remove sample.lua from data files (#8397)Albert Krewinkel
The file is kept around in the pandoc-lua-engine test-suite. Closes: #8356
2022-10-21Lua: add pandoc.scaffolding.Writer (#8377)Albert Krewinkel
This can be used to reduce boilerplate in custom writers.
2022-10-14Lua: Support built-in default templates for custom writersAlbert Krewinkel
Custom writers can define a default template via a global `Template` function; the data directory is no longer searched for a default template. Writer authors can restore the old lookup behavior with ``` lua Template = function () local template return template.compile(template.default(PANDOC_SCRIPT_FILE)) end ```
2022-10-14doc/custom-writers.md: fix formattingAlbert Krewinkel
2022-10-14doc/custom-writers.md: Rephrase paragraph on format extensions (#8375)Ilona
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-03[API Change] Support bytestring custom writers.Albert Krewinkel
New-style custom Lua writers can now define an alternative entry function `BinaryWriter`. If a function with that name is defined, then pandoc will treat the returned string as binary output. This allows to generate formats like docx and odt with custom writers.
2022-10-03Lua: deprecate classic custom writers.Albert Krewinkel
2022-10-03[API Change] Base custom writers on Writer type.Albert Krewinkel
The `T.P.Lua.writeCustom` function changed to allow either a TextWriter or ByteStringWriter to be returned. The global variables `PANDOC_DOCUMENT` and `PANDOC_WRITER_OPTIONS` are no longer set when the writer script is loaded. Both variables are still set in classic writers before the conversion is started, so they can be used when they are wrapped in functions.
2022-02-07Lua docs: fix typos, missing linksAlbert Krewinkel
2022-02-06Custom writer: support new-style Writer function.Albert Krewinkel
2022-01-02Lua writer: allow variables to be set via second return value of `Doc`Albert Krewinkel
New templates variables can be added by giving variable-value pairs as a second return value of the global function `Doc`. Example: function Doc (body, meta, vars) vars.date = vars.date or os.date '%B %e, %Y' return body, vars end Closes: #6731
2021-12-06custom-writers.md: use filter to include source of example.John MacFarlane
2021-11-21Add custom-writers.md.John MacFarlane