summary refs log tree commit diff
path: root/Completion/Debian/Command/_vim-addons
diff options
context:
space:
mode:
authorClint Adams <clint@users.sourceforge.net>2008-01-06 20:20:49 +0000
committerClint Adams <clint@users.sourceforge.net>2008-01-06 20:20:49 +0000
commit174143dd7c2fc1da1668a216028f0657088aa166 (patch)
tree843913bc0e658ae4030e1218daa23c546f4bfaaa /Completion/Debian/Command/_vim-addons
parent104fccc31e3d4bea207a469c53accd74920b93b2 (diff)
downloadzsh-174143dd7c2fc1da1668a216028f0657088aa166.tar.gz
zsh-174143dd7c2fc1da1668a216028f0657088aa166.tar.xz
zsh-174143dd7c2fc1da1668a216028f0657088aa166.zip
Chris Lamb: 24365: completion for vim-addons.
Diffstat (limited to 'Completion/Debian/Command/_vim-addons')
-rw-r--r--Completion/Debian/Command/_vim-addons50
1 files changed, 50 insertions, 0 deletions
diff --git a/Completion/Debian/Command/_vim-addons b/Completion/Debian/Command/_vim-addons
new file mode 100644
index 000000000..dbd0ee31d
--- /dev/null
+++ b/Completion/Debian/Command/_vim-addons
@@ -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