gobyexample/vendor/pygments/scripts/detect_missing_analyse_text.py
Mark McGranaghan 8d31ec147c move to vendor
2012-11-17 08:21:42 -08:00

31 lines
858 B
Python

import sys
from pygments.lexers import get_all_lexers, find_lexer_class
from pygments.lexer import Lexer
def main():
uses = {}
for name, aliases, filenames, mimetypes in get_all_lexers():
cls = find_lexer_class(name)
for f in filenames:
if f not in uses:
uses[f] = []
uses[f].append(cls)
ret = 0
for k, v in uses.iteritems():
if len(v) > 1:
#print "Multiple for", k, v
for i in v:
if i.analyse_text is None:
print i, "has a None analyse_text"
ret |= 1
elif Lexer.analyse_text.__doc__ == i.analyse_text.__doc__:
print i, "needs analyse_text, multiple lexers for", k
ret |= 2
return ret
if __name__ == '__main__':
sys.exit(main())