aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile7
-rwxr-xr-xtemplate.py29
-rwxr-xr-xtemplate.sh9
3 files changed, 43 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index b9a72a9a..84bf8218 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,5 @@
1all: locale 1all: template
2 cd web-common && tsc taler-wallet-lib.ts && cd .. 2 cd web-common && tsc taler-wallet-lib.ts
3 3
4locale/messages.pot: *.j2 common/*.j2 4locale/messages.pot: *.j2 common/*.j2
5 pybabel extract -F locale/babel.map -o locale/messages.pot . 5 pybabel extract -F locale/babel.map -o locale/messages.pot .
@@ -19,3 +19,6 @@ locale-compile: locale-update
19 pybabel compile -d locale -l es --use-fuzzy 19 pybabel compile -d locale -l es --use-fuzzy
20 20
21locale: locale-compile 21locale: locale-compile
22
23template: locale
24 ./template.sh
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
3import os
4import sys
5import gettext
6import jinja2
7
8if len(sys.argv) < 3:
9 sys.exit("Usage: " + __file__ + " <template-file> <locale> <output-file>")
10
11in_file = sys.argv[1]
12locale = sys.argv[2]
13out_file = sys.argv[3]
14
15tr = gettext.translation("messages",
16 localedir="locale",
17 languages=[locale])
18
19env = jinja2.Environment(loader=jinja2.FileSystemLoader(os.path.dirname(__file__)),
20 extensions=["jinja2.ext.i18n"],
21 autoescape=False)
22env.install_gettext_translations(tr, newstyle=True)
23
24tmpl = env.get_template(in_file)
25
26import codecs
27f = codecs.open(out_file, "w", "utf-8")
28f.write(tmpl.render())
29f.close()
diff --git a/template.sh b/template.sh
new file mode 100755
index 00000000..4d498c71
--- /dev/null
+++ b/template.sh
@@ -0,0 +1,9 @@
1#!/bin/sh
2
3for f in $(git ls-files *.j2 common/*.j2); do
4 for ld in locale/*/; do
5 l=$(basename $ld)
6 echo "$f: $l"
7 python template.py $f $l $(basename $f .html.j2).$l.html
8 done
9done