From 392775f615a53c22587178b453280f5a6441db2d Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Sat, 28 Mar 2009 19:33:33 +0000 Subject: [PATCH] Add a script to fixup rst files if the pre-commit hook rejects them. --- Tools/scripts/reindent-rst.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100755 Tools/scripts/reindent-rst.py diff --git a/Tools/scripts/reindent-rst.py b/Tools/scripts/reindent-rst.py new file mode 100755 index 00000000000..bf431d956cd --- /dev/null +++ b/Tools/scripts/reindent-rst.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python + +# Make a reST file compliant to our pre-commit hook. +# Currently just remove trailing whitespace. + +from __future__ import with_statement +import sys, re, shutil + +ws_re = re.compile(r'\s+(\r?\n)$') + +def main(argv=sys.argv): + rv = 0 + for filename in argv[1:]: + try: + with open(filename, 'rb') as f: + lines = f.readlines() + new_lines = [ws_re.sub(r'\1', line) for line in lines] + if new_lines != lines: + print 'Fixing %s...' % filename + shutil.copyfile(filename, filename + '.bak') + with open(filename, 'wb') as f: + f.writelines(new_lines) + except Exception, err: + print 'Cannot fix %s: %s' % (filename, err) + rv = 1 + return rv + +if __name__ == '__main__': + sys.exit(main())