12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- #!/usr/bin/env python3
- from __future__ import print_function
- import os
- from scriptCommon import catchPath
- def isSourceFile( path ):
- return path.endswith( ".cpp" ) or path.endswith( ".h" ) or path.endswith( ".hpp" )
- def fixAllFilesInDir( dir ):
- changedFiles = 0
- for f in os.listdir( dir ):
- path = os.path.join( dir,f )
- if os.path.isfile( path ):
- if isSourceFile( path ):
- if fixFile( path ):
- changedFiles += 1
- else:
- fixAllFilesInDir( path )
- return changedFiles
- def fixFile( path ):
- f = open( path, 'r' )
- lines = []
- changed = 0
- for line in f:
- trimmed = line.rstrip() + "\n"
- trimmed = trimmed.replace('\t', ' ')
- if trimmed != line:
- changed = changed +1
- lines.append( trimmed )
- f.close()
- if changed > 0:
- global changedFiles
- changedFiles = changedFiles + 1
- print( path + ":" )
- print( " - fixed " + str(changed) + " line(s)" )
- altPath = path + ".backup"
- os.rename( path, altPath )
- f2 = open( path, 'w' )
- for line in lines:
- f2.write( line )
- f2.close()
- os.remove( altPath )
- return True
- return False
- changedFiles = fixAllFilesInDir(catchPath)
- if changedFiles > 0:
- print( "Fixed " + str(changedFiles) + " file(s)" )
- else:
- print( "No trailing whitespace found" )
|