pycompgen
Automatically generate shell completions for Python tools installed via uv and pipx.
Currently, bash, zsh, and fish on Linux are supported. Also, only Python
tools that use the click or argcomplete libraries are supported,
besides some select commands:
uvuvx
Installation
uv tool install pycompgen
# Or if you prefer pipx:
pipx install pycompgen
Usage
Run pycompgen to generate completions for all installed tools:
pycompgen
The tool will:
- Detect Python packages installed via
uv toolandpipxas well as some select commands - Analyze which ones support shell completions
- Generate completion files in
~/.cache/pycompgen/ - Create a source script to load all completions
Add the source script to your shell config:
# For bash: - add to ~/.bashrc:
source <(pycompgen --source) ; (pycompgen &)
# For zsh: - add to ~/.zshrc:
source <(pycompgen --shell zsh --source) ; (pycompgen --shell zsh &)
This will load the generated shell completions and generate new completions for the next time.
The fish shell will automatically read the completions generated by
pycompgen in .cache/fish/generated_completions.
Options
--cache-dir PATH: Override the default cache directory--force: Force regeneration of all completions--shell: Target shell - bash, zsh, or fish (default: ${PYCOMPGEN_SHELL:-bash})--verbose: Enable detailed output--source: Only write the source file contents to stdout and exit--cooldown-time: Minimum amount of seconds between regenerations
Development
Install development dependencies:
uv sync --group dev
uv run pre-commit install
Run tests:
uv run pytest
Run linting and formatting:
uv run ruff check src tests
uv run ruff format src tests
uv run mypy src
License
MIT
Metadata
Release files for pycompgen 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pycompgen-0.4.0.tar.gz | 31.1 kB | Details |
Release files / pycompgen-0.4.0.tar.gz
| Download URL | pycompgen-0.4.0.tar.gz |
|---|---|
| Size | 31.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
21ca75357e0f3d3be3faa2b1a2cf3810ca08aee5b632fcfd5558ae9028403216
|
|
BLAKE2b-256 checksum How to use checksums |
d3932fadacc8f533bb2a7dc3580d2080924dcee17d3f3753110804ec790db8be
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.19
|