let python_highlight_space_errors = 1
endif
-syn keyword pythonStatement assert break continue del except exec finally
-syn keyword pythonStatement global lambda pass print raise return try yield
+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 keyword pythonException UnicodeTranslateError MemoryError StopIteration
syn keyword pythonException PendingDeprecationWarning EnvironmentError
syn keyword pythonException LookupError OSError DeprecationWarning
- syn keyword pythonException UnicodeError FloatingPointError ReferenceError
- syn keyword pythonException NameError OverflowWarning IOError SyntaxError
+ syn keyword pythonException UnicodeError UnicodeEncodeError
+ syn keyword pythonException FloatingPointError ReferenceError NameError
+ syn keyword pythonException OverflowWarning IOError SyntaxError
syn keyword pythonException FutureWarning SystemExit Exception EOFError
syn keyword pythonException StandardError ValueError TabError KeyError
syn keyword pythonException ZeroDivisionError SystemError
syn keyword pythonException RuntimeWarning KeyboardInterrupt UserWarning
syn keyword pythonException SyntaxWarning UnboundLocalError ArithmeticError
syn keyword pythonException Warning NotImplementedError AttributeError
- syn keyword pythonException OverflowError UnicodeEncodeError
+ syn keyword pythonException OverflowError BaseException
endif
# OPTIONAL: XXX catch your attention
# Statements
+from __future__ import with_statement # Import
+from sys import path as thing
assert True # keyword
def foo(): # function definition
return []
class Bar(object): # Class definition
- pass
+ def __context__(self):
+ return self
+ def __enter__(self):
+ pass
+ def __exit__(self, *args):
+ pass
foo() # UNCOLOURED: function call
while False: # 'while'
continue
for x in foo(): # 'for'
break
+with Bar() as stuff:
+ pass
if False: pass # 'if'
elif False: pass
-else False: pass
-from sys import path as thing # Import
+else: pass
# Constants
'single-quote', u'unicode' # Strings of all kinds; prefixes not highlighted
+from __future__ import with_statement
+
import keyword
import exceptions
import __builtin__
except StopIteration:
if buffer_:
break
- if not buffer_ and overflow:
- yield buffer_
- return
- else:
- return
+ if overflow:
+ yield overflow
+ return
if total_len > fill_len:
overflow = buffer_.pop()
total_len -= len(overflow) - 1
FILL = 80
def main(file_path):
- FILE = open(file_path, 'w')
- try:
+ with open(file_path, 'w') as FILE:
# Comment for file
print>>FILE, comment_header
print>>FILE, ''
print>>FILE, ''
# Statements at the end of the file
print>>FILE, statement_footer
- finally:
- FILE.close()
if __name__ == '__main__':
main("python.vim")