aboutsummaryrefslogtreecommitdiff
path: root/doc/lua-filters.md
AgeCommit message (Collapse)AuthorFilesLines
2019-02-16doc/lua-filters.md: fixed typos in mediabag docs.Albert Krewinkel1-3/+3
2019-02-09Lua filters: load module `pandoc` before calling `init.lua` (#5287)Albert Krewinkel1-14/+10
The file `init.lua` in pandoc's data directory is run as part of pandoc's Lua initialization process. Previously, the `pandoc` module was loaded in `init.lua`, and the structure for marshaling was set-up after. This allowed simple patching of element marshaling, but made using `init.lua` more difficult: - it encouraged mixing essential initialization with user-defined customization; - upstream changes to init.lua had to be merged manually; - accidentally breaking marshaling by removing required modules was possible; Instead, all required modules are now loaded before calling `init.lua`. The file can be used entirely for user customization. Patching marshaling functions, while discouraged, is still possible via the `debug` module.
2019-02-09data/pandoc.lua: re-export all bundled modulesAlbert Krewinkel1-2/+9
All Lua modules bundled with pandoc, i.e., `pandoc.List`, `pandoc.mediabag`, `pandoc.utils`, and `text` are re-exported from the `pandoc` module. They are assigned to the fields `List`, `mediabag`, `utils`, and `text`, respectively.
2019-02-08Small fix in lua-filters doc.John MacFarlane1-1/+1
2019-02-07data/pandoc.lua: re-export List and utils moduleAlbert Krewinkel1-1/+21
2019-02-01doc/lua-filters.md: fix docs for OrderedList itemsAlbert Krewinkel1-3/+1
2019-01-31More improvements on lua-filters docs.John MacFarlane1-342/+386
2019-01-30doc/lua-filters.md: use 3rd level headers for module fieldsAlbert Krewinkel1-664/+664
2018-11-19Lua filters: test AST object equality via HaskellAlbert Krewinkel1-1/+47
Equality of Lua objects representing pandoc AST elements is tested by unmarshalling the objects and comparing the result in Haskell. A new function `equals` which performs this test has been added to the `pandoc.utils` module. Closes: #5092
2018-10-25Lua: allow access to pandoc state (#5015)Albert Krewinkel1-0/+47
* Lua: allow access to pandoc state Lua filters and custom writers now have read-only access to most fields of pandoc's internal state via the global variable `PANDOC_STATE`. * Lua: allow iterating through fields of PANDOC_STATE * Lua filters doc: describe CommonState * Lua filters doc: mention global variable PANDOC_STATE * Lua: add access to logs Log messages can currently only be printed, but not decomposed.
2018-10-19Lua filter doc: merge type references into main documentAlbert Krewinkel1-1/+665
2018-10-11data/pandoc.lua: add datatype ListAttributesAlbert Krewinkel1-0/+17
Make ListAttributes a datatype. The type is similar to Attr.
2018-10-06Lua filter doc: fix description of Code.textAlbert Krewinkel1-1/+1
2018-09-07lua-filters.md: add links to filters, and to lua-filters repository.John MacFarlane1-5/+10
Closes #4874.
2018-07-30Lua Utils module: add function blocks_to_inlines (#4799)Albert Krewinkel1-0/+31
Exposes a function converting which flattenes a list of blocks into a list of inlines. An example use case would be the conversion of Note elements into other inlines.
2018-07-02More spellcheckAlexander Krotov1-1/+1
2018-03-19Fix example in lua-filters docs. Fixes #4459 (#4476)HeirOfNorton1-1/+1
2018-02-24doc/lua-filters.md: document global vars set for filtersAlbert Krewinkel1-3/+36
2018-01-13Lua modules: add function pandoc.utils.run_json_filterAlbert Krewinkel1-0/+31
Runs a JSON filter on a Pandoc document.
2018-01-07data/pandoc.lua: fix docstringsAlbert Krewinkel1-0/+2
Change: minor
2017-12-29Update tool which generates lua module docsAlbert Krewinkel1-8/+6
All "helper functions" are not part of the Lua code for module pandoc, but are added in Haskell. The respective documentation section must therefore be excluded from automatic regeneration.
2017-12-29data/pandoc.lua: drop function pandoc.global_filterAlbert Krewinkel1-19/+0
The function `global_filter` was used internally to get the implicitly defined global filter. It was of little value to end-users, but caused unnecessary code duplication in pandoc. The function has hence been dropped. Internally, the global filter is now received by interpreting the global table as lua filter. This is a Lua API change.
2017-12-29doc/lua-filters.md: re-add docs for helper functionsAlbert Krewinkel1-0/+75
These docs are dropped, as the functions are no longer part of data/pandoc.lua, from which this section is generated. This is only a temporary fix: a proper fix will have to re-think how this section is updated.
2017-12-29data/pandoc.lua: fix documentation for global_filterAlbert Krewinkel1-15/+4
2017-12-28Update lua-filters.md and the tool that generates it.John MacFarlane1-181/+107
2017-12-28Update docs on filters.John MacFarlane1-5/+4
2017-12-26Tweaks to lua-filters.md docsJohn MacFarlane1-2/+3
2017-12-23Lua modules: add function pandoc.utils.hierarchicalizeAlbert Krewinkel1-0/+28
Convert list of Pandoc blocks into (hierarchical) list of Elements.
2017-12-23Lua modules: add function pandoc.utils.normalize_dateAlbert Krewinkel1-0/+11
The function parses a date and converts it (if possible) to "YYYY-MM-DD" format.
2017-12-23Lua modules: add function pandoc.utils.to_roman_numeralAlbert Krewinkel1-3/+18
The function allows conversion of numbers below 4000 into roman numerals.
2017-12-22doc/lua-filter.md: document pandoc.utils.stringifyAlbert Krewinkel1-10/+27
Change: minor
2017-12-21Lua modules: added pandoc.utils moduleAlbert Krewinkel1-14/+21
A new module `pandoc.utils` has been created. It holds utility functions like `sha1`, which was moved from the main `pandoc` module.
2017-12-06Lua filters: use script to initialize the interpreterAlbert Krewinkel1-1/+29
The file `init.lua` is used to initialize the Lua interpreter which is used in Lua filters. This gives users the option to require libraries which they want to use in all of their filters, and to extend default modules.
2017-12-01Lua/StackInstances: push Pandoc and Meta via constructorAlbert Krewinkel1-0/+11
Pandoc and Meta elements are now pushed by calling the respective constructor functions of the pandoc Lua module. This makes serialization consistent with the way blocks and inlines are pushed to lua and allows to use List methods with the `blocks` value.
2017-12-01lua-filters.md: add documentation for pandoc.ListAlbert Krewinkel1-0/+103
2017-11-21lua-filters.md - added tikz filter example.John MacFarlane1-0/+83
2017-11-20Update title and authors on lua-filters.md.John MacFarlane1-3/+4
2017-11-18Documented text module for lua-filters.John MacFarlane1-0/+37
See #4077.
2017-11-18Update man page lua filter to use text module.John MacFarlane1-1/+4
2017-11-12More efficient wordcount.lua example.John MacFarlane1-2/+1
2017-11-12lua-filters.md: add wordcount example.John MacFarlane1-0/+47
2017-11-12Improve handout example.John MacFarlane1-2/+5
2017-11-12Fixed typo in lua-filters exmaple.John MacFarlane1-1/+1
2017-11-12lua-filters.md doc: Added handout example.John MacFarlane1-0/+21
2017-11-12Fix a typo: "uisng" -> "using"Alexander Krotov1-1/+1
2017-11-11lua-filters.md: use real-world man page filter as example.John MacFarlane1-4/+17
2017-11-11Add lua filter functions to walk inline and block elements.John MacFarlane1-1/+48
Refactored some code from Text.Pandoc.Lua.PandocModule into new internal module Text.Pandoc.Lua.Filter. Add `walk_inline` and `walk_block` in pandoc lua module.
2017-10-05pandoc.lua: throw better error when pipe command failsAlbert Krewinkel1-0/+6
A table containing the error code, command, and command output is thrown instead of just a string error message.
2017-10-04lua-filters.md: fix link to module documentationAlbert Krewinkel1-1/+1
2017-10-03Added abc.lua example to lua-filters documentation.John MacFarlane1-14/+61
Also fixed docs for `pipe`.