Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Bug#459455: Completion for vim-addons
- X-seq: zsh-workers 24365
- From: Clint Adams <schizo@xxxxxxxxxx>
- To: Chris Lamb <chris@xxxxxxxxxxxxxxxx>, 459455@xxxxxxxxxxxxxxx
- Subject: Re: Bug#459455: Completion for vim-addons
- Date: Sun, 6 Jan 2008 15:14:54 -0500
- Cc: zsh-workers@xxxxxxxxxx
- In-reply-to: <20080106171544.5fca488d@xxxxxxxxxxxxxxxxxxxxx>
- Mail-followup-to: Chris Lamb <chris@xxxxxxxxxxxxxxxx>, 459455@xxxxxxxxxxxxxxx, zsh-workers@xxxxxxxxxx
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
- References: <20080106171544.5fca488d@xxxxxxxxxxxxxxxxxxxxx>
On Sun, Jan 06, 2008 at 05:15:44PM +0000, Chris Lamb wrote:
> Attached is a Zsh completion script for Stefano Zacchiroli's "vim-addons"
> script that is shipped with Debian's "vim-addon-manager" package.
Committing to CVS.
Index: Completion/Debian/Command/_vim-addons
===================================================================
RCS file: Completion/Debian/Command/_vim-addons
diff -N Completion/Debian/Command/_vim-addons
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ Completion/Debian/Command/_vim-addons 6 Jan 2008 20:11:07 -0000
@@ -0,0 +1,50 @@
+#compdef vim-addons
+
+local state line cmds ret=1
+typeset -A opt_args
+
+_arguments -C \
+ {-q,--query}'[be quiet and make the output more parseable]' \
+ {-r,--registry-dir}'[set the registry directory]' \
+ {-s,--source-dir}'[set addon source directory]' \
+ {-t,--target-dir}'[set addon target directory]' \
+ {-v,--verbose}'[increase verbosity]' \
+ {-y,--system-dir}'[set system-wide target directory]' \
+ {-h,--help}'[help]' \
+ {-w,--system-wide}'[set target directory to the system-wide one (overrides -t)]' \
+ '1: :->cmds' \
+ '*: :->args' && ret=0
+
+case $state in
+ cmds)
+ cmds=(
+ 'install:install the specified addon'
+ 'remove:remove the specified addon'
+ 'list:list available addons in registry'
+ 'status:list the status of addons'
+ 'disable:disable the specified addons'
+ 'amend:under the effects of the previous disable'
+ 'files:list the files composing the specified addon'
+ 'show:display detailed information about the specified addon'
+ )
+ _describe -t commands 'vim-addons command' cmds && ret=0
+ ;;
+ args)
+ case $line[1] in
+ install)
+ _wanted addon expl 'addon' compadd $(command vim-addons -q | awk '$2 == "removed" { print $1 }') && ret=0
+ ;;
+ amend)
+ _wanted addon expl 'addon' compadd $(command vim-addons -q | awk '$2 == "disabled" { print $1 }') && ret=0
+ ;;
+ remove)
+ _wanted addon expl 'addon' compadd $(command vim-addons -q | awk '$2 ~ /disabled|installed/ { print $1 }') && ret=0
+ ;;
+ files|status|disable|show)
+ _wanted addon expl 'addon' compadd $(command vim-addons list) && ret=0
+ ;;
+ esac
+ ;;
+esac
+
+return ret
Messages sorted by:
Reverse Date,
Date,
Thread,
Author