From 24959d58176edd32acb6db45240b3b178a1c9887 Mon Sep 17 00:00:00 2001 From: "Kaspar V." Date: Mon, 18 May 2026 08:47:51 +0200 Subject: [PATCH] feat(pass-cli): add completions plugin (#13740) --- plugins/pass-cli/README.md | 11 +++++++++++ plugins/pass-cli/pass-cli.plugin.zsh | 14 ++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 plugins/pass-cli/README.md create mode 100644 plugins/pass-cli/pass-cli.plugin.zsh diff --git a/plugins/pass-cli/README.md b/plugins/pass-cli/README.md new file mode 100644 index 000000000..0c126a26f --- /dev/null +++ b/plugins/pass-cli/README.md @@ -0,0 +1,11 @@ +# Proton Pass CLI plugin + +This plugin adds completions for [Proton Pass CLI](https://protonpass.github.io/pass-cli/). + +To use it, add `pass-cli` to the plugins array in your zshrc file: + +```zsh +plugins=(... pass-cli) +``` + +This plugin does not add any aliases. diff --git a/plugins/pass-cli/pass-cli.plugin.zsh b/plugins/pass-cli/pass-cli.plugin.zsh new file mode 100644 index 000000000..b613ecf3a --- /dev/null +++ b/plugins/pass-cli/pass-cli.plugin.zsh @@ -0,0 +1,14 @@ +# Autocompletion for Proton Pass CLI (pass-cli) +if (( ! $+commands[pass-cli] )); then + return +fi + +# If the completion file doesn't exist yet, we need to autoload it and +# bind it to `pass-cli`. Otherwise, compinit will have already done that. +if [[ ! -f "$ZSH_CACHE_DIR/completions/_pass-cli" ]]; then + typeset -g -A _comps + autoload -Uz _pass-cli + _comps[pass-cli]=_pass-cli +fi + +pass-cli completions zsh >| "$ZSH_CACHE_DIR/completions/_pass-cli" &|