--- a/QScintilla/Lexers/__init__.py Fri Mar 11 08:55:14 2011 +0100 +++ b/QScintilla/Lexers/__init__.py Fri Mar 11 16:51:57 2011 +0100 @@ -23,9 +23,10 @@ # to be associated with the lexer) LexerRegistry = {} -def registerLexer(name, displayString, filenameSample, getLexerFunc, - openFilters = [], saveFilters = [], - defaultAssocs = []): + +def registerLexer(name, displayString, filenameSample, getLexerFunc, + openFilters=[], saveFilters=[], + defaultAssocs=[]): """ Module function to register a custom QScintilla lexer. @@ -36,7 +37,7 @@ This function must take a reference to the parent as it's only argument. @keyparam openFilters list of open file filters (list of strings) @keyparam saveFilters list of save file filters (list of strings) - @keyparam defaultAssocs default lexer associations (list of strings of filename + @keyparam defaultAssocs default lexer associations (list of strings of filename wildcard patterns to be associated with the lexer) @exception KeyError raised when the given name is already in use """ @@ -44,9 +45,10 @@ if name in LexerRegistry: raise KeyError('Lexer "{0}" already registered.'.format(name)) else: - LexerRegistry[name] = [displayString, filenameSample, getLexerFunc, + LexerRegistry[name] = [displayString, filenameSample, getLexerFunc, openFilters, saveFilters, defaultAssocs[:]] + def unregisterLexer(name): """ Module function to unregister a custom QScintilla lexer. @@ -56,6 +58,7 @@ if name in LexerRegistry: del LexerRegistry[name] + def getSupportedLanguages(): """ Module function to get a dictionary of supported lexer languages. @@ -67,36 +70,36 @@ (string, string) """ supportedLanguages = { - "Bash" : [QApplication.translate('Lexers', "Bash"), 'dummy.sh'], - "Batch" : [QApplication.translate('Lexers', "Batch"), 'dummy.bat'], - "C++" : [QApplication.translate('Lexers', "C/C++"), 'dummy.cpp'], - "C#" : [QApplication.translate('Lexers', "C#"), 'dummy.cs'], - "CMake" : [QApplication.translate('Lexers', "CMake"), 'dummy.cmake'], - "CSS" : [QApplication.translate('Lexers', "CSS"), 'dummy.css'], - "D" : [QApplication.translate('Lexers', "D"), 'dummy.d'], - "Diff" : [QApplication.translate('Lexers', "Diff"), 'dummy.diff'], - "Fortran" : [QApplication.translate('Lexers', "Fortran"), 'dummy.f95'], - "Fortran77" : [QApplication.translate('Lexers', "Fortran77"), 'dummy.f'], - "HTML" : [QApplication.translate('Lexers', "HTML/PHP/XML"), 'dummy.html'], - "IDL" : [QApplication.translate('Lexers', "IDL"), 'dummy.idl'], - "Java" : [QApplication.translate('Lexers', "Java"), 'dummy.java'], - "JavaScript" : [QApplication.translate('Lexers', "JavaScript"), 'dummy.js'], - "Lua" : [QApplication.translate('Lexers', "Lua"), 'dummy.lua'], - "Makefile" : [QApplication.translate('Lexers', "Makefile"), 'dummy.mak'], - "Pascal" : [QApplication.translate('Lexers', "Pascal"), 'dummy.pas'], - "Perl" : [QApplication.translate('Lexers', "Perl"), 'dummy.pl'], - "PostScript" : [QApplication.translate('Lexers', "PostScript"), 'dummy.ps'], - "Povray" : [QApplication.translate('Lexers', "Povray"), 'dummy.pov'], - "Properties" : [QApplication.translate('Lexers', "Properties"), 'dummy.ini'], - "Python2" : [QApplication.translate('Lexers', "Python2"), 'dummy.py'], - "Python3" : [QApplication.translate('Lexers', "Python3"), 'dummy.py'], - "Ruby" : [QApplication.translate('Lexers', "Ruby"), 'dummy.rb'], - "SQL" : [QApplication.translate('Lexers', "SQL"), 'dummy.sql'], - "TCL" : [QApplication.translate('Lexers', "TCL"), 'dummy.tcl'], - "TeX" : [QApplication.translate('Lexers', "TeX"), 'dummy.tex'], - "VHDL" : [QApplication.translate('Lexers', "VHDL"), 'dummy.vhd'], - "XML" : [QApplication.translate('Lexers', "XML"), 'dummy.xml'], - "YAML" : [QApplication.translate('Lexers', "YAML"), 'dummy.yml'], + "Bash": [QApplication.translate('Lexers', "Bash"), 'dummy.sh'], + "Batch": [QApplication.translate('Lexers', "Batch"), 'dummy.bat'], + "C++": [QApplication.translate('Lexers', "C/C++"), 'dummy.cpp'], + "C#": [QApplication.translate('Lexers', "C#"), 'dummy.cs'], + "CMake": [QApplication.translate('Lexers', "CMake"), 'dummy.cmake'], + "CSS": [QApplication.translate('Lexers', "CSS"), 'dummy.css'], + "D": [QApplication.translate('Lexers', "D"), 'dummy.d'], + "Diff": [QApplication.translate('Lexers', "Diff"), 'dummy.diff'], + "Fortran": [QApplication.translate('Lexers', "Fortran"), 'dummy.f95'], + "Fortran77": [QApplication.translate('Lexers', "Fortran77"), 'dummy.f'], + "HTML": [QApplication.translate('Lexers', "HTML/PHP/XML"), 'dummy.html'], + "IDL": [QApplication.translate('Lexers', "IDL"), 'dummy.idl'], + "Java": [QApplication.translate('Lexers', "Java"), 'dummy.java'], + "JavaScript": [QApplication.translate('Lexers', "JavaScript"), 'dummy.js'], + "Lua": [QApplication.translate('Lexers', "Lua"), 'dummy.lua'], + "Makefile": [QApplication.translate('Lexers', "Makefile"), 'dummy.mak'], + "Pascal": [QApplication.translate('Lexers', "Pascal"), 'dummy.pas'], + "Perl": [QApplication.translate('Lexers', "Perl"), 'dummy.pl'], + "PostScript": [QApplication.translate('Lexers', "PostScript"), 'dummy.ps'], + "Povray": [QApplication.translate('Lexers', "Povray"), 'dummy.pov'], + "Properties": [QApplication.translate('Lexers', "Properties"), 'dummy.ini'], + "Python2": [QApplication.translate('Lexers', "Python2"), 'dummy.py'], + "Python3": [QApplication.translate('Lexers', "Python3"), 'dummy.py'], + "Ruby": [QApplication.translate('Lexers', "Ruby"), 'dummy.rb'], + "SQL": [QApplication.translate('Lexers', "SQL"), 'dummy.sql'], + "TCL": [QApplication.translate('Lexers', "TCL"), 'dummy.tcl'], + "TeX": [QApplication.translate('Lexers', "TeX"), 'dummy.tex'], + "VHDL": [QApplication.translate('Lexers', "VHDL"), 'dummy.vhd'], + "XML": [QApplication.translate('Lexers', "XML"), 'dummy.xml'], + "YAML": [QApplication.translate('Lexers', "YAML"), 'dummy.yml'], } for name in LexerRegistry: @@ -107,7 +110,8 @@ return supportedLanguages -def getLexer(language, parent = None, pyname = ""): + +def getLexer(language, parent=None, pyname=""): """ Module function to instantiate a lexer object for a given language. @@ -123,7 +127,7 @@ return LexerPython(language, parent) elif language == "C++": from .LexerCPP import LexerCPP - return LexerCPP(parent, + return LexerCPP(parent, Preferences.getEditor("CppCaseInsensitiveKeywords")) elif language == "C#": from .LexerCSharp import LexerCSharp @@ -215,9 +219,10 @@ except ImportError: return __getPygmentsLexer(parent) else: - return __getPygmentsLexer(parent, name = pyname) + return __getPygmentsLexer(parent, name=pyname) -def __getPygmentsLexer(parent, name = ""): + +def __getPygmentsLexer(parent, name=""): """ Private module function to instantiate a pygments lexer. @@ -226,99 +231,100 @@ @return reference to the lexer (LexerPygments) or None """ from .LexerPygments import LexerPygments - lexer = LexerPygments(parent, name = name) + lexer = LexerPygments(parent, name=name) if lexer.canStyle(): return lexer else: return None -def getOpenFileFiltersList(includeAll = False, asString = False, withAdditional = True): + +def getOpenFileFiltersList(includeAll=False, asString=False, withAdditional=True): """ Module function to get the file filter list for an open file operation. - @param includeAll flag indicating the inclusion of the + @param includeAll flag indicating the inclusion of the All Files filter (boolean) - @param asString flag indicating the list should be returned + @param asString flag indicating the list should be returned as a string (boolean) @keyparam withAdditional flag indicating to include additional filters defined by the user (boolean) @return file filter list (list of strings or string) """ openFileFiltersList = [ - QApplication.translate('Lexers', - 'Python Files (*.py *.py2 *.py3)'), - QApplication.translate('Lexers', - 'Python GUI Files (*.pyw *.pyw2 *.pyw3)'), - QApplication.translate('Lexers', - 'Pyrex Files (*.pyx)'), - QApplication.translate('Lexers', - 'Quixote Template Files (*.ptl)'), - QApplication.translate('Lexers', - 'Ruby Files (*.rb)'), - QApplication.translate('Lexers', - 'IDL Files (*.idl)'), - QApplication.translate('Lexers', - 'C Files (*.h *.c)'), - QApplication.translate('Lexers', - 'C++ Files (*.h *.hpp *.hh *.cxx *.cpp *.cc)'), - QApplication.translate('Lexers', + QApplication.translate('Lexers', + 'Python Files (*.py *.py2 *.py3)'), + QApplication.translate('Lexers', + 'Python GUI Files (*.pyw *.pyw2 *.pyw3)'), + QApplication.translate('Lexers', + 'Pyrex Files (*.pyx)'), + QApplication.translate('Lexers', + 'Quixote Template Files (*.ptl)'), + QApplication.translate('Lexers', + 'Ruby Files (*.rb)'), + QApplication.translate('Lexers', + 'IDL Files (*.idl)'), + QApplication.translate('Lexers', + 'C Files (*.h *.c)'), + QApplication.translate('Lexers', + 'C++ Files (*.h *.hpp *.hh *.cxx *.cpp *.cc)'), + QApplication.translate('Lexers', 'C# Files (*.cs)'), - QApplication.translate('Lexers', - 'HTML Files (*.html *.htm *.asp *.shtml)'), - QApplication.translate('Lexers', - 'CSS Files (*.css)'), - QApplication.translate('Lexers', - 'QSS Files (*.qss)'), - QApplication.translate('Lexers', - 'PHP Files (*.php *.php3 *.php4 *.php5 *.phtml)'), - QApplication.translate('Lexers', - 'XML Files (*.xml *.xsl *.xslt *.dtd *.svg *.xul *.xsd)'), - QApplication.translate('Lexers', - 'Qt Resource Files (*.qrc)'), - QApplication.translate('Lexers', - 'D Files (*.d *.di)'), - QApplication.translate('Lexers', - 'Java Files (*.java)'), - QApplication.translate('Lexers', - 'JavaScript Files (*.js)'), - QApplication.translate('Lexers', - 'SQL Files (*.sql)'), - QApplication.translate('Lexers', - 'Docbook Files (*.docbook)'), - QApplication.translate('Lexers', - 'Perl Files (*.pl *.pm *.ph)'), - QApplication.translate('Lexers', - 'Lua Files (*.lua)'), - QApplication.translate('Lexers', - 'Tex Files (*.tex *.sty *.aux *.toc *.idx)'), - QApplication.translate('Lexers', - 'Shell Files (*.sh)'), - QApplication.translate('Lexers', - 'Batch Files (*.bat *.cmd)'), - QApplication.translate('Lexers', - 'Diff Files (*.diff *.patch)'), - QApplication.translate('Lexers', - 'Makefiles (*.mak)'), - QApplication.translate('Lexers', - 'Properties Files (*.properties *.ini *.inf *.reg *.cfg *.cnf *.rc)'), - QApplication.translate('Lexers', - 'Povray Files (*.pov)'), - QApplication.translate('Lexers', - 'CMake Files (CMakeLists.txt *.cmake *.ctest)'), - QApplication.translate('Lexers', - 'VHDL Files (*.vhd *.vhdl)'), - QApplication.translate('Lexers', - 'TCL/Tk Files (*.tcl *.tk)'), - QApplication.translate('Lexers', - 'Fortran Files (*.f90 *.f95 *.f2k)'), - QApplication.translate('Lexers', - 'Fortran77 Files (*.f *.for)'), - QApplication.translate('Lexers', - 'Pascal Files (*.dpr *.dpk *.pas *.dfm *.inc *.pp)'), - QApplication.translate('Lexers', - 'PostScript Files (*.ps)'), - QApplication.translate('Lexers', - 'YAML Files (*.yaml *.yml)'), + QApplication.translate('Lexers', + 'HTML Files (*.html *.htm *.asp *.shtml)'), + QApplication.translate('Lexers', + 'CSS Files (*.css)'), + QApplication.translate('Lexers', + 'QSS Files (*.qss)'), + QApplication.translate('Lexers', + 'PHP Files (*.php *.php3 *.php4 *.php5 *.phtml)'), + QApplication.translate('Lexers', + 'XML Files (*.xml *.xsl *.xslt *.dtd *.svg *.xul *.xsd)'), + QApplication.translate('Lexers', + 'Qt Resource Files (*.qrc)'), + QApplication.translate('Lexers', + 'D Files (*.d *.di)'), + QApplication.translate('Lexers', + 'Java Files (*.java)'), + QApplication.translate('Lexers', + 'JavaScript Files (*.js)'), + QApplication.translate('Lexers', + 'SQL Files (*.sql)'), + QApplication.translate('Lexers', + 'Docbook Files (*.docbook)'), + QApplication.translate('Lexers', + 'Perl Files (*.pl *.pm *.ph)'), + QApplication.translate('Lexers', + 'Lua Files (*.lua)'), + QApplication.translate('Lexers', + 'Tex Files (*.tex *.sty *.aux *.toc *.idx)'), + QApplication.translate('Lexers', + 'Shell Files (*.sh)'), + QApplication.translate('Lexers', + 'Batch Files (*.bat *.cmd)'), + QApplication.translate('Lexers', + 'Diff Files (*.diff *.patch)'), + QApplication.translate('Lexers', + 'Makefiles (*.mak)'), + QApplication.translate('Lexers', + 'Properties Files (*.properties *.ini *.inf *.reg *.cfg *.cnf *.rc)'), + QApplication.translate('Lexers', + 'Povray Files (*.pov)'), + QApplication.translate('Lexers', + 'CMake Files (CMakeLists.txt *.cmake *.ctest)'), + QApplication.translate('Lexers', + 'VHDL Files (*.vhd *.vhdl)'), + QApplication.translate('Lexers', + 'TCL/Tk Files (*.tcl *.tk)'), + QApplication.translate('Lexers', + 'Fortran Files (*.f90 *.f95 *.f2k)'), + QApplication.translate('Lexers', + 'Fortran77 Files (*.f *.for)'), + QApplication.translate('Lexers', + 'Pascal Files (*.dpr *.dpk *.pas *.dfm *.inc *.pp)'), + QApplication.translate('Lexers', + 'PostScript Files (*.ps)'), + QApplication.translate('Lexers', + 'YAML Files (*.yaml *.yml)'), ] for name in LexerRegistry: @@ -336,117 +342,118 @@ else: return openFileFiltersList -def getSaveFileFiltersList(includeAll = False, asString = False, withAdditional = True): + +def getSaveFileFiltersList(includeAll=False, asString=False, withAdditional=True): """ Module function to get the file filter list for a save file operation. - @param includeAll flag indicating the inclusion of the + @param includeAll flag indicating the inclusion of the All Files filter (boolean) - @param asString flag indicating the list should be returned + @param asString flag indicating the list should be returned as a string (boolean) @keyparam withAdditional flag indicating to include additional filters defined by the user (boolean) @return file filter list (list of strings or string) """ saveFileFiltersList = [ - QApplication.translate('Lexers', - "Python2 Files (*.py2)"), - QApplication.translate('Lexers', - "Python3 Files (*.py)"), - QApplication.translate('Lexers', - "Python2 GUI Files (*.pyw2)"), - QApplication.translate('Lexers', - "Python3 GUI Files (*.pyw)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', + "Python2 Files (*.py2)"), + QApplication.translate('Lexers', + "Python3 Files (*.py)"), + QApplication.translate('Lexers', + "Python2 GUI Files (*.pyw2)"), + QApplication.translate('Lexers', + "Python3 GUI Files (*.pyw)"), + QApplication.translate('Lexers', "Pyrex Files (*.pyx)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Quixote Template Files (*.ptl)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Ruby Files (*.rb)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "IDL Files (*.idl)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "C Files (*.c)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "C++ Files (*.cpp)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "C++/C Header Files (*.h)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "C# Files (*.cs)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "HTML Files (*.html)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "PHP Files (*.php)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "ASP Files (*.asp)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "CSS Files (*.css)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "QSS Files (*.qss)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "XML Files (*.xml)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "XSL Files (*.xsl)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "DTD Files (*.dtd)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Qt Resource Files (*.qrc)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "D Files (*.d)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "D Interface Files (*.di)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Java Files (*.java)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "JavaScript Files (*.js)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "SQL Files (*.sql)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Docbook Files (*.docbook)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Perl Files (*.pl)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Perl Module Files (*.pm)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Lua Files (*.lua)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Shell Files (*.sh)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Batch Files (*.bat)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "TeX Files (*.tex)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "TeX Template Files (*.sty)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Diff Files (*.diff)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Make Files (*.mak)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Properties Files (*.ini)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', "Configuration Files (*.cfg)"), - QApplication.translate('Lexers', + QApplication.translate('Lexers', 'Povray Files (*.pov)'), - QApplication.translate('Lexers', + QApplication.translate('Lexers', 'CMake Files (CMakeLists.txt)'), - QApplication.translate('Lexers', + QApplication.translate('Lexers', 'CMake Macro Files (*.cmake)'), - QApplication.translate('Lexers', - 'VHDL Files (*.vhd)'), - QApplication.translate('Lexers', + QApplication.translate('Lexers', + 'VHDL Files (*.vhd)'), + QApplication.translate('Lexers', 'TCL Files (*.tcl)'), - QApplication.translate('Lexers', + QApplication.translate('Lexers', 'Tk Files (*.tk)'), - QApplication.translate('Lexers', + QApplication.translate('Lexers', 'Fortran Files (*.f95)'), - QApplication.translate('Lexers', + QApplication.translate('Lexers', 'Fortran77 Files (*.f)'), - QApplication.translate('Lexers', + QApplication.translate('Lexers', 'Pascal Files (*.pas)'), - QApplication.translate('Lexers', + QApplication.translate('Lexers', 'PostScript Files (*.ps)'), - QApplication.translate('Lexers', - 'YAML Files (*.yml)'), + QApplication.translate('Lexers', + 'YAML Files (*.yml)'), ] for name in LexerRegistry: @@ -465,127 +472,128 @@ else: return saveFileFiltersList + def getDefaultLexerAssociations(): assocs = { - '*.sh' : "Bash", - '*.bash' : "Bash", - "*.bat" : "Batch", - "*.cmd" : "Batch", - '*.cpp' : "C++", - '*.cxx' : "C++", - '*.cc' : "C++", - '*.c' : "C++", - '*.hpp' : "C++", - '*.hh' : "C++", - '*.h' : "C++", - '*.cs' : "C#", - 'CMakeLists.txt' : "CMake", - '*.cmake' : "CMake", - '*.cmake.in' : "CMake", - '*.ctest' : "CMake", - '*.ctest.in' : "CMake", - '*.css' : "CSS", - '*.qss' : "CSS", - "*.d" : "D", - "*.di" : "D", - "*.diff" : "Diff", - "*.patch" : "Diff", - '*.html' : "HTML", - '*.htm' : "HTML", - '*.asp' : "HTML", - '*.shtml' : "HTML", - '*.php' : "HTML", - '*.php3' : "HTML", - '*.php4' : "HTML", - '*.php5' : "HTML", - '*.phtml' : "HTML", - '*.xml' : "HTML", - '*.xsl' : "HTML", - '*.svg' : "HTML", - '*.xsd' : "HTML", - '*.xslt' : "HTML", - '*.dtd' : "HTML", - '*.rdf' : "HTML", - '*.xul' : "HTML", - '*.docbook' : "HTML", - '*.ui' : "HTML", - '*.ts' : "HTML", - '*.qrc' : "HTML", - '*.kid' : "HTML", - '*.idl' : "IDL", - '*.java' : "Java", - '*.js' : "JavaScript", - '*.lua' : "Lua", - "*makefile" : "Makefile", - "Makefile*" : "Makefile", - "*.mak" : "Makefile", - '*.pl' : "Perl", - '*.pm' : "Perl", - '*.ph' : "Perl", - '*.pov' : "Povray", - "*.properties" : "Properties", - "*.ini" : "Properties", - "*.inf" : "Properties", - "*.reg" : "Properties", - "*.cfg" : "Properties", - "*.cnf" : "Properties", - "*.rc" : "Properties", - '*.py' : "Python", - '*.pyw' : "Python", - '*.py2' : "Python", - '*.pyw2' : "Python", - '*.py3' : "Python", - '*.pyw3' : "Python", - '*.pyx' : "Python", - '*.ptl' : "Python", - '*.rb' : "Ruby", - '*.rbw' : "Ruby", - '*.sql' : "SQL", - "*.tex" : "TeX", - "*.sty" : "TeX", - "*.aux" : "TeX", - "*.toc" : "TeX", - "*.idx" : "TeX", - '*.vhd' : "VHDL", - '*.vhdl' : "VHDL", - "*.tcl" : "TCL", - "*.tk" : "TCL", - "*.f" : "Fortran77", - "*.for" : "Fortran77", - "*.f90" : "Fortran", - "*.f95" : "Fortran", - "*.f2k" : "Fortran", - "*.dpr" : "Pascal", - "*.dpk" : "Pascal", - "*.pas" : "Pascal", - "*.dfm" : "Pascal", - "*.inc" : "Pascal", - "*.pp" : "Pascal", - "*.ps" : "PostScript", - "*.xml" : "XML", - "*.xsl" : "XML", - "*.svg" : "XML", - "*.xsd" : "XML", - "*.xslt" : "XML", - "*.dtd" : "XML", - "*.rdf" : "XML", - "*.xul" : "XML", - "*.yaml" : "YAML", - "*.yml" : "YAML", - '*.e4d' : "XML", - '*.e4k' : "XML", - '*.e4m' : "XML", - '*.e4p' : "XML", - '*.e4q' : "XML", - '*.e4s' : "XML", - '*.e4t' : "XML", - '*.e5d' : "XML", - '*.e5k' : "XML", - '*.e5m' : "XML", - '*.e5p' : "XML", - '*.e5q' : "XML", - '*.e5s' : "XML", - '*.e5t' : "XML", + '*.sh': "Bash", + '*.bash': "Bash", + "*.bat": "Batch", + "*.cmd": "Batch", + '*.cpp': "C++", + '*.cxx': "C++", + '*.cc': "C++", + '*.c': "C++", + '*.hpp': "C++", + '*.hh': "C++", + '*.h': "C++", + '*.cs': "C#", + 'CMakeLists.txt': "CMake", + '*.cmake': "CMake", + '*.cmake.in': "CMake", + '*.ctest': "CMake", + '*.ctest.in': "CMake", + '*.css': "CSS", + '*.qss': "CSS", + "*.d": "D", + "*.di": "D", + "*.diff": "Diff", + "*.patch": "Diff", + '*.html': "HTML", + '*.htm': "HTML", + '*.asp': "HTML", + '*.shtml': "HTML", + '*.php': "HTML", + '*.php3': "HTML", + '*.php4': "HTML", + '*.php5': "HTML", + '*.phtml': "HTML", + '*.xml': "HTML", + '*.xsl': "HTML", + '*.svg': "HTML", + '*.xsd': "HTML", + '*.xslt': "HTML", + '*.dtd': "HTML", + '*.rdf': "HTML", + '*.xul': "HTML", + '*.docbook': "HTML", + '*.ui': "HTML", + '*.ts': "HTML", + '*.qrc': "HTML", + '*.kid': "HTML", + '*.idl': "IDL", + '*.java': "Java", + '*.js': "JavaScript", + '*.lua': "Lua", + "*makefile": "Makefile", + "Makefile*": "Makefile", + "*.mak": "Makefile", + '*.pl': "Perl", + '*.pm': "Perl", + '*.ph': "Perl", + '*.pov': "Povray", + "*.properties": "Properties", + "*.ini": "Properties", + "*.inf": "Properties", + "*.reg": "Properties", + "*.cfg": "Properties", + "*.cnf": "Properties", + "*.rc": "Properties", + '*.py': "Python", + '*.pyw': "Python", + '*.py2': "Python", + '*.pyw2': "Python", + '*.py3': "Python", + '*.pyw3': "Python", + '*.pyx': "Python", + '*.ptl': "Python", + '*.rb': "Ruby", + '*.rbw': "Ruby", + '*.sql': "SQL", + "*.tex": "TeX", + "*.sty": "TeX", + "*.aux": "TeX", + "*.toc": "TeX", + "*.idx": "TeX", + '*.vhd': "VHDL", + '*.vhdl': "VHDL", + "*.tcl": "TCL", + "*.tk": "TCL", + "*.f": "Fortran77", + "*.for": "Fortran77", + "*.f90": "Fortran", + "*.f95": "Fortran", + "*.f2k": "Fortran", + "*.dpr": "Pascal", + "*.dpk": "Pascal", + "*.pas": "Pascal", + "*.dfm": "Pascal", + "*.inc": "Pascal", + "*.pp": "Pascal", + "*.ps": "PostScript", + "*.xml": "XML", + "*.xsl": "XML", + "*.svg": "XML", + "*.xsd": "XML", + "*.xslt": "XML", + "*.dtd": "XML", + "*.rdf": "XML", + "*.xul": "XML", + "*.yaml": "YAML", + "*.yml": "YAML", + '*.e4d': "XML", + '*.e4k': "XML", + '*.e4m': "XML", + '*.e4p': "XML", + '*.e4q': "XML", + '*.e4s': "XML", + '*.e4t': "XML", + '*.e5d': "XML", + '*.e5k': "XML", + '*.e5m': "XML", + '*.e5p': "XML", + '*.e5q': "XML", + '*.e5s': "XML", + '*.e5t': "XML", } for name in LexerRegistry: