merged the translation over to using my templates
[freedom_for_users-l10n] / render_templates.py
diff --git a/render_templates.py b/render_templates.py
new file mode 100755 (executable)
index 0000000..299c6a1
--- /dev/null
@@ -0,0 +1,40 @@
+#!/usr/bin/env python
+
+import os
+import re
+import codecs
+from time import ctime
+from os.path import walk, getctime
+
+root = os.path.dirname(os.path.abspath(__file__))
+
+from jinja2 import Environment, FileSystemLoader
+jinja_env = Environment(loader=FileSystemLoader(root))
+
+def render_walk(arg=None, dirname='', filenames=[]):
+    for filename in filenames:
+        match = re.match(r'(.*)\.tmpl$', filename)
+        if match:
+            filename_base = match.group(1)
+
+            # skip if this is the layout file
+            if filename_base == 'layout': continue
+            if filename_base == 'latex-like-layout': continue
+
+            vars = { 'last_modified' :
+                     unicode(ctime(getctime(os.path.join(dirname, filename)))) }
+
+            # remove the root from the dirname
+            dirname = re.sub(re.escape(root) + r'/?(.*)$', r'\1', dirname) 
+
+            tmpl = jinja_env.get_template(os.path.join(dirname, filename))
+            tmpl.render(vars)
+
+            output_file = codecs.open(os.path.join(dirname, filename_base + '.html'), 'w', 'utf-8')
+            print >>output_file, tmpl.render(vars)
+            output_file.close()
+
+os.chdir(root)
+walk(root, render_walk, None)
+
+

Benjamin Mako Hill || Want to submit a patch?