2021-12-31 15:55:01 +08:00
|
|
|
# Python plugin
|
2018-10-03 05:51:14 +08:00
|
|
|
|
2021-12-31 15:55:01 +08:00
|
|
|
The plugin adds several aliases for useful [Python](https://www.python.org/) commands.
|
2018-10-03 05:51:14 +08:00
|
|
|
|
2021-12-31 15:55:01 +08:00
|
|
|
To use it, add `python` to the plugins array in your zshrc file:
|
2021-09-25 04:37:09 +08:00
|
|
|
|
|
|
|
```zsh
|
2018-10-03 05:51:14 +08:00
|
|
|
plugins=(... python)
|
|
|
|
```
|
|
|
|
|
|
|
|
## Aliases
|
|
|
|
|
2021-12-31 15:55:01 +08:00
|
|
|
| Command | Description |
|
|
|
|
| ---------------- | -------------------------------------------------------------------------------------- |
|
2023-11-24 16:35:46 +08:00
|
|
|
| `py` | Runs `python3`. Only set if `py` is not installed. |
|
2021-12-31 15:55:01 +08:00
|
|
|
| `ipython` | Runs the appropriate `ipython` version according to the activated virtualenv |
|
|
|
|
| `pyfind` | Finds .py files recursively in the current directory |
|
|
|
|
| `pyclean [dirs]` | Deletes byte-code and cache files from a list of directories or the current one |
|
|
|
|
| `pygrep <text>` | Looks for `text` in `*.py` files in the current directory, recursively |
|
|
|
|
| `pyuserpaths` | Add user site-packages folders to `PYTHONPATH`, for Python 2 and 3 |
|
|
|
|
| `pyserver` | Starts an HTTP server on the current directory (use `--directory` for a different one) |
|
2021-04-02 05:35:00 +08:00
|
|
|
|
|
|
|
## Virtual environments
|
|
|
|
|
2024-03-03 20:04:19 +08:00
|
|
|
The plugin provides three utilities to manage Python 3.3+ [venv](https://docs.python.org/3/library/venv.html)
|
|
|
|
virtual environments:
|
2021-04-02 05:35:00 +08:00
|
|
|
|
2024-03-03 20:04:19 +08:00
|
|
|
- `mkv [name]`: make a new virtual environment called `name` (default: if set `$PYTHON_VENV_NAME`, else
|
|
|
|
`venv`) in the current directory.
|
2021-04-02 05:35:00 +08:00
|
|
|
|
2024-03-03 20:04:19 +08:00
|
|
|
- `vrun [name]`: Activate the virtual environment called `name` (default: if set `$PYTHON_VENV_NAME`, else
|
|
|
|
`venv`) in the current directory.
|
|
|
|
|
|
|
|
- `auto_vrun`: Automatically activate the venv virtual environment when entering a directory containing
|
2024-05-08 03:30:23 +08:00
|
|
|
`<venv-name>/bin/activate`, and automatically deactivate it when navigating out of it (keeps venv activated
|
|
|
|
in subdirectories).
|
2024-03-03 20:04:19 +08:00
|
|
|
- To enable the feature, set `export PYTHON_AUTO_VRUN=true` before sourcing oh-my-zsh.
|
2024-05-08 03:30:23 +08:00
|
|
|
- Plugin activates first virtual environment in lexicographic order whose name begins with `<venv-name>`.
|
|
|
|
The default virtual environment name is `venv`. To use a different name, set
|
2024-03-03 20:04:19 +08:00
|
|
|
`export PYTHON_VENV_NAME=<venv-name>`. For example: `export PYTHON_VENV_NAME=".venv"`
|