Import Upstream version 2.7.18
This commit is contained in:
149
Misc/Vim/python.vim
Normal file
149
Misc/Vim/python.vim
Normal file
@@ -0,0 +1,149 @@
|
||||
" Auto-generated Vim syntax file for Python (trunk: r80490).
|
||||
"
|
||||
" 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 Ellipsis False None NotImplemented True __debug__
|
||||
syn keyword pythonBuiltin __import__ abs all any apply basestring bin bool
|
||||
syn keyword pythonBuiltin buffer bytearray bytes callable chr classmethod
|
||||
syn keyword pythonBuiltin cmp coerce compile complex copyright credits
|
||||
syn keyword pythonBuiltin delattr dict dir divmod enumerate eval execfile
|
||||
syn keyword pythonBuiltin exit file filter float format frozenset getattr
|
||||
syn keyword pythonBuiltin globals hasattr hash help hex id input int intern
|
||||
syn keyword pythonBuiltin isinstance issubclass iter len license list
|
||||
syn keyword pythonBuiltin locals long map max memoryview min next object
|
||||
syn keyword pythonBuiltin oct open ord pow print property quit range
|
||||
syn keyword pythonBuiltin raw_input reduce reload repr reversed round set
|
||||
syn keyword pythonBuiltin setattr slice sorted staticmethod str sum super
|
||||
syn keyword pythonBuiltin tuple type unichr unicode vars xrange zip
|
||||
|
||||
endif
|
||||
|
||||
|
||||
if exists("python_highlight_exceptions")
|
||||
syn keyword pythonException ArithmeticError AssertionError AttributeError
|
||||
syn keyword pythonException BaseException BufferError BytesWarning
|
||||
syn keyword pythonException DeprecationWarning EOFError EnvironmentError
|
||||
syn keyword pythonException Exception FloatingPointError FutureWarning
|
||||
syn keyword pythonException GeneratorExit IOError ImportError ImportWarning
|
||||
syn keyword pythonException IndentationError IndexError KeyError
|
||||
syn keyword pythonException KeyboardInterrupt LookupError MemoryError
|
||||
syn keyword pythonException NameError NotImplementedError OSError
|
||||
syn keyword pythonException OverflowError PendingDeprecationWarning
|
||||
syn keyword pythonException ReferenceError RuntimeError RuntimeWarning
|
||||
syn keyword pythonException StandardError StopIteration SyntaxError
|
||||
syn keyword pythonException SyntaxWarning SystemError SystemExit TabError
|
||||
syn keyword pythonException TypeError UnboundLocalError UnicodeDecodeError
|
||||
syn keyword pythonException UnicodeEncodeError UnicodeError
|
||||
syn keyword pythonException UnicodeTranslateError UnicodeWarning
|
||||
syn keyword pythonException UserWarning ValueError Warning
|
||||
syn keyword pythonException ZeroDivisionError
|
||||
|
||||
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"
|
||||
62
Misc/Vim/syntax_test.py
Normal file
62
Misc/Vim/syntax_test.py
Normal file
@@ -0,0 +1,62 @@
|
||||
"""Test file for syntax highlighting of editors.
|
||||
|
||||
Meant to cover a wide range of different types of statements and expressions.
|
||||
Not necessarily sensical or comprehensive (assume that if one exception is
|
||||
highlighted that all are, for instance).
|
||||
|
||||
Extraneous trailing whitespace can't be tested because of svn pre-commit hook
|
||||
checks for such things.
|
||||
|
||||
"""
|
||||
# Comment
|
||||
# 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
|
||||
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: pass
|
||||
|
||||
# Constants
|
||||
'single-quote', u'unicode' # Strings of all kinds; prefixes not highlighted
|
||||
"double-quote"
|
||||
"""triple double-quote"""
|
||||
'''triple single-quote'''
|
||||
r'raw'
|
||||
ur'unicode raw'
|
||||
'escape\n'
|
||||
'\04' # octal
|
||||
'\xFF' # hex
|
||||
'\u1111' # unicode character
|
||||
1 # Integral
|
||||
1L
|
||||
1.0 # Float
|
||||
.1
|
||||
1+2j # Complex
|
||||
|
||||
# Expressions
|
||||
1 and 2 or 3 # Boolean operators
|
||||
2 < 3 # UNCOLOURED: comparison operators
|
||||
spam = 42 # UNCOLOURED: assignment
|
||||
2 + 3 # UNCOLOURED: number operators
|
||||
[] # UNCOLOURED: list
|
||||
{} # UNCOLOURED: dict
|
||||
(1,) # UNCOLOURED: tuple
|
||||
all # Built-in functions
|
||||
GeneratorExit # Exceptions
|
||||
227
Misc/Vim/vim_syntax.py
Normal file
227
Misc/Vim/vim_syntax.py
Normal file
@@ -0,0 +1,227 @@
|
||||
from __future__ import with_statement
|
||||
|
||||
import keyword
|
||||
import exceptions
|
||||
import __builtin__
|
||||
from string import Template
|
||||
from sys import subversion
|
||||
|
||||
comment_header = '''" Auto-generated Vim syntax file for Python (%s: r%s).
|
||||
"
|
||||
" To use: copy or symlink to ~/.vim/syntax/python.vim'''
|
||||
|
||||
statement_header = """
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif"""
|
||||
|
||||
statement_footer = '''
|
||||
" 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"'''
|
||||
|
||||
looping = ('for', 'while')
|
||||
conditionals = ('if', 'elif', 'else')
|
||||
boolean_ops = ('and', 'in', 'is', 'not', 'or')
|
||||
import_stmts = ('import', 'from')
|
||||
object_defs = ('def', 'class')
|
||||
|
||||
exception_names = sorted(exc for exc in dir(exceptions)
|
||||
if not exc.startswith('__'))
|
||||
|
||||
# Need to include functions that start with '__' (e.g., __import__), but
|
||||
# nothing that comes with modules (e.g., __name__), so just exclude anything in
|
||||
# the 'exceptions' module since we want to ignore exceptions *and* what any
|
||||
# module would have
|
||||
builtin_names = sorted(builtin for builtin in dir(__builtin__)
|
||||
if builtin not in dir(exceptions))
|
||||
|
||||
escapes = (r'+\\[abfnrtv\'"\\]+', r'"\\\o\{1,3}"', r'"\\x\x\{2}"',
|
||||
r'"\(\\u\x\{4}\|\\U\x\{8}\)"', r'"\\$"')
|
||||
|
||||
todos = ("TODO", "FIXME", "XXX")
|
||||
|
||||
# XXX codify?
|
||||
numbers = (r'"\<0x\x\+[Ll]\=\>"', r'"\<\d\+[LljJ]\=\>"',
|
||||
'"\.\d\+\([eE][+-]\=\d\+\)\=[jJ]\=\>"',
|
||||
'"\<\d\+\.\([eE][+-]\=\d\+\)\=[jJ]\=\>"',
|
||||
'"\<\d\+\.\d\+\([eE][+-]\=\d\+\)\=[jJ]\=\>"')
|
||||
|
||||
contained = lambda x: "%s contained" % x
|
||||
|
||||
def str_regexes():
|
||||
"""Generator to yield various combinations of strings regexes"""
|
||||
regex_template = Template('matchgroup=Normal ' +
|
||||
'start=+[uU]\=${raw}${sep}+ ' +
|
||||
'end=+${sep}+ ' +
|
||||
'${skip} ' +
|
||||
'${contains}')
|
||||
skip_regex = Template(r'skip=+\\\\\|\\${sep}+')
|
||||
for raw in ('', '[rR]'):
|
||||
for separator in ("'", '"', '"""', "'''"):
|
||||
if len(separator) == 1:
|
||||
skip = skip_regex.substitute(sep=separator)
|
||||
else:
|
||||
skip = ''
|
||||
contains = 'contains=pythonEscape' if not raw else ''
|
||||
yield regex_template.substitute(raw=raw, sep=separator, skip=skip,
|
||||
contains = contains)
|
||||
|
||||
space_errors = (r'excludenl "\S\s\+$"ms=s+1', r'" \+\t"', r'"\t\+ "')
|
||||
|
||||
statements = (
|
||||
('',
|
||||
# XXX Might need to change pythonStatement since have
|
||||
# specific Repeat, Conditional, Operator, etc. for 'while',
|
||||
# etc.
|
||||
[("Statement", "pythonStatement", "keyword",
|
||||
(kw for kw in keyword.kwlist
|
||||
if kw not in (looping + conditionals + boolean_ops +
|
||||
import_stmts + object_defs))
|
||||
),
|
||||
("Statement", "pythonStatement", "keyword",
|
||||
(' '.join(object_defs) +
|
||||
' nextgroup=pythonFunction skipwhite')),
|
||||
("Function","pythonFunction", "match",
|
||||
contained('"[a-zA-Z_][a-zA-Z0-9_]*"')),
|
||||
("Repeat", "pythonRepeat", "keyword", looping),
|
||||
("Conditional", "pythonConditional", "keyword",
|
||||
conditionals),
|
||||
("Operator", "pythonOperator", "keyword", boolean_ops),
|
||||
("PreCondit", "pythonPreCondit", "keyword", import_stmts),
|
||||
("Comment", "pythonComment", "match",
|
||||
'"#.*$" contains=pythonTodo'),
|
||||
("Todo", "pythonTodo", "keyword",
|
||||
contained(' '.join(todos))),
|
||||
("String", "pythonString", "region", str_regexes()),
|
||||
("Special", "pythonEscape", "match",
|
||||
(contained(esc) for esc in escapes
|
||||
if not '$' in esc)),
|
||||
("Special", "pythonEscape", "match", r'"\\$"'),
|
||||
]
|
||||
),
|
||||
("python_highlight_numbers",
|
||||
[("Number", "pythonNumber", "match", numbers)]
|
||||
),
|
||||
("python_highlight_builtins",
|
||||
[("Function", "pythonBuiltin", "keyword", builtin_names)]
|
||||
),
|
||||
("python_highlight_exceptions",
|
||||
[("Exception", "pythonException", "keyword",
|
||||
exception_names)]
|
||||
),
|
||||
("python_highlight_space_errors",
|
||||
[("Error", "pythonSpaceError", "match",
|
||||
("display " + err for err in space_errors))]
|
||||
)
|
||||
)
|
||||
|
||||
def syn_prefix(type_, kind):
|
||||
return 'syn %s %s ' % (type_, kind)
|
||||
|
||||
def fill_stmt(iterable, fill_len):
|
||||
"""Yield a string that fills at most fill_len characters with strings
|
||||
returned by 'iterable' and separated by a space"""
|
||||
# Deal with trailing char to handle ' '.join() calculation
|
||||
fill_len += 1
|
||||
overflow = None
|
||||
it = iter(iterable)
|
||||
while True:
|
||||
buffer_ = []
|
||||
total_len = 0
|
||||
if overflow:
|
||||
buffer_.append(overflow)
|
||||
total_len += len(overflow) + 1
|
||||
overflow = None
|
||||
while total_len < fill_len:
|
||||
try:
|
||||
new_item = it.next()
|
||||
buffer_.append(new_item)
|
||||
total_len += len(new_item) + 1
|
||||
except StopIteration:
|
||||
if buffer_:
|
||||
break
|
||||
if overflow:
|
||||
yield overflow
|
||||
return
|
||||
if total_len > fill_len:
|
||||
overflow = buffer_.pop()
|
||||
total_len -= len(overflow) - 1
|
||||
ret = ' '.join(buffer_)
|
||||
assert len(ret) <= fill_len
|
||||
yield ret
|
||||
|
||||
FILL = 80
|
||||
|
||||
def main(file_path):
|
||||
with open(file_path, 'w') as FILE:
|
||||
# Comment for file
|
||||
print>>FILE, comment_header % subversion[1:]
|
||||
print>>FILE, ''
|
||||
# Statements at start of file
|
||||
print>>FILE, statement_header
|
||||
print>>FILE, ''
|
||||
# Generate case for python_highlight_all
|
||||
print>>FILE, 'if exists("python_highlight_all")'
|
||||
for statement_var, statement_parts in statements:
|
||||
if statement_var:
|
||||
print>>FILE, ' let %s = 1' % statement_var
|
||||
else:
|
||||
print>>FILE, 'endif'
|
||||
print>>FILE, ''
|
||||
# Generate Python groups
|
||||
for statement_var, statement_parts in statements:
|
||||
if statement_var:
|
||||
print>>FILE, 'if exists("%s")' % statement_var
|
||||
indent = ' '
|
||||
else:
|
||||
indent = ''
|
||||
for colour_group, group, type_, arguments in statement_parts:
|
||||
if not isinstance(arguments, basestring):
|
||||
prefix = syn_prefix(type_, group)
|
||||
if type_ == 'keyword':
|
||||
stmt_iter = fill_stmt(arguments,
|
||||
FILL - len(prefix) - len(indent))
|
||||
try:
|
||||
while True:
|
||||
print>>FILE, indent + prefix + stmt_iter.next()
|
||||
except StopIteration:
|
||||
print>>FILE, ''
|
||||
else:
|
||||
for argument in arguments:
|
||||
print>>FILE, indent + prefix + argument
|
||||
else:
|
||||
print>>FILE, ''
|
||||
|
||||
else:
|
||||
print>>FILE, indent + syn_prefix(type_, group) + arguments
|
||||
print>>FILE, ''
|
||||
else:
|
||||
if statement_var:
|
||||
print>>FILE, 'endif'
|
||||
print>>FILE, ''
|
||||
print>>FILE, ''
|
||||
# Associating Python group with Vim colour group
|
||||
for statement_var, statement_parts in statements:
|
||||
if statement_var:
|
||||
print>>FILE, ' if exists("%s")' % statement_var
|
||||
indent = ' '
|
||||
else:
|
||||
indent = ' '
|
||||
for colour_group, group, type_, arguments in statement_parts:
|
||||
print>>FILE, (indent + "hi def link %s %s" %
|
||||
(group, colour_group))
|
||||
else:
|
||||
if statement_var:
|
||||
print>>FILE, ' endif'
|
||||
print>>FILE, ''
|
||||
# Statements at the end of the file
|
||||
print>>FILE, statement_footer
|
||||
|
||||
if __name__ == '__main__':
|
||||
main("python.vim")
|
||||
87
Misc/Vim/vimrc
Normal file
87
Misc/Vim/vimrc
Normal file
@@ -0,0 +1,87 @@
|
||||
" vimrc file for following the coding standards specified in PEP 7 & 8.
|
||||
"
|
||||
" To use this file, source it in your own personal .vimrc file (``source
|
||||
" <filename>``) or, if you don't have a .vimrc file, you can just symlink to it
|
||||
" (``ln -s <this file> ~/.vimrc``). All options are protected by autocmds
|
||||
" (read below for an explanation of the command) so blind sourcing of this file
|
||||
" is safe and will not affect your settings for non-Python or non-C files.
|
||||
"
|
||||
"
|
||||
" All setting are protected by 'au' ('autocmd') statements. Only files ending
|
||||
" in .py or .pyw will trigger the Python settings while files ending in *.c or
|
||||
" *.h will trigger the C settings. This makes the file "safe" in terms of only
|
||||
" adjusting settings for Python and C files.
|
||||
"
|
||||
" Only basic settings needed to enforce the style guidelines are set.
|
||||
" Some suggested options are listed but commented out at the end of this file.
|
||||
|
||||
" Number of spaces that a pre-existing tab is equal to.
|
||||
" For the amount of space used for a new tab use shiftwidth.
|
||||
au BufRead,BufNewFile *py,*pyw,*.c,*.h set tabstop=8
|
||||
|
||||
" What to use for an indent.
|
||||
" This will affect Ctrl-T and 'autoindent'.
|
||||
" Python: 4 spaces
|
||||
" C: tabs (pre-existing files) or 4 spaces (new files)
|
||||
au BufRead,BufNewFile *.py,*pyw set shiftwidth=4
|
||||
au BufRead,BufNewFile *.py,*.pyw set expandtab
|
||||
fu Select_c_style()
|
||||
if search('^\t', 'n', 150)
|
||||
set shiftwidth=8
|
||||
set noexpandtab
|
||||
el
|
||||
set shiftwidth=4
|
||||
set expandtab
|
||||
en
|
||||
endf
|
||||
au BufRead,BufNewFile *.c,*.h call Select_c_style()
|
||||
au BufRead,BufNewFile Makefile* set noexpandtab
|
||||
|
||||
" Use the below highlight group when displaying bad whitespace is desired.
|
||||
highlight BadWhitespace ctermbg=red guibg=red
|
||||
|
||||
" Display tabs at the beginning of a line in Python mode as bad.
|
||||
au BufRead,BufNewFile *.py,*.pyw match BadWhitespace /^\t\+/
|
||||
" Make trailing whitespace be flagged as bad.
|
||||
au BufRead,BufNewFile *.py,*.pyw,*.c,*.h match BadWhitespace /\s\+$/
|
||||
|
||||
" Wrap text after a certain number of characters
|
||||
" Python: 79
|
||||
" C: 79
|
||||
au BufRead,BufNewFile *.py,*.pyw,*.c,*.h set textwidth=79
|
||||
|
||||
" Turn off settings in 'formatoptions' relating to comment formatting.
|
||||
" - c : do not automatically insert the comment leader when wrapping based on
|
||||
" 'textwidth'
|
||||
" - o : do not insert the comment leader when using 'o' or 'O' from command mode
|
||||
" - r : do not insert the comment leader when hitting <Enter> in insert mode
|
||||
" Python: not needed
|
||||
" C: prevents insertion of '*' at the beginning of every line in a comment
|
||||
au BufRead,BufNewFile *.c,*.h set formatoptions-=c formatoptions-=o formatoptions-=r
|
||||
|
||||
" Use UNIX (\n) line endings.
|
||||
" Only used for new files so as to not force existing files to change their
|
||||
" line endings.
|
||||
" Python: yes
|
||||
" C: yes
|
||||
au BufNewFile *.py,*.pyw,*.c,*.h set fileformat=unix
|
||||
|
||||
|
||||
" ----------------------------------------------------------------------------
|
||||
" The following section contains suggested settings. While in no way required
|
||||
" to meet coding standards, they are helpful.
|
||||
|
||||
" Set the default file encoding to UTF-8: ``set encoding=utf-8``
|
||||
|
||||
" Puts a marker at the beginning of the file to differentiate between UTF and
|
||||
" UCS encoding (WARNING: can trick shells into thinking a text file is actually
|
||||
" a binary file when executing the text file): ``set bomb``
|
||||
|
||||
" For full syntax highlighting:
|
||||
"``let python_highlight_all=1``
|
||||
"``syntax on``
|
||||
|
||||
" Automatically indent based on file type: ``filetype indent on``
|
||||
" Keep indentation level from previous line: ``set autoindent``
|
||||
|
||||
" Folding based on indentation: ``set foldmethod=indent``
|
||||
Reference in New Issue
Block a user