From 4c8cd395d3261470192ff735df32ab1bcfac0712 Mon Sep 17 00:00:00 2001 From: thbourlove Date: Thu, 23 Jan 2014 22:33:50 +0000 Subject: [PATCH] add pear/pecl plugin --- plugins/pear/pear.plugin.zsh | 37 ++++++++++++++++++++++++++++++++++++ plugins/pecl/pecl.plugin.zsh | 37 ++++++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 plugins/pear/pear.plugin.zsh create mode 100644 plugins/pecl/pecl.plugin.zsh diff --git a/plugins/pear/pear.plugin.zsh b/plugins/pear/pear.plugin.zsh new file mode 100644 index 000000000..b61f704d3 --- /dev/null +++ b/plugins/pear/pear.plugin.zsh @@ -0,0 +1,37 @@ +# ------------------------------------------------------------------------------ +# FILE: pear.plugin.zsh +# DESCRIPTION: oh-my-zsh pear plugin file. +# AUTHOR: Hongbo Tang (thbourlove@gmail.com) +# VERSION: 1.0.0 +# ------------------------------------------------------------------------------ + +_pear_get_command_list () { + pear help | sed '1d;/Usage:/,$d;s/ .*//g' +} + +_pear_get_package_list () { + pear list | sed '1,/PACKAGE/d;s/ .*//g' +} + +_pear () { + local curcontext="$curcontext" state line + typeset -A opt_args + _arguments \ + '1: :->command'\ + '2: :->package'\ + '3: :->extra' + case $state in + command) + compadd `_pear_get_command_list` + ;; + package) + case $words[2] in + uninstall|upgrade|package-dependencies|info) + compadd `_pear_get_package_list` + ;; + esac + ;; + esac +} + +compdef _pear pear diff --git a/plugins/pecl/pecl.plugin.zsh b/plugins/pecl/pecl.plugin.zsh new file mode 100644 index 000000000..be22e85b2 --- /dev/null +++ b/plugins/pecl/pecl.plugin.zsh @@ -0,0 +1,37 @@ +# ------------------------------------------------------------------------------ +# FILE: pecl.plugin.zsh +# DESCRIPTION: oh-my-zsh pecl plugin file. +# AUTHOR: Hongbo Tang (thbourlove@gmail.com) +# VERSION: 1.0.0 +# ------------------------------------------------------------------------------ + +_pecl_get_command_list () { + pecl help | sed '1d;/Usage:/,$d;s/ .*//g' +} + +_pecl_get_package_list () { + pecl list | sed '1,/PACKAGE/d;s/ .*//g' +} + +_pecl () { + local curcontext="$curcontext" state line + typeset -A opt_args + _arguments \ + '1: :->command'\ + '2: :->package'\ + '3: :->extra' + case $state in + command) + compadd `_pecl_get_command_list` + ;; + package) + case $words[2] in + uninstall|upgrade|package-dependencies|info) + compadd `_pecl_get_package_list` + ;; + esac + ;; + esac +} + +compdef _pecl pecl