-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
109 lines (77 loc) · 1.91 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
What's tinpy?
=============
tinpy is a "tiny python template". This is template description language
like the "Template Toolkit" for Python.
Python is simple and powerful script language.
That language site is https://www.python.org/
Quick Start
===========
Require python distutils.(https://www.python.org/sigs/distutils-sig/)
$ python setup.py install
Below case is become root-user if required.
$ su
Password:
# python setup.py install
Usage
=====
This sample is listing current directory and generate HTML table.
--- cut below ---
#!/usr/bin/env python
import tinpy
import os
from stat import ST_MODE, S_ISDIR
# Generate file list table.
dirlist = []
for fn in os.listdir('.'):
if S_ISDIR(os.stat(fn)[ST_MODE]):
dirlist.append(('Dir', fn))
else:
dirlist.append(('File', fn))
# Template .
print tinpy.build("""
<table>
[% for file in dirlist %]
<tr>
[% for col in file %]
<td>[% var col %]</td>
[% done %]
</tr>
[% done %]
</table>
""", dirlist=dirlist)
--- cut above ---
And more example is tinpy.py test code. For example,
$ python ./tinpy.py
Template syntax
===============
This language syntax like "Template Toolkit", keyword like sh.
And more simple than these.
Extract variable:
[%var varname%]
Extract dictionary:
[%var dic['key']%]
Variable sequence loop:
[%for varname in sequence%]
[%varname%]
[%done%]
Escaping template:
template to
---------- --
[% stag %] [%
[% etag %] %]
Comment:
[%comment begin%]
--- comment here ---
[%comment end%]
Python API
==========
tinpy.build(template, vardict={}, **kw)
Build from template and variables. vardict and kw is variable for template.
template is string characters or compiled template object (see next).
tinpy.compile(template)
Compile a template object from string characters.
Created object can be used for build().
Contact
=======
mailto:[email protected]
Have fun :)