summaryrefslogtreecommitdiff
path: root/Completion/Linux/Command/_analyseplugin
diff options
context:
space:
mode:
authorClint Adams <clint@users.sourceforge.net>2006-04-05 02:03:56 +0000
committerClint Adams <clint@users.sourceforge.net>2006-04-05 02:03:56 +0000
commit3d1391f35c6580f93b91ece18db3da903e0b3c01 (patch)
treec487c32c3b1d9ea33e444f586030634b334ee84b /Completion/Linux/Command/_analyseplugin
parent855f73c600822d8cb83e8c9de7b56fd8691c9ced (diff)
downloadzsh-3d1391f35c6580f93b91ece18db3da903e0b3c01.tar.gz
zsh-3d1391f35c6580f93b91ece18db3da903e0b3c01.zip
22392: completion for ladspa's analyseplugin
Diffstat (limited to 'Completion/Linux/Command/_analyseplugin')
-rw-r--r--Completion/Linux/Command/_analyseplugin25
1 files changed, 25 insertions, 0 deletions
diff --git a/Completion/Linux/Command/_analyseplugin b/Completion/Linux/Command/_analyseplugin
new file mode 100644
index 000000000..e7f90ba7b
--- /dev/null
+++ b/Completion/Linux/Command/_analyseplugin
@@ -0,0 +1,25 @@
+#compdef analyseplugin
+
+local expl context state line nopts ret=1
+typeset -A opt_args
+
+_arguments \
+ '-l[Gives a brief listing (one line per plugin)]' \
+ '(-)1:plugin file:->pfile' \
+ '(-)2::plugin label:->plabel' && ret=0
+
+case "$state" in
+ pfile)
+ _wanted plugin-files expl 'plugin file' compadd \
+ ${~${^${${(f)"$(_call_program ladspa-plugins listplugins 2> /dev/null)"}:#[[:space:]]*}/%:/(:t:r)}} \
+ && return
+ ;;
+ plabel)
+ typeset -a plabel
+ nopts=(${words:#-*})
+ plabel=(${${(f)"$($nopts[1] -l $nopts[2] 2> /dev/null)"}/[[:space:]]##/:})
+ _describe -t plugin-label 'plugin label' plabel && return
+ ;;
+esac
+
+return ret