python-ropemac is really useful for developing python in emacs, and pylint is also very handy as a analyzer. However, they both don’t work very well with virtualenv, especially because I always run emacs in server mode, and the server instance is usually not under virtualenv.
Here is how to make things work:
# You can extend python path for looking up modules prefs.add('python_path', '/your-virtualenv-dir/lib/python2.7/site-packages/')
For pylint, generate (by
pylint --generate-rcfile) or copy your default
pylintrc to project root dir. Edit it:
# Python code to execute, usually for sys.path manipulation such as # pygtk.require(). init-hook='this_file="/your-virtialenv-dir/bin/activate_this.py";execfile(this_file, dict(__file__=this_file))'
After this pylint will work even in emacs.