Skip to content
Python virtual environment interface for Emacs
Emacs Lisp Makefile Shell
Branch: master
Clone or download

Latest commit


Type Name Latest commit message Commit time
Failed to load latest commit information.
scripts Oops, do not comment out git commands Mar 30, 2018
test Use f-equal? instead of equal for directory checks. Aug 22, 2015
.bumpversion.cfg Bump version: 1.20 → 1.21 Oct 6, 2019
.gitignore Added Makefile, Cask and .travis.yml Oct 18, 2013
.travis.yml Use the new Travis infrastructure Oct 15, 2015
Cask Bump to v1.1 Feb 24, 2014
Makefile New release process Mar 30, 2018 Add melpa stable badge Aug 9, 2015
pyvenv.el Mark unused arguments Dec 2, 2019

pyvenv.el, Python virtual environment support for Emacs

Travis-CI Build Status MELPA Stable

This is a simple global minor mode which will replicate the changes done by virtualenv activation inside Emacs.

The main entry points are pyvenv-activate, which queries the user for a virtual environment directory to activate, and pyvenv-workon, which queries for a virtual environment in $WORKON_HOME (from

Similar Projects

virtualenv.el is the original virtualenv implementation for Emacs. I used it for a long time, but didn’t like some of the design decisions.

For example, it does not modify process-environment so does not set a virtual environment for M-x compile and other external processes. Also, M-x virtualenv-workon requires a prefix argument to actually change the current virtual environment. And it does not support virtualenvwrapper’s hooks, which I use to set up a working environment.

All in all, too much magic for too little gain. So I figured I’d write my own. Still, it’s an excellent package and I’m very grateful to have used it for a long time.

You can’t perform that action at this time.