@@ -155,7 +155,7 @@ syn keyword pythonClassVaraible cls
155155syn keyword pythonStatement break continue del
156156syn keyword pythonStatement exec return
157157syn keyword pythonStatement pass yield
158- syn keyword pythonStatement raise nextgroup =pythonIdentifier skipwhite
158+ syn keyword pythonStatement raise nextgroup =pythonIdentifier,pythonExClass skipwhite
159159syn keyword pythonStatement global assert
160160syn keyword pythonStatement lambda
161161syn keyword pythonStatement with
@@ -472,40 +472,36 @@ endif
472472
473473if s: Enabled (" g:python_highlight_exceptions" )
474474 if s: Python2Syntax ()
475- syn keyword pythonExClass StandardError
475+ syn match pythonExClass ' \v ( \. )@<! \z s<( StandardError)> '
476476 else
477- syn keyword pythonExClass BlockingIOError ChildProcessError
478- syn keyword pythonExClass ConnectionError BrokenPipeError
479- syn keyword pythonExClass ConnectionAbortedError ConnectionRefusedError
480- syn keyword pythonExClass ConnectionResetError FileExistsError
481- syn keyword pythonExClass FileNotFoundError InterruptedError
482- syn keyword pythonExClass IsADirectoryError NotADirectoryError
483- syn keyword pythonExClass PermissionError ProcessLookupError TimeoutError
484- syn keyword pythonExClass StopAsyncIteration
485-
486- syn keyword pythonExClass ResourceWarning
477+ syn match pythonExClass ' \v (\. )@<!\z s<(BlockingIOError|ChildProcessError)>'
478+ syn match pythonExClass ' \v (\. )@<!\z s<(ConnectionError|BrokenPipeError)>'
479+ syn match pythonExClass ' \v (\. )@<!\z s<(ConnectionAbortedError|ConnectionRefusedError)>'
480+ syn match pythonExClass ' \v (\. )@<!\z s<(ConnectionResetError|FileExistsError)>'
481+ syn match pythonExClass ' \v (\. )@<!\z s<(FileNotFoundError|InterruptedError)>'
482+ syn match pythonExClass ' \v (\. )@<!\z s<(IsADirectoryError|NotADirectoryError)>'
483+ syn match pythonExClass ' \v (\. )@<!\z s<(PermissionError|ProcessLookupError TimeoutError)>'
484+ syn match pythonExClass ' \v (\. )@<!\z s<(StopAsyncIteration|ResourceWarning)>'
487485 endif
488- syn keyword pythonExClass BaseException
489- syn keyword pythonExClass Exception ArithmeticError
490- syn keyword pythonExClass LookupError EnvironmentError
491-
492- syn keyword pythonExClass AssertionError AttributeError BufferError EOFError
493- syn keyword pythonExClass FloatingPointError GeneratorExit IOError
494- syn keyword pythonExClass ImportError IndexError KeyError
495- syn keyword pythonExClass KeyboardInterrupt MemoryError NameError
496- syn keyword pythonExClass NotImplementedError OSError OverflowError
497- syn keyword pythonExClass ReferenceError RuntimeError StopIteration
498- syn keyword pythonExClass SyntaxError IndentationError TabError
499- syn keyword pythonExClass SystemError SystemExit TypeError
500- syn keyword pythonExClass UnboundLocalError UnicodeError
501- syn keyword pythonExClass UnicodeEncodeError UnicodeDecodeError
502- syn keyword pythonExClass UnicodeTranslateError ValueError VMSError
503- syn keyword pythonExClass WindowsError ZeroDivisionError
504-
505- syn keyword pythonExClass Warning UserWarning BytesWarning DeprecationWarning
506- syn keyword pythonExClass PendingDepricationWarning SyntaxWarning
507- syn keyword pythonExClass RuntimeWarning FutureWarning
508- syn keyword pythonExClass ImportWarning UnicodeWarning
486+
487+ syn match pythonExClass ' \v (\. )@<!<(BaseException|Exception|ArithmeticError)>'
488+ syn match pythonExClass ' \v (\. )@<!\z s<(LookupError|EnvironmentError|AssertionError)>'
489+ syn match pythonExClass ' \v (\. )@<!\z s<(AttributeError|BufferError|EOFError)>'
490+ syn match pythonExClass ' \v (\. )@<!\z s<(FloatingPointError|GeneratorExit|IOError)>'
491+ syn match pythonExClass ' \v (\. )@<!\z s<(ImportError|IndexError|KeyError)>'
492+ syn match pythonExClass ' \v (\. )@<!\z s<(KeyboardInterrupt|MemoryError|NameError)>'
493+ syn match pythonExClass ' \v (\. )@<!\z s<(NotImplementedError|OSError|OverflowError)>'
494+ syn match pythonExClass ' \v (\. )@<!\z s<(ReferenceError|RuntimeError|StopIteration)>'
495+ syn match pythonExClass ' \v (\. )@<!\z s<(SyntaxError|IndentationError|TabError)>'
496+ syn match pythonExClass ' \v (\. )@<!\z s<(SystemError|SystemExit|TypeError)>'
497+ syn match pythonExClass ' \v (\. )@<!\z s<(UnboundLocalError|UnicodeError)>'
498+ syn match pythonExClass ' \v (\. )@<!\z s<(UnicodeEncodeError|UnicodeDecodeError)>'
499+ syn match pythonExClass ' \v (\. )@<!\z s<(UnicodeTranslateError|ValueError|VMSError)>'
500+ syn match pythonExClass ' \v (\. )@<!\z s<(WindowsError|ZeroDivisionError)>'
501+ syn match pythonExClass ' \v (\. )@<!\z s<(Warning|UserWarning|BytesWarning|DeprecationWarning)>'
502+ syn match pythonExClass ' \v (\. )@<!\z s<(PendingDepricationWarning|SyntaxWarning)>'
503+ syn match pythonExClass ' \v (\. )@<!\z s<(RuntimeWarning|FutureWarning)>'
504+ syn match pythonExClass ' \v (\. )@<!\z s<(ImportWarning|UnicodeWarning)>'
509505endif
510506
511507if s: Enabled (" g:python_slow_sync" )
0 commit comments