my setup for a python development environment
sketch so far:
use virtualenv wrapper changed mkvirtualenv function to to virtualenvwrapper_bashrc
function mkvirtualenv () { verify_workon_home (cd "$WORKON_HOME"; virtualenv $*) if [ ! -f $WORKON_HOME/$1/bin/postactivate ] then workon "${@:-1}" easy_install ipython easy_install pysmell wget http://www.eletztrick.de/software/mkvimproject/releases/0.4.2.3/mkvimproject-0.4.2.3.tar.gz easy_install mkvimproject-0.4.2.3.tar.gz rm mkvimproject-0.4.2.3.tar.gz deactivate touch $WORKON_HOME/$1/bin/postactivate postactivate="$WORKON_HOME/$1/bin/postactivate" echo "cd $WORKON_HOME/$1" >> $postactivate echo "export PYTHONPATH=$WORKON_HOME/$1/scr:$PYTHONPATH" >> $postactivate echo "if [ ! -d $WORKON_HOME/$1/src ]" >> $postactivate echo "then" >> $postactivate echo " mkdir -p $WORKON_HOME/$1/src" >> $postactivate echo "fi" >> $postactivate echo "if [ ! -f $WORKON_HOME/$1/$1.vpj ]" >> $postactivate echo "then" >> $postactivate echo " mkvimproject -o $1.vpj -s python" >> $postactivate echo "fi" >> $postactivate echo "if [ ! -f $WORKON_HOME/$1/PYSMELLTAGS ]" >> $postactivate echo "then" >> $postactivate echo " pysmell src;" >> $postactivate echo " cd lib/python2.5;" >> $postactivate; echo " pysmell . -x site-packages -o ../../PYSMELLTAGS.stdlib;" >> $postactivate echo " cd ../..;" >> $postactivate echo "fi" >> $postactivate echo "pproject -U" >> $postactivate fi workon "${@:-1}" }
then create a new virtual env with mkvirtualenv projectName --no-site-packages
this will setup the environment for vim and allow for the use of pysmell omnicompletion
and allows a ipython shell within the environment.