UtilitiesPython2/Pep8Checker.py

Mon, 16 Sep 2013 19:47:06 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Mon, 16 Sep 2013 19:47:06 +0200
changeset 2917
fe82710d02cb
parent 2896
9fa71ee50b3d
child 2929
28ab0bc63d69
permissions
-rw-r--r--

Did the Python2 variant of the PEP-257 checker.

842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
2302
f29e9405c851 Updated copyright for 2013.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1509
diff changeset
3 # Copyright (c) 2011 - 2013 Detlev Offenbach <detlev@die-offenbachs.de>
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Class implementing the PEP 8 checker for Python2.
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10 import sys
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11 import getopt
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13 from Tools import readEncodedFile, normalizeCode
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15 import pep8
2896
9fa71ee50b3d Finished the pEP-8 naming checker implementation by doing the Py2 variant.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2864
diff changeset
16 from Pep8NamingCheckerPy2 import Pep8NamingChecker
9fa71ee50b3d Finished the pEP-8 naming checker implementation by doing the Py2 variant.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2864
diff changeset
17
9fa71ee50b3d Finished the pEP-8 naming checker implementation by doing the Py2 variant.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2864
diff changeset
18 # register the name checker
9fa71ee50b3d Finished the pEP-8 naming checker implementation by doing the Py2 variant.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2864
diff changeset
19 pep8.register_check(Pep8NamingChecker, Pep8NamingChecker.Codes)
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20
2917
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
21 from Pep257CheckerPy2 import Pep257Checker
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
22
843
522c8befcf49 Continued implementing a PRP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 842
diff changeset
23
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
24 class Pep8Report(pep8.BaseReport):
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 """
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
26 Class implementing a special report to be used with our dialog.
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 """
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
28 def __init__(self, options):
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 """
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 Constructor
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
32 @param options options for the report (optparse.Values)
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 """
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
34 super(Pep8Report, self).__init__(options)
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
36 self.__repeat = options.repeat
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
37 self.errors = []
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
39 def error_args(self, line_number, offset, code, check, *args):
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 """
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 Public method to collect the error messages.
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 @param line_number line number of the issue (integer)
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 @param offset position within line of the issue (integer)
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 @param code message code (string)
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 @param check reference to the checker function (function)
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 @param args arguments for the message (list)
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 """
2896
9fa71ee50b3d Finished the pEP-8 naming checker implementation by doing the Py2 variant.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2864
diff changeset
49 code = super(Pep8Report, self).error_args(
9fa71ee50b3d Finished the pEP-8 naming checker implementation by doing the Py2 variant.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2864
diff changeset
50 line_number, offset, code, check, *args)
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
51 if code and (self.counters[code] == 1 or self.__repeat):
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
52 self.errors.append(
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
53 (self.filename, line_number, offset, code, args)
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 )
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
55 return code
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
56
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 if __name__ == "__main__":
843
522c8befcf49 Continued implementing a PRP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 842
diff changeset
59 repeat = False
522c8befcf49 Continued implementing a PRP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 842
diff changeset
60 select = ""
522c8befcf49 Continued implementing a PRP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 842
diff changeset
61 ignore = ""
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 filename = ""
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
63 max_line_length = 79
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
64 hang_closing = False
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66 if "-f" not in sys.argv:
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 print "ERROR"
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 print ""
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69 print "No file name given."
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
70 else:
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71 try:
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
72 optlist, args = getopt.getopt(sys.argv[1:], "f:hi:m:rs:")
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 except getopt.GetoptError:
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74 print "ERROR"
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 print ""
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76 print "Wrong arguments given"
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 sys.exit(1)
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
78
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
79 for opt, arg in optlist:
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80 if opt == "-r":
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
81 repeat = True
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
82 elif opt == "-f":
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
83 filename = arg
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
84 elif opt == "-i":
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
85 ignore = arg
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
86 elif opt == "-s":
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
87 select = arg
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
88 elif opt == "-m":
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
89 try:
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
90 max_line_length = int(arg)
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
91 except ValueError:
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
92 # ignore silently
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
93 pass
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
94 elif opt == "-h":
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
95 hang_closing = True
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
96
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
97 try:
2917
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
98 source = readEncodedFile(filename)[0]
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
99 source = normalizeCode(source)
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
100 source = source.splitlines(True)
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
101 except IOError, msg:
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
102 print "ERROR"
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
103 print filename
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
104 print "I/O Error: %s" % unicode(msg)
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
105 sys.exit(1)
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
106
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
107 if select:
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
108 select = [s.strip() for s in select.split(',')
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
109 if s.strip()]
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
110 else:
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
111 select = []
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
112 if ignore:
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
113 ignore = [i.strip() for i in ignore.split(',')
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
114 if i.strip()]
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
115 else:
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
116 ignore = []
2917
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
117
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
118 # check PEP-8
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
119 styleGuide = pep8.StyleGuide(
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
120 reporter=Pep8Report,
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
121 repeat=repeat,
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
122 select=select,
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
123 ignore=ignore,
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
124 max_line_length=max_line_length,
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
125 hang_closing=hang_closing,
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
126 )
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
127 report = styleGuide.check_files([filename])
2917
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
128
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
129 # check PEP-257
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
130 pep257Checker = Pep257Checker(
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
131 source, file, select, ignore, [], repeat,
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
132 maxLineLength=max_line_length)
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
133 pep257Checker.run()
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
134
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
135
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
136 errors = report.errors + pep257Checker.errors
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
137
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
138 if len(errors) > 0:
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
139 errors.sort(key=lambda a: a[1])
fe82710d02cb Did the Python2 variant of the PEP-257 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2896
diff changeset
140 for error in errors:
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
141 fname, lineno, position, code, args = error
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
142 print "PEP8"
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
143 print fname
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
144 print lineno
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
145 print position
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
146 print code
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
147 print len(args)
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
148 for a in args:
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
149 print a
847
cc18fbcde9fc Added a dialog to show some statistics for the last PEP 8 check to the PEP 8 dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 843
diff changeset
150 print "PEP8_STATISTICS"
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
151 for key in report.counters:
2896
9fa71ee50b3d Finished the pEP-8 naming checker implementation by doing the Py2 variant.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2864
diff changeset
152 if key.startswith(("E", "N", "W")):
2864
d973dab8b715 Upgraded the Py2 part of the pep8 checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
153 print key, report.counters[key]
842
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
154 else:
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
155 print "NO_PEP8"
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
156 print filename
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
157
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
158 #
984b5535cd26 Started to add the PEP 8 checker for Python2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
159 # eflag: FileType = Python2

eric ide

mercurial