summaryrefslogtreecommitdiff
path: root/Completion/Unix/Command/_rrdtool
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Unix/Command/_rrdtool')
-rw-r--r--Completion/Unix/Command/_rrdtool26
1 files changed, 14 insertions, 12 deletions
diff --git a/Completion/Unix/Command/_rrdtool b/Completion/Unix/Command/_rrdtool
index 9d097bd77..96bdaf0db 100644
--- a/Completion/Unix/Command/_rrdtool
+++ b/Completion/Unix/Command/_rrdtool
@@ -1,23 +1,25 @@
#compdef rrdtool
-_arguments \
+local curcontext="$curcontext" state line expl ret=1
+
+_arguments -C \
':rrdtool command:(create update updatev graph dump restore
last lastupdate first help info fetch tune
resize xport)' \
- '*::subcmd:->subcmd' && return 0
+ '*:: :->subcmds' && ret=0
+curcontext="${curcontext%:*}-$words[1]:"
case "$state" in
- (subcmd)
-
- case "$words[1]" in
+ (subcmds)
+ case "$words[1]" in
(help)
- _wanted -V 'subcommands' expl 'subcommand' compadd \
- create update updatev graph dump restore last lastupdate \
- first help info fetch tune resize xport
- ;;
+ _wanted -V 'subcommands' expl 'subcommand' compadd \
+ create update updatev graph dump restore last lastupdate \
+ first help info fetch tune resize xport
+ ;;
(*)
- _files
- ;;
- esac
+ _files
+ ;;
+ esac
;;
esac