aboutsummaryrefslogtreecommitdiff
path: root/template.py
diff options
context:
space:
mode:
Diffstat (limited to 'template.py')
-rwxr-xr-xtemplate.py15
1 files changed, 12 insertions, 3 deletions
diff --git a/template.py b/template.py
index aab6fddd..1fdf3b85 100755
--- a/template.py
+++ b/template.py
@@ -2,6 +2,7 @@
2 2
3import os 3import os
4import sys 4import sys
5import re
5import gettext 6import gettext
6import jinja2 7import jinja2
7 8
@@ -10,7 +11,8 @@ if len(sys.argv) < 3:
10 11
11in_file = sys.argv[1] 12in_file = sys.argv[1]
12locale = sys.argv[2] 13locale = sys.argv[2]
13out_file = sys.argv[3] 14
15name, ext = re.match(r"(.*)\.([^.]+)$", in_file.rstrip(".j2")).groups()
14 16
15tr = gettext.translation("messages", 17tr = gettext.translation("messages",
16 localedir="locale", 18 localedir="locale",
@@ -23,12 +25,19 @@ env.install_gettext_translations(tr, newstyle=True)
23 25
24tmpl = env.get_template(in_file) 26tmpl = env.get_template(in_file)
25 27
28def self_localized(x):
29 return ".".join((name, x, ext))
30
31def url_localized(my_file):
32 my_name, my_ext = re.match(r"(.*)\.([^.]+)$", my_file).groups()
33 return ".".join((my_name, locale, my_ext))
34
26def url(x): 35def url(x):
27 # TODO: look at the app root environment variable 36 # TODO: look at the app root environment variable
28 # TODO: check if file exists 37 # TODO: check if file exists
29 return x 38 return x
30 39
31import codecs 40import codecs
32f = codecs.open(out_file, "w", "utf-8") 41f = codecs.open(".".join((name, locale, ext)), "w", "utf-8")
33f.write(tmpl.render(lang=locale, url=url)) 42f.write(tmpl.render(lang=locale, url=url, self_localized=self_localized, url_localized=url_localized))
34f.close() 43f.close()