X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/00f4848e6305814c0d3491560737b492a905c7c8..a806163181ad41ec036096a2f235871682fd64cf:/autoload/flake8.vim diff --git a/autoload/flake8.vim b/autoload/flake8.vim index a610f40..81aedfd 100644 --- a/autoload/flake8.vim +++ b/autoload/flake8.vim @@ -12,16 +12,41 @@ set cpo&vim function! flake8#Flake8() call s:Flake8() + call s:Warnings() endfunction function! flake8#Flake8UnplaceMarkers() call s:UnplaceMarkers() + call s:Warnings() endfunction "" }}} "" ** internal ** {{{ +"" warnings + +let s:displayed_warnings = 0 +function s:Warnings() + if !s:displayed_warnings + let l:show_website_url = 0 + + let l:msg = "has been deprecated in favour of flake8 config files" + for setting_name in ['g:flake8_ignore', 'g:flake8_builtins', 'g:flake8_max_line_length', 'g:flake8_max_complexity'] + if exists(setting_name) + echohl WarningMsg | echom setting_name l:msg | echohl None + let l:show_website_url = 1 + endif + endfor + + if l:show_website_url + let l:url = "http://flake8.readthedocs.org/en/latest/config.html" + echohl WarningMsg | echom l:url | echohl None + endif + let s:displayed_warnings = 1 + endif +endfunction + "" config function! s:DeclareOption(name, globalPrefix, default) " {{{ @@ -46,34 +71,30 @@ function! s:Setup() " {{{ " flake8 command call s:DeclareOption('flake8_cmd', '', '"flake8"') - " flake8 stuff - call s:DeclareOption('flake8_builtins', ' --builtins=', '') - call s:DeclareOption('flake8_ignore', ' --ignore=', '') - call s:DeclareOption('flake8_max_line_length', ' --max-line-length=', '') - call s:DeclareOption('flake8_max_complexity', ' --max-complexity=', '') " quickfix call s:DeclareOption('flake8_quickfix_location', '', '"belowright"') - call s:DeclareOption('flake8_show_quickfix', '', 1) + call s:DeclareOption('flake8_quickfix_height', '', 5) + call s:DeclareOption('flake8_show_quickfix', '', 1) " markers to show call s:DeclareOption('flake8_show_in_gutter', '', 0) - call s:DeclareOption('flake8_show_in_file', '', 0) - call s:DeclareOption('flake8_max_markers', '', 500) + call s:DeclareOption('flake8_show_in_file', '', 0) + call s:DeclareOption('flake8_max_markers', '', 500) " marker signs - call s:DeclareOption('flake8_error_marker', '', '"E>"') - call s:DeclareOption('flake8_warning_marker', '', '"W>"') - call s:DeclareOption('flake8_pyflake_marker', '', '"F>"') + call s:DeclareOption('flake8_error_marker', '', '"E>"') + call s:DeclareOption('flake8_warning_marker', '', '"W>"') + call s:DeclareOption('flake8_pyflake_marker', '', '"F>"') call s:DeclareOption('flake8_complexity_marker', '', '"C>"') - call s:DeclareOption('flake8_naming_marker', '', '"N>"') + call s:DeclareOption('flake8_naming_marker', '', '"N>"') "" setup markerdata if !exists('s:markerdata') let s:markerdata = {} - let s:markerdata['E'] = { 'name': 'Flake8_Error' } - let s:markerdata['W'] = { 'name': 'Flake8_Warning' } - let s:markerdata['F'] = { 'name': 'Flake8_PyFlake' } - let s:markerdata['C'] = { 'name': 'Flake8_Complexity' } - let s:markerdata['N'] = { 'name': 'Flake8_Nameing' } + let s:markerdata['E'] = {'name': 'Flake8_Error'} + let s:markerdata['W'] = {'name': 'Flake8_Warning'} + let s:markerdata['F'] = {'name': 'Flake8_PyFlake'} + let s:markerdata['C'] = {'name': 'Flake8_Complexity'} + let s:markerdata['N'] = {'name': 'Flake8_Nameing'} endif let s:markerdata['E'].marker = s:flake8_error_marker let s:markerdata['W'].marker = s:flake8_warning_marker @@ -88,11 +109,18 @@ function! s:Flake8() " {{{ " read config call s:Setup() - if !executable(s:flake8_cmd) - echoerr "File " . s:flake8_cmd . " not found. Please install it first." + let l:executable = split(s:flake8_cmd)[0] + + if !executable(l:executable) + echoerr "File " . l:executable . " not found. Please install it first." return endif + " clear old + call s:UnplaceMarkers() + let s:matchids = [] + let s:signids = [] + " store old grep settings (to restore later) let l:old_gfm=&grepformat let l:old_gp=&grepprg @@ -111,7 +139,7 @@ function! s:Flake8() " {{{ " perform the grep itself let &grepformat="%f:%l:%c: %m\,%f:%l: %m" - let &grepprg=s:flake8_cmd.s:flake8_builtins.s:flake8_ignore.s:flake8_max_line_length.s:flake8_max_complexity + let &grepprg=s:flake8_cmd silent! grep! "%" " restore grep settings @@ -130,7 +158,7 @@ function! s:Flake8() " {{{ " quickfix if !s:flake8_show_quickfix == 0 " open cwindow - execute s:flake8_quickfix_location." copen" + execute s:flake8_quickfix_location." copen".s:flake8_quickfix_height setlocal wrap nnoremap c :cclose nnoremap q :cclose @@ -161,11 +189,6 @@ function! s:PlaceMarkers(results) " {{{ endfor endif - " clear old - call s:UnplaceMarkers() - let s:matchids = [] - let s:signids = [] - " place let l:index0 = 100 let l:index = l:index0