ref: f99b9cae6a3dc5775a83b264d6041be8d5d416d6
dir: /sys/src/cmd/python/Misc/Vim/python.vim/
" Auto-generated Vim syntax file for Python " " To use: copy or symlink to ~/.vim/syntax/python.vim if exists("b:current_syntax") finish endif if exists("python_highlight_all") let python_highlight_numbers = 1 let python_highlight_builtins = 1 let python_highlight_exceptions = 1 let python_highlight_space_errors = 1 endif syn keyword pythonStatement as assert break continue del except exec finally syn keyword pythonStatement global lambda pass print raise return try with syn keyword pythonStatement yield syn keyword pythonStatement def class nextgroup=pythonFunction skipwhite syn match pythonFunction "[a-zA-Z_][a-zA-Z0-9_]*" contained syn keyword pythonRepeat for while syn keyword pythonConditional if elif else syn keyword pythonOperator and in is not or syn keyword pythonPreCondit import from syn match pythonComment "#.*$" contains=pythonTodo syn keyword pythonTodo TODO FIXME XXX contained syn region pythonString matchgroup=Normal start=+[uU]\='+ end=+'+ skip=+\\\\\|\\'+ contains=pythonEscape syn region pythonString matchgroup=Normal start=+[uU]\="+ end=+"+ skip=+\\\\\|\\"+ contains=pythonEscape syn region pythonString matchgroup=Normal start=+[uU]\="""+ end=+"""+ contains=pythonEscape syn region pythonString matchgroup=Normal start=+[uU]\='''+ end=+'''+ contains=pythonEscape syn region pythonString matchgroup=Normal start=+[uU]\=[rR]'+ end=+'+ skip=+\\\\\|\\'+ syn region pythonString matchgroup=Normal start=+[uU]\=[rR]"+ end=+"+ skip=+\\\\\|\\"+ syn region pythonString matchgroup=Normal start=+[uU]\=[rR]"""+ end=+"""+ syn region pythonString matchgroup=Normal start=+[uU]\=[rR]'''+ end=+'''+ syn match pythonEscape +\\[abfnrtv\'"\\]+ contained syn match pythonEscape "\\\o\{1,3}" contained syn match pythonEscape "\\x\x\{2}" contained syn match pythonEscape "\(\\u\x\{4}\|\\U\x\{8}\)" contained syn match pythonEscape "\\$" if exists("python_highlight_numbers") syn match pythonNumber "\<0x\x\+[Ll]\=\>" syn match pythonNumber "\<\d\+[LljJ]\=\>" syn match pythonNumber "\.\d\+\([eE][+-]\=\d\+\)\=[jJ]\=\>" syn match pythonNumber "\<\d\+\.\([eE][+-]\=\d\+\)\=[jJ]\=\>" syn match pythonNumber "\<\d\+\.\d\+\([eE][+-]\=\d\+\)\=[jJ]\=\>" endif if exists("python_highlight_builtins") syn keyword pythonBuiltin unichr all set abs vars int __import__ unicode syn keyword pythonBuiltin enumerate reduce coerce intern exit issubclass syn keyword pythonBuiltin divmod file Ellipsis apply isinstance open any syn keyword pythonBuiltin locals help filter basestring slice copyright min syn keyword pythonBuiltin super sum tuple hex execfile long id xrange chr syn keyword pythonBuiltin complex bool zip pow dict True oct NotImplemented syn keyword pythonBuiltin map None float hash getattr buffer max reversed syn keyword pythonBuiltin object quit len repr callable credits setattr syn keyword pythonBuiltin eval frozenset sorted ord __debug__ hasattr syn keyword pythonBuiltin delattr False input license classmethod type syn keyword pythonBuiltin raw_input list iter compile reload range globals syn keyword pythonBuiltin staticmethod str property round dir cmp endif if exists("python_highlight_exceptions") syn keyword pythonException GeneratorExit ImportError RuntimeError syn keyword pythonException UnicodeTranslateError MemoryError StopIteration syn keyword pythonException PendingDeprecationWarning EnvironmentError syn keyword pythonException LookupError OSError DeprecationWarning syn keyword pythonException UnicodeError UnicodeEncodeError syn keyword pythonException FloatingPointError ReferenceError NameError syn keyword pythonException IOError SyntaxError syn keyword pythonException FutureWarning ImportWarning SystemExit syn keyword pythonException Exception EOFError StandardError ValueError syn keyword pythonException TabError KeyError ZeroDivisionError SystemError syn keyword pythonException UnicodeDecodeError IndentationError syn keyword pythonException AssertionError TypeError IndexError syn keyword pythonException RuntimeWarning KeyboardInterrupt UserWarning syn keyword pythonException SyntaxWarning UnboundLocalError ArithmeticError syn keyword pythonException Warning NotImplementedError AttributeError syn keyword pythonException OverflowError BaseException endif if exists("python_highlight_space_errors") syn match pythonSpaceError display excludenl "\S\s\+$"ms=s+1 syn match pythonSpaceError display " \+\t" syn match pythonSpaceError display "\t\+ " endif hi def link pythonStatement Statement hi def link pythonStatement Statement hi def link pythonFunction Function hi def link pythonRepeat Repeat hi def link pythonConditional Conditional hi def link pythonOperator Operator hi def link pythonPreCondit PreCondit hi def link pythonComment Comment hi def link pythonTodo Todo hi def link pythonString String hi def link pythonEscape Special hi def link pythonEscape Special if exists("python_highlight_numbers") hi def link pythonNumber Number endif if exists("python_highlight_builtins") hi def link pythonBuiltin Function endif if exists("python_highlight_exceptions") hi def link pythonException Exception endif if exists("python_highlight_space_errors") hi def link pythonSpaceError Error endif " Uncomment the 'minlines' statement line and comment out the 'maxlines' " statement line; changes behaviour to look at least 2000 lines previously for " syntax matches instead of at most 200 lines syn sync match pythonSync grouphere NONE "):$" syn sync maxlines=200 "syn sync minlines=2000 let b:current_syntax = "python"