Panda is a Pandoc Lua filter that works on internal Pandoc's AST.
It provides several interesting features:
- variable expansion (minimalistic templating)
- conditional blocks
- file inclusion (e.g. for source code examples)
- script execution (e.g. to include the result of a command)
- diagrams (Graphviz, PlantUML, Asymptote, blockdiag, mermaid...)
Panda is heavily inspired by abp reimplemented as a Pandoc Lua filter.
If you need a more generic text preprocessor, UPP may be a better choice.
$ git clone https://github.com/CDSoft/panda.git
$ cd panda
$ make install # install panda and panda.lua in ~/.local/bin
$ make test
$ pandoc -L panda.lua ...
or
$ panda ...
The full documentation is in doc/panda.md. The rendered version of the documentation is here: http://cdelord.fr/panda.
This file is part of Panda.
Panda is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Panda is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Panda. If not, see <https://www.gnu.org/licenses/>.
For further information about Panda you can visit
http://cdelord.fr/panda