WARNING: DEPRECATED! pyflakes-vim is officially deprecated!
The features of pyflakes-vim have been merged into other more widely-used and updated tools.
If you're using vim 8.0 or neovim, try ALE and flakes8 instead.
On older vims you can try Syntastic.
pyflakes-vim
A Vim plugin for checking Python code on the fly.
PyFlakes catches common Python errors like mistyping a variable name or accessing a local before it is bound, and also gives warnings for things like unused imports.
pyflakes-vim uses the output from PyFlakes to highlight errors in your code. To locate errors quickly, use quickfix commands like :cc.
Make sure to check vim.org for the latest updates.
Quick Installation
Make sure your
.vimrc
has:filetype on " enables filetype detection filetype plugin on " enables filetype specific plugins
Download the latest release.
If you're using pathogen, unzip the contents of
pyflakes-vim.zip
into its own bundle directory, i.e. into~/.vim/bundle/pyflakes-vim/
.Otherwise unzip
pyflakes.vim
and thepyflakes
directory into~/.vim/ftplugin/python
(or somewhere similar on your runtime path that will be sourced for Python files).
Test
Some tiny tests with:
pip install -r test-requirements.txt py.test ftplugin/python/test_flaker.py
Running from source
If you're running pyflakes-vim "from source," you'll need the PyFlakes library on your PYTHONPATH somewhere. (It is included in the vim.org zipfile.) I recommend getting the github.com/pyflakes PyFlakes fork, which retains column number information, giving more specific error locations.
Hacking
git clone --recursive git://github.com/kevinw/pyflakes-vim.git
or use the PyFlakes submodule:
git clone git://github.com/kevinw/pyflakes-vim.git cd pyflakes-vim git submodule init git submodule update
Options
Set this option in your vimrc file to disable quickfix support:
let g:pyflakes_use_quickfix = 0
The value is set to 1 by default.
Pyflakes can use Python 2 or Python 3 compiled into Vim. If you have both, you can ask Pyflakes to prefer one or the other, with this in your vimrc:
let g:pyflakes_prefer_python_version = 3
or:
let g:pyflakes_prefer_python_version = 2
Pyflakes will chose Python 2 by default, if you have both. If you prefer a version that you don't have, Pyflakes will quietly fall back to the version that you do have.
TODO
- signs support (show warning and error icons to left of the buffer area)
- configuration variables
- parse or intercept useful output from the warnings module
Changelog
Please see http://www.vim.org/scripts/script.php?script_id=2441 for a history of all changes.