From: Vincent Driessen Date: Mon, 15 Dec 2014 08:26:41 +0000 (+0100) Subject: Merge branch 'master' into tabac-master X-Git-Url: https://git.madduck.net/etc/vim.git/commitdiff_plain/6cc5173536139551c5aa5cb3a4a35678f04caf1f?hp=ecbbbf40ce46b46e5f6d7edd661ccd1f6bc7f77a Merge branch 'master' into tabac-master --- diff --git a/README.mdown b/README.mdown index df8aa83..0ca6a65 100644 --- a/README.mdown +++ b/README.mdown @@ -5,17 +5,17 @@ a static syntax and style checker for Python source code. It supersedes both [vim-pyflakes](https://github.com/nvie/vim-pyflakes) and [vim-pep8](https://github.com/nvie/vim-pep8). -[Flake8](http://pypi.python.org/pypi/flake8/) is a wrapper around PyFlakes -(static syntax checker), PEP8 (style checker) -and Ned's MacCabe script (complexity checker). +[Flake8](https://pypi.python.org/pypi/flake8/) is a wrapper around PyFlakes +(static syntax checker), PEP8 (style checker) and Ned's MacCabe script +(complexity checker). Installation ------------ Use [vim-pathogen](https://github.com/tpope/vim-pathogen) if you're not using -it already. Make sure you've installed the [flake8](http://pypi.python.org/pypi/flake8/) package. -Then, simply put the contents of this repository in your -`~/.vim/bundle` directory. +it already. Make sure you've installed the +[flake8](https://pypi.python.org/pypi/flake8/) package. Then, simply put the +contents of this repository in your `~/.vim/bundle` directory. Usage ----- @@ -39,21 +39,9 @@ the `` key if so. For example, to remap it to `` instead, use: autocmd FileType python map :call Flake8() -To add builtins, in your .vimrc: +For flake8 configuration options please consult the following page: - let g:flake8_builtins="_,apply" - -To ignore errors, in your .vimrc: - - let g:flake8_ignore="E501,W293" - -If you want to change the max line length for PEP8: - - let g:flake8_max_line_length=99 - -To set the maximum [McCabe complexity](https://en.wikipedia.org/wiki/Cyclomatic_complexity) before a warning is issued: - - let g:flake8_max_complexity=10 +https://flake8.readthedocs.org/en/latest/config.html To customize the location of your flake8 binary, set `g:flake8_cmd`: @@ -110,21 +98,23 @@ Tips ---- A tip might be to run the Flake8 check every time you write a Python file, to enable this, add the following line to your `.vimrc` file (thanks -[Godefroid](http://github.com/gotcha)!): +[Godefroid](https://github.com/gotcha)!): autocmd BufWritePost *.py call Flake8() This plugin goes well together with the following plugin: -- [PyUnit](http://github.com/nvie/vim-pyunit) (unit test helper under `` +- [PyUnit](https://github.com/nvie/vim-pyunit) (unit test helper under `` and ``) History ------- +1.6: Deprecated configuring flake8 options through Vim settings. Instead, +advise users to use the flake8 config file. -1.5: Added markers and the option to don't show the quickfix window, also split functions into -a autoload file. Added: +1.5: Added markers and the option to don't show the quickfix window, also split +functions into a autoload file. Added: - Options: - `g:flake8_show_quickfix` diff --git a/autoload/flake8.vim b/autoload/flake8.vim index 5c54ad1..0ca4aff 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 depreciated 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,11 +71,6 @@ 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_quickfix_height', '', 5) @@ -117,7 +137,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