diff --git a/plugins/sops/README.md b/plugins/sops/README.md new file mode 100644 index 000000000..57b93d021 --- /dev/null +++ b/plugins/sops/README.md @@ -0,0 +1,9 @@ +## Sops + +This plugin adds completion for [sops](https://github.com/scaleway/scaleway-cli), the simple and flexible tool for managing secrets. + +To use it, add `sops` to the plugins array in your zshrc file: + +```zsh +plugins=(... sops) +``` diff --git a/plugins/sops/sops.plugin.zsh b/plugins/sops/sops.plugin.zsh new file mode 100644 index 000000000..5ff61743e --- /dev/null +++ b/plugins/sops/sops.plugin.zsh @@ -0,0 +1,23 @@ +# Completion +if (( ! $+commands[sops] )); then + return +fi + +_sops() { + local -a opts + local cur + cur=${words[-1]} + if [[ "$cur" == "-"* ]]; then + opts=("${(@f)$(${words[@]:0:#words[@]-1} ${cur} --generate-shell-completion)}") + else + opts=("${(@f)$(${words[@]:0:#words[@]-1} --generate-shell-completion)}") + fi + + if [[ "${opts[1]}" != "" ]]; then + _describe 'values' opts + else + _files + fi +} + +compdef _sops sops