Merge pull request #148 from parantapa/master

Make pylint available as a python syntax checker
This commit is contained in:
Martin Grenfell 2012-01-18 04:49:52 -08:00
commit 1ef8a5b374

View File

@ -4,13 +4,15 @@
"
"Authors: Martin Grenfell <martin.grenfell@gmail.com>
" kstep <me@kstep.me>
" Parantapa Bhattacharya <parantapa@gmail.com>
"
"============================================================================
" in order to force the use of pyflakes if both flake8 and pyflakes are
" available, add this to your .vimrc:
"
" For forcing the use of flake8, pyflakes, or pylint set
"
" let g:syntastic_python_checker = 'pyflakes'
"
" in your .vimrc. Default is flake8.
if exists("loaded_python_syntax_checker")
finish
@ -19,13 +21,15 @@ let loaded_python_syntax_checker = 1
"bail if the user doesnt have his favorite checker or flake8 or pyflakes installed
if !exists('g:syntastic_python_checker') || !executable('g:syntastic_python_checker')
if executable("flake8")
let g:syntastic_python_checker = 'flake8'
elseif executable("pyflakes")
let g:syntastic_python_checker = 'pyflakes'
else
finish
endif
if executable("flake8")
let g:syntastic_python_checker = 'flake8'
elseif executable("pyflakes")
let g:syntastic_python_checker = 'pyflakes'
elseif executable("pylint")
let g:syntastic_python_checker = 'pylint'
else
finish
endif
endif
function! SyntaxCheckers_python_Term(i)
@ -47,14 +51,27 @@ function! SyntaxCheckers_python_Term(i)
return ''
endfunction
function! SyntaxCheckers_python_GetLocList()
let makeprg = g:syntastic_python_checker.' '.shellescape(expand('%'))
let errorformat =
\ '%E%f:%l: could not compile,%-Z%p^,%W%f:%l:%c: %m,%W%f:%l: %m,%-G%.%#'
if g:syntastic_python_checker == 'pylint'
function! SyntaxCheckers_python_GetLocList()
let makeprg = 'pylint -f parseable -r n -i y ' .
\ shellescape(expand('%')) .
\ ' \| sed ''s_: \[[RC]_: \[W_''' .
\ ' \| sed ''s_: \[[F]_:\ \[E_'''
let errorformat = '%f:%l: [%t%n] %m,%-GNo config%m'
let errors = SyntasticMake({ 'makeprg': makeprg, 'errorformat': errorformat })
let errors = SyntasticMake({ 'makeprg': makeprg, 'errorformat': errorformat })
return errors
endfunction
else
function! SyntaxCheckers_python_GetLocList()
let makeprg = g:syntastic_python_checker.' '.shellescape(expand('%'))
let errorformat =
\ '%E%f:%l: could not compile,%-Z%p^,%W%f:%l:%c: %m,%W%f:%l: %m,%-G%.%#'
call SyntasticHighlightErrors(errors, function('SyntaxCheckers_python_Term'))
let errors = SyntasticMake({ 'makeprg': makeprg, 'errorformat': errorformat })
return errors
endfunction
call SyntasticHighlightErrors(errors, function('SyntaxCheckers_python_Term'))
return errors
endfunction
endif