diff options
author | kronion <kronion@users.noreply.github.com> | 2022-01-19 09:49:24 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-19 16:49:24 +0100 |
commit | 00d0735704d8e1070a51bbd1334db32d2e822fe6 (patch) | |
tree | cd0f3aaa904d40af1b4a4433964d4dcf76d113d1 /plugins/poetry | |
parent | fe9d87d6dc2f3e6194862799b0707f97844e83ac (diff) | |
download | zsh-00d0735704d8e1070a51bbd1334db32d2e822fe6.tar.gz zsh-00d0735704d8e1070a51bbd1334db32d2e822fe6.tar.bz2 zsh-00d0735704d8e1070a51bbd1334db32d2e822fe6.zip |
feat(poetry): add plugin to provide completion for Poetry (#10595)
Diffstat (limited to 'plugins/poetry')
-rw-r--r-- | plugins/poetry/README.md | 9 | ||||
-rw-r--r-- | plugins/poetry/poetry.plugin.zsh | 16 |
2 files changed, 25 insertions, 0 deletions
diff --git a/plugins/poetry/README.md b/plugins/poetry/README.md new file mode 100644 index 000000000..51780cbed --- /dev/null +++ b/plugins/poetry/README.md @@ -0,0 +1,9 @@ +# Poetry Plugin + +This plugin automatically installs [Poetry](https://python-poetry.org/)'s completions for you, and keeps them up to date as your Poetry version changes. + +To use it, add `poetry` to the plugins array in your zshrc file: + +```zsh +plugins=(... poetry) +``` diff --git a/plugins/poetry/poetry.plugin.zsh b/plugins/poetry/poetry.plugin.zsh new file mode 100644 index 000000000..e872e9fd6 --- /dev/null +++ b/plugins/poetry/poetry.plugin.zsh @@ -0,0 +1,16 @@ +# Return immediately if poetry is not found +if (( ! $+commands[poetry] )); then + return +fi + +# If the completion file doesn't exist yet, we need to autoload it and +# bind it to `poetry`. Otherwise, compinit will have already done that. +if [[ ! -f "$ZSH_CACHE_DIR/completions/_poetry" ]]; then + typeset -g -A _comps + autoload -Uz _poetry + _comps[gh]=_poetry +fi + +poetry completions zsh >| "$ZSH_CACHE_DIR/completions/_poetry" &| + +unset comp_file |