From 41ecc60e682a745e55ab2a2ebb9770c953452ce5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Remko=20Tron=C3=A7on?= <git@el-tramo.be>
Date: Mon, 21 Mar 2011 20:47:31 +0100
Subject: Added CheckTranslations script.


diff --git a/BuildTools/CheckTranslations.py b/BuildTools/CheckTranslations.py
new file mode 100755
index 0000000..5796bac
--- /dev/null
+++ b/BuildTools/CheckTranslations.py
@@ -0,0 +1,29 @@
+#!/usr/bin/env python
+
+import os, sys, re, xml.dom.minidom
+
+def getText(nodelist):
+  text = ""
+  for node in nodelist:
+    if node.nodeType == node.TEXT_NODE:
+      text += node.data
+  return text
+
+
+for filename in os.listdir("Swift/Translations") :
+  m = re.match("swift_(.*)\.ts", filename)
+  if m :
+    language = m.group(1)
+    f = open("Swift/Translations/" + filename, "r")
+    document = xml.dom.minidom.parse(f)
+    f.close()
+
+    for message in document.getElementsByTagName("message") :
+      source = message.getElementsByTagName("source")[0]
+      sourceText = getText(source.childNodes)
+      sourcePlaceholders = set(re.findall("%\d+%?", sourceText))
+      translation = message.getElementsByTagName("translation")[0]
+      translationText = getText(translation.childNodes)
+      translationPlaceholders = set(re.findall("%\d+%?", translationText))
+      if translationPlaceholders != sourcePlaceholders :
+        print "[Error] " + filename + ": Placeholder mismatch in translation '" + sourceText + "'"
-- 
cgit v0.10.2-6-g49f6