55 |
55 |
56 # convert eols |
56 # convert eols |
57 text = Utilities.convertLineEnds(text, os.linesep) |
57 text = Utilities.convertLineEnds(text, os.linesep) |
58 |
58 |
59 if not text.endswith(os.linesep): |
59 if not text.endswith(os.linesep): |
60 text = "%s%s" % (text, os.linesep) |
60 text = "{0}{1}".format(text, os.linesep) |
61 |
61 |
62 self.lines = text.count(os.linesep) |
62 self.lines = text.count(os.linesep) |
63 |
63 |
64 source = io.BytesIO(text.encode("utf-8")) |
64 source = io.BytesIO(text.encode("utf-8")) |
65 try: |
65 try: |
75 toktype = KEYWORD |
75 toktype = KEYWORD |
76 self.__addToken(toktype, toktext, srow, scol, line) |
76 self.__addToken(toktype, toktext, srow, scol, line) |
77 else: |
77 else: |
78 self.__addToken(toktype, toktext, srow, scol, line) |
78 self.__addToken(toktype, toktext, srow, scol, line) |
79 except tokenize.TokenError as msg: |
79 except tokenize.TokenError as msg: |
80 print("Token Error: %s" % str(msg)) |
80 print("Token Error: {0}".format(str(msg))) |
81 return |
81 return |
82 |
82 |
83 return |
83 return |
84 |
84 |
85 def __addToken(self, toktype, toktext, srow, scol, line): |
85 def __addToken(self, toktype, toktext, srow, scol, line): |
173 counters = self.counters.get(id, {}) |
173 counters = self.counters.get(id, {}) |
174 msg = spacer + label.ljust(label_len) |
174 msg = spacer + label.ljust(label_len) |
175 |
175 |
176 for key in ('start', 'end', 'lines', 'nloc', 'comments', 'empty'): |
176 for key in ('start', 'end', 'lines', 'nloc', 'comments', 'empty'): |
177 if counters.get(key, 0): |
177 if counters.get(key, 0): |
178 msg += " %5d" % (counters[key],) |
178 msg += " {0:d}".format(counters[key]) |
179 else: |
179 else: |
180 msg += " " * 6 |
180 msg += " " * 6 |
181 |
181 |
182 print(msg) |
182 print(msg) |
183 |
183 |
274 stats.dump() |
274 stats.dump() |
275 |
275 |
276 print("\nSummary") |
276 print("\nSummary") |
277 for key in ['files', 'lines', 'bytes', 'comments', |
277 for key in ['files', 'lines', 'bytes', 'comments', |
278 'empty lines', 'non-commentary lines']: |
278 'empty lines', 'non-commentary lines']: |
279 print(key.ljust(20) + "%6d" % total[key]) |
279 print(key.ljust(20) + "{0:d}".format(total[key])) |
280 |
280 |
281 sys.exit(0) |
281 sys.exit(0) |
282 |
282 |
283 if __name__ == "__main__": |
283 if __name__ == "__main__": |
284 main() |
284 main() |