diff --git a/bindings/python/clang/cindex.py b/bindings/python/clang/cindex.py
index 446d80d..e683f5b 100644
--- a/bindings/python/clang/cindex.py
+++ b/bindings/python/clang/cindex.py
@@ -1693,8 +1693,8 @@
 
     @CachedProperty
     def spelling(self):
-	if self.__kindNumber in SpellingCache:
-		return SpellingCache[self.__kindNumber]
+        if self.__kindNumber in SpellingCache:
+                return SpellingCache[self.__kindNumber]
         return conf.lib.clang_getCompletionChunkText(self.cs, self.key).spelling
 
     # We do not use @CachedProperty here, as the manual implementation is
@@ -1704,7 +1704,7 @@
     def __kindNumber(self):
         if self.__kindNumberCache == -1:
             self.__kindNumberCache = \
-		conf.lib.clang_getCompletionChunkKind(self.cs, self.key)
+                conf.lib.clang_getCompletionChunkKind(self.cs, self.key)
         return self.__kindNumberCache
 
     @CachedProperty
