blob: 55b99ebabad8c93ded8507e2bfa87e337371e186 [file] [log] [blame]
Benjamin Petersonded31c42009-03-30 15:04:16 +00001#!/usr/bin/env python
2
3# Make a reST file compliant to our pre-commit hook.
4# Currently just remove trailing whitespace.
5
Georg Brandl17b9e272009-03-31 22:46:50 +00006
Benjamin Petersonded31c42009-03-30 15:04:16 +00007import sys, re, shutil
8
9ws_re = re.compile(r'\s+(\r?\n)$')
10
11def main(argv=sys.argv):
12 rv = 0
13 for filename in argv[1:]:
14 try:
15 with open(filename, 'rb') as f:
16 lines = f.readlines()
17 new_lines = [ws_re.sub(r'\1', line) for line in lines]
18 if new_lines != lines:
Georg Brandl17b9e272009-03-31 22:46:50 +000019 print('Fixing %s...' % filename)
Benjamin Petersonded31c42009-03-30 15:04:16 +000020 shutil.copyfile(filename, filename + '.bak')
21 with open(filename, 'wb') as f:
22 f.writelines(new_lines)
Georg Brandl17b9e272009-03-31 22:46:50 +000023 except Exception as err:
24 print('Cannot fix %s: %s' % (filename, err))
Benjamin Petersonded31c42009-03-30 15:04:16 +000025 rv = 1
26 return rv
27
28if __name__ == '__main__':
29 sys.exit(main())