From 9ed3516fc091010637b7eba3678a1566507c59eb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Remko=20Tron=C3=A7on?= <git@el-tramo.be>
Date: Sun, 16 Aug 2009 20:27:12 +0200
Subject: Ported CheckTabs script to Python.


diff --git a/BuildTools/CheckTabs.py b/BuildTools/CheckTabs.py
new file mode 100755
index 0000000..3dac977
--- /dev/null
+++ b/BuildTools/CheckTabs.py
@@ -0,0 +1,36 @@
+#!/usr/bin/env python
+
+import os, sys
+
+for (path, dirs, files) in os.walk(".") :
+	if not "3rdParty" in path :
+		for filename in [os.path.join(path, file) for file in files if file.endswith(".cpp") or file.endswith(".h")] :
+			file = open(filename, "r")
+			contents = []
+			contentsChanged = False
+			for line in file.readlines() :
+				newline = ""
+				previousChar = None
+				pastInitialSpace = False
+				for char in line :
+					if not pastInitialSpace :
+						if char == ' ' and previousChar == ' ' :
+							contentsChanged = True
+							previousChar = '\t'
+							continue
+						pastInitialSpace = (char != ' ')
+					if previousChar :
+						newline += previousChar
+					previousChar = char
+				if previousChar :
+					newline += previousChar
+				contents.append(newline)
+			file.close()
+			if contentsChanged :
+				if len(sys.argv) > 1 and sys.argv[1] == "--fix" :
+					print "Fixing tabs in " + filename
+					file = open(filename, "w")
+					file.write(''.join(contents))
+					file.close()
+				else :
+					print filename + " contains expanded tabs"
diff --git a/tools/syntax/CheckTabs.sh b/tools/syntax/CheckTabs.sh
deleted file mode 100755
index 0c11c49..0000000
--- a/tools/syntax/CheckTabs.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/usr/bin/env sh
-
-FAILING_FILES=`grep -r "^ " * | grep -E "^(\w|/)+\.(cpp|h):" | grep -E -v "^(src/(Swift/)?)?3rdParty" | grep -v "^.*moc_" | sed -e "s/:.*//" | uniq`
-
-if [ "$FAILING_FILES" ]; then
-	echo "ERROR: Found whitespace instead of tabs in the following files:"
-	echo "$FAILING_FILES"
-fi
-- 
cgit v0.10.2-6-g49f6