Change auto-venv to be opt-in

This commit is contained in:
Robert Crews 2024-03-02 17:37:10 -08:00
commit 12163f32e9
2 changed files with 26 additions and 15 deletions

View file

@ -22,7 +22,9 @@ plugins=(... python)
## Virtual environments
The plugin provides three utilities to manage Python venvs:
The plugin provides three utilities to manage Python 3.3+
[venv](https://docs.python.org/3/library/venv.html) virtual
environments:
- `mkv [name]`: make a new virtual environment called `name` (default: `venv`) in current directory.
@ -30,10 +32,21 @@ The plugin provides three utilities to manage Python venvs:
- `auto_vrun`: Automatically activate the venv virtual environment when
cding into a directory containing `venv/bin/activate`, and
automatically deactivate the venv virtual environment when cding into
any other directory.
- Set the environment variable `VENV_NAME` to auto-activate on a
different venv name. (Example: `VENV_NAME=.venv`).
- Set the environment variable `DISABLE_AUTO_VRUN` to anything to
deactivate `auto_vrun`. (Example: `DISABLE_AUTO_VRUN=true`) Unset
`DISABLE_AUTO_VRUN` to re-enable.
automatically deactivate it when cding into any other directory,
including subdirectories.
- To enable, set `PYTHON_AUTO_VRUN` to anything. For example:
export PYTHON_AUTO_VRUN='true'
- To disable, either unset the environment variable:
unset PYTHON_AUTO_VRUN
or entirely remove `auto_vrun` from the list of functions associated
with the `chpwd` hook:
add-zsh-hook -d chpwd auto_vrun
If you disable `auto_vrun` while a virtual environment is active,
you'll need to manually `deactivate`.
- The default virtual environment name is "venv". To use a different
name, set `PYTHON_VENV_NAME`. For example:
export PYTHON_VENV_NAME='.venv'