From 47f113c41bcea82a17d13d7af1091097152b0ceb Mon Sep 17 00:00:00 2001 From: Daniel Friesel Date: Thu, 24 Jul 2008 17:08:45 +0200 Subject: etc/completions/_envstore: Only complete vars for save, complete saved vars for rm --- etc/completions/_envstore | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) (limited to 'etc/completions') diff --git a/etc/completions/_envstore b/etc/completions/_envstore index 0be548e..2f9c18d 100644 --- a/etc/completions/_envstore +++ b/etc/completions/_envstore @@ -1,11 +1,27 @@ #compdef envstore ## vim:ft=zsh -local arguments +local arguments_action arguments_save arguments_rm arguments_eval -arguments=( - ':action:(clear eval rm save show)' - ':variable:_parameters -g \*-export' +arguments_action=( + '1:action:(clear eval rm save show)' +) +arguments_save=( + '2:variable:_parameters -g \*-export' +) +arguments_rm=( + '2:variable:($(envstore eval -e | cut -d " " -f 2 | cut -d "=" -f 1))' +) +arguments_eval=( + '2::option:(-e)' ) -_arguments -s $arguments +if [[ $CURRENT -ge 3 ]] { + case ${words[2]} in + eval) _arguments -s $arguments_eval ;; + rm) _arguments -s $arguments_rm ;; + save) _arguments -s $arguments_save ;; + esac +} else { + _arguments -s $arguments_action +} -- cgit v1.2.3