summaryrefslogtreecommitdiff
path: root/plugins/rclone/rclone.plugin.zsh
diff options
context:
space:
mode:
authornervo <nervo@nervo.net>2024-10-22 21:51:40 +0200
committerGitHub <noreply@github.com>2024-10-22 21:51:40 +0200
commit7bbebcd520a113eb82e869aecca8f5c825540700 (patch)
treec15bfd8acd453cd4d7c33c9a0f1f5d2811015cf4 /plugins/rclone/rclone.plugin.zsh
parenta9e29fc12c856fd235b37c223feb8b3f05905b6f (diff)
downloadzsh-7bbebcd520a113eb82e869aecca8f5c825540700.tar.gz
zsh-7bbebcd520a113eb82e869aecca8f5c825540700.tar.bz2
zsh-7bbebcd520a113eb82e869aecca8f5c825540700.zip
feat(rclone): create completion plugin (#12754)
Diffstat (limited to 'plugins/rclone/rclone.plugin.zsh')
-rw-r--r--plugins/rclone/rclone.plugin.zsh14
1 files changed, 14 insertions, 0 deletions
diff --git a/plugins/rclone/rclone.plugin.zsh b/plugins/rclone/rclone.plugin.zsh
new file mode 100644
index 000000000..a6676131c
--- /dev/null
+++ b/plugins/rclone/rclone.plugin.zsh
@@ -0,0 +1,14 @@
+# Completion
+if (( ! $+commands[rclone] )); then
+ return
+fi
+
+# If the completion file doesn't exist yet, we need to autoload it and
+# bind it to `rclone`. Otherwise, compinit will have already done that.
+if [[ ! -f "$ZSH_CACHE_DIR/completions/_rclone" ]]; then
+ typeset -g -A _comps
+ autoload -Uz _rclone
+ _comps[rclone]=_rclone
+fi
+
+rclone completion zsh - >| "$ZSH_CACHE_DIR/completions/_rclone" &|