| " 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" |