command line jinja2 template (yet another j2cli)
Project description
example
$ kamidana examples/readme/nginx.jinja2 --data examples/readme/data.json
server {
listen 80;
server_name localhost;
root /var/www/project;
index index.htm;
access_log /var/log/nginx/http.access.log combined;
error_log /var/log/nginx/http.error.log;
}
nginx.jinja2
server {
listen 80;
server_name {{ nginx.hostname }};
root {{ nginx.webroot }};
index index.htm;
access_log {{ nginx.logdir }}/http.access.log combined;
error_log {{ nginx.logdir }}/http.error.log;
}
data.json
{
"nginx": {
"hostname": "localhost",
"webroot": "/var/www/project",
"logdir": "/var/log/nginx"
}
}
example2 (–additionals)
$ kamidana --additionals=./examples/readme2/additionals.py --data=./examples/readme2/data.yaml ./examples/readme2/hello.jinja2
bye, world!!
hello.jinja2
{% if 19 is night %}
{{night}}, {{name|surprised}}
{% else %}
{{daytime}}, {{name|surprised}}
{% endif %}
additionals.py
from kamidana import (
as_filter,
as_globals_generator,
as_test,
)
@as_filter
def surprised(v):
return "{}!!".format(v)
@as_globals_generator
def generate_globals():
return {"daytime": "hello", "night": "bye"}
@as_test
def night(hour):
return 19 <= hour or hour < 3
data.yaml
name: world
0.3.0
add –extension option
add –dump-context option
0.2.1
rename Loader to TemplateLoader
0.2.0
–loader option is added
interfaces are defined
0.1.0
first release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
kamidana-0.3.0.tar.gz
(5.8 kB
view hashes)
Built Distribution
Close
Hashes for kamidana-0.3.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1f47ae300ca3e7d6b04e555ada2aace52d3d4284f3ab1a174af47cf93e448d0 |
|
MD5 | 9a7d175b38cb8287f8fd2eb7e164f3bf |
|
BLAKE2b-256 | 35120bd2ab9c4c7db047bb8f47305822f9299626907d163d30719495fb6066fa |