From 7bbebcd520a113eb82e869aecca8f5c825540700 Mon Sep 17 00:00:00 2001 From: nervo Date: Tue, 22 Oct 2024 21:51:40 +0200 Subject: [PATCH] feat(rclone): create completion plugin (#12754) --- plugins/rclone/README.md | 9 +++++++++ plugins/rclone/rclone.plugin.zsh | 14 ++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 plugins/rclone/README.md create mode 100644 plugins/rclone/rclone.plugin.zsh diff --git a/plugins/rclone/README.md b/plugins/rclone/README.md new file mode 100644 index 000000000..aa2ced94a --- /dev/null +++ b/plugins/rclone/README.md @@ -0,0 +1,9 @@ +# Rclone plugin + +This plugin adds completion for [Rclone](https://rclone.org/), the command-line program to manage files on cloud storage. + +To use it, add `rclone` to the plugins array in your zshrc file: + +```zsh +plugins=(... rclone) +``` 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" &|