From 3d1391f35c6580f93b91ece18db3da903e0b3c01 Mon Sep 17 00:00:00 2001 From: Clint Adams Date: Wed, 5 Apr 2006 02:03:56 +0000 Subject: [PATCH] 22392: completion for ladspa's analyseplugin --- ChangeLog | 5 +++++ Completion/Linux/Command/_analyseplugin | 25 +++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 Completion/Linux/Command/_analyseplugin diff --git a/ChangeLog b/ChangeLog index c9ad7a196..ad0d87da7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2006-04-04 Clint Adams + + * 22392: Completion/Linux/Command/_analyseplugin: + completion for ladspa's analyseplugin. + 2006-03-29 Peter Stephenson * users/10107: Doc/Zsh/jobs.yo: SIGQUIT is ignored by the shell. 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