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