Browse Source

feat(chezmoi): add completion plugin (#12696)

Alexander Schaber 2 months ago
parent
commit
a72a26406a
2 changed files with 25 additions and 0 deletions
  1. 11 0
      plugins/chezmoi/README.md
  2. 14 0
      plugins/chezmoi/chezmoi.plugin.zsh

+ 11 - 0
plugins/chezmoi/README.md

@@ -0,0 +1,11 @@
+# chezmoi Plugin
+
+## Introduction
+
+This `chezmoi` plugin sets up completion for [chezmoi](https://chezmoi.io).
+
+To use it, add `chezmoi` to the plugins array of your zshrc file:
+
+```bash
+plugins=(... chezmoi)
+```

+ 14 - 0
plugins/chezmoi/chezmoi.plugin.zsh

@@ -0,0 +1,14 @@
+# COMPLETION FUNCTION
+if (( ! $+commands[chezmoi] )); then
+  return
+fi
+
+# If the completion file doesn't exist yet, we need to autoload it and
+# bind it to `chezmoi`. Otherwise, compinit will have already done that.
+if [[ ! -f "$ZSH_CACHE_DIR/completions/_chezmoi" ]]; then
+  typeset -g -A _comps
+  autoload -Uz _chezmoi
+  _comps[chezmoi]=_chezmoi
+fi
+
+chezmoi completion zsh >| "$ZSH_CACHE_DIR/completions/_chezmoi" &|