A CLI interface to Jinja2
$ jinja2 helloworld.tmpl data.json --format=json$ cat data.json | jinja2 helloworld.tmpl$ curl -s http://httpbin.org/ip | jinja2 helloip.tmpl$ curl -s http://httpbin.org/ip | jinja2 helloip.tmpl > helloip.html
$ pip install jinja2-cli
Usage: jinja2 [options] <input template> <input data>Options: --version show program's version number and exit -h, --help show this help message and exit --format=FORMAT format of input variables: auto, ini, json, querystring, yaml, yml -e EXTENSIONS, --extension=EXTENSIONS extra jinja2 extensions to load -D key=value Define template variable in the form of key=value -s SECTION, --section=SECTION Use only this section from the configuration --strict Disallow undefined variables to be used within the template
IfPyYAML
is present, you can use YAML as an input data source.
$ pip install jinja2-cli[yaml]
Iftoml
is present, you can use TOML as an input data source.
$ pip install jinja2-cli[toml]
Ifxmltodict
is present, you can use XML as an input data source.
$ pip install jinja2-cli[xml]
Ifhjson
is present, you can use HJSON as an input data source.
$ pip install jinja2-cli[hjson]
Ifjson5
is present, you can use JSON5 as an input data source.
$ pip install jinja2-cli[json5]
- Variable inheritance and overrides
- Tests!