view unixSoft/bin/epylint @ 223:739d96003993

af-no-clean-whitespace: make interactive for easy disabling when it is just noise.
author Augie Fackler <durin42@gmail.com>
date Mon, 20 Sep 2010 07:35:29 -0500
parents 7f67cf332537
children
line wrap: on
line source

#!/usr/bin/env python
import re
import sys

from subprocess import Popen, PIPE

p = Popen("pylint -f parseable -r n --disable-msg-cat=C,R %s" %
          sys.argv[1], shell = True, stdout = PIPE).stdout

for line in p.readlines():
    match = re.search("\\[([WE])(, (.+?))?\\]", line)
    if match:
        kind = match.group(1)
        func = match.group(3)
        if kind == "W":
            msg = "Warning"
        else:
            msg = "Error"

        if func:
            line = re.sub("\\[([WE])(, (.+?))?\\]",
                          "%s (%s):" % (msg, func), line)
        else:
            line = re.sub("\\[([WE])?\\]", "%s:" % msg, line)
    print line,

    p.close()