diff options
| author | Patrick Walton <[email protected]> | 2010-08-18 16:07:26 -0700 |
|---|---|---|
| committer | Patrick Walton <[email protected]> | 2010-08-18 16:14:44 -0700 |
| commit | 64be30936b3068e5964f6f1e5878411ec8bc646f (patch) | |
| tree | cadf3213038bfbd599c437a02fd505ffe02673f5 /src | |
| parent | Revert "Don't complain about \r when core.autocrlf is on in Git" (diff) | |
| download | rust-64be30936b3068e5964f6f1e5878411ec8bc646f.tar.xz rust-64be30936b3068e5964f6f1e5878411ec8bc646f.zip | |
Don't complain about \r when core.autocrlf is on in Git... and work in Python 2.4, 2.6, and 3.x.
Diffstat (limited to 'src')
| -rw-r--r-- | src/etc/tidy.py | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/etc/tidy.py b/src/etc/tidy.py index eff967bf..41908ac4 100644 --- a/src/etc/tidy.py +++ b/src/etc/tidy.py @@ -1,10 +1,18 @@ -#!/usr/bin/python +#!/usr/bin/python2.5 -import sys, fileinput +import sys, fileinput, subprocess err=0 cols=78 +# Be careful to support Python 2.4, 2.6, and 3.x here! +config_proc=subprocess.Popen([ "git", "config", "core.autocrlf" ], + stdout=subprocess.PIPE) +result=config_proc.communicate()[0] + +true="true".encode('utf8') +autocrlf=result.strip() == true if result is not None else False + def report_err(s): global err print("%s:%d: %s" % (fileinput.filename(), fileinput.filelineno(), s)) @@ -14,10 +22,11 @@ for line in fileinput.input(openhook=fileinput.hook_encoded("utf-8")): if line.find('\t') != -1 and fileinput.filename().find("Makefile") == -1: report_err("tab character") - if line.find('\r') != -1: + if not autocrlf and line.find('\r') != -1: report_err("CR character") - if len(line)-1 > cols: + line_len = len(line)-2 if autocrlf else len(line)-1 + if line_len > cols: report_err("line longer than %d chars" % cols) |