diff options
Diffstat (limited to 'template.py')
-rwxr-xr-x | template.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/template.py b/template.py new file mode 100755 index 00000000..86516bb6 --- /dev/null +++ b/template.py | |||
@@ -0,0 +1,29 @@ | |||
1 | #!/usr/bin/env python | ||
2 | |||
3 | import os | ||
4 | import sys | ||
5 | import gettext | ||
6 | import jinja2 | ||
7 | |||
8 | if len(sys.argv) < 3: | ||
9 | sys.exit("Usage: " + __file__ + " <template-file> <locale> <output-file>") | ||
10 | |||
11 | in_file = sys.argv[1] | ||
12 | locale = sys.argv[2] | ||
13 | out_file = sys.argv[3] | ||
14 | |||
15 | tr = gettext.translation("messages", | ||
16 | localedir="locale", | ||
17 | languages=[locale]) | ||
18 | |||
19 | env = jinja2.Environment(loader=jinja2.FileSystemLoader(os.path.dirname(__file__)), | ||
20 | extensions=["jinja2.ext.i18n"], | ||
21 | autoescape=False) | ||
22 | env.install_gettext_translations(tr, newstyle=True) | ||
23 | |||
24 | tmpl = env.get_template(in_file) | ||
25 | |||
26 | import codecs | ||
27 | f = codecs.open(out_file, "w", "utf-8") | ||
28 | f.write(tmpl.render()) | ||
29 | f.close() | ||