24959d58176edd32acb6db45240b3b178a1c9887
- Author
- Kaspar V. <casaper@users.noreply.github.com>
- Committer
- GitHub <noreply@github.com>
- Date
Message
feat(pass-cli): add completions plugin (#13740)
Diff
1diff --git a/plugins/pass-cli/README.md b/plugins/pass-cli/README.md
2new file mode 100644
3index 0000000000000000000000000000000000000000..0c126a26f710eee6ce7f14bedcf74daec25f503d
4--- /dev/null
5+++ b/plugins/pass-cli/README.md
6@@ -0,0 +1,11 @@
7+# Proton Pass CLI plugin
8+
9+This plugin adds completions for [Proton Pass CLI](https://protonpass.github.io/pass-cli/).
10+
11+To use it, add `pass-cli` to the plugins array in your zshrc file:
12+
13+```zsh
14+plugins=(... pass-cli)
15+```
16+
17+This plugin does not add any aliases.
18diff --git a/plugins/pass-cli/pass-cli.plugin.zsh b/plugins/pass-cli/pass-cli.plugin.zsh
19new file mode 100644
20index 0000000000000000000000000000000000000000..b613ecf3a25d7dac6ae8f2db6a2b12da68a5cc15
21--- /dev/null
22+++ b/plugins/pass-cli/pass-cli.plugin.zsh
23@@ -0,0 +1,14 @@
24+# Autocompletion for Proton Pass CLI (pass-cli)
25+if (( ! $+commands[pass-cli] )); then
26+ return
27+fi
28+
29+# If the completion file doesn't exist yet, we need to autoload it and
30+# bind it to `pass-cli`. Otherwise, compinit will have already done that.
31+if [[ ! -f "$ZSH_CACHE_DIR/completions/_pass-cli" ]]; then
32+ typeset -g -A _comps
33+ autoload -Uz _pass-cli
34+ _comps[pass-cli]=_pass-cli
35+fi
36+
37+pass-cli completions zsh >| "$ZSH_CACHE_DIR/completions/_pass-cli" &|