diff options
author | Marc Cornellà <marc.cornella@live.com> | 2016-09-12 17:45:10 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-09-12 17:45:10 +0200 |
commit | e1294c602cd2ca82bac363d8d909dbf5d0e7e441 (patch) | |
tree | 18242b9c44387ac21d9400d5bf8cbb3eddd32c31 /plugins | |
parent | c3a87e7df8bfd7eca64ef8a3d019c619d098960c (diff) | |
parent | 7c630309cc3a2267f3a08eaf1c408ee4069ee5a7 (diff) | |
download | zsh-e1294c602cd2ca82bac363d8d909dbf5d0e7e441.tar.gz zsh-e1294c602cd2ca82bac363d8d909dbf5d0e7e441.tar.bz2 zsh-e1294c602cd2ca82bac363d8d909dbf5d0e7e441.zip |
Merge pull request #4313 from RomanKapitonov/add-services-managing-to-brew
Add ability to autocomplete services for brew-services.
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/brew/_brew | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/plugins/brew/_brew b/plugins/brew/_brew index 1f24bd67b..19cfb22cb 100644 --- a/plugins/brew/_brew +++ b/plugins/brew/_brew @@ -33,6 +33,10 @@ _brew_outdated_formulae() { outdated_formulae=(`brew outdated`) } +_brew_installed_services() { + installed_services=(`brew services list | awk '{print $1}' | tail -n+2`) +} + local -a _1st_arguments _1st_arguments=( 'audit:check formulae for Homebrew coding style' @@ -64,6 +68,7 @@ _1st_arguments=( 'prune:remove dead links' 'remove:remove a formula' 'search:search for a formula (/regex/ or string)' + 'services:manage services' 'switch:switch between different versions of a formula' 'tap:tap a new formula repository from GitHub, or list existing taps' 'tap-info:information about a tap' @@ -82,7 +87,7 @@ _1st_arguments=( ) local expl -local -a formulae installed_formulae installed_taps official_taps outdated_formulae +local -a formulae installed_formulae installed_taps official_taps outdated_formulae installed_services _arguments \ '(-v)-v[verbose]' \ @@ -142,4 +147,28 @@ case "$words[1]" in upgrade) _brew_outdated_formulae _wanted outdated_formulae expl 'outdated formulae' compadd -a outdated_formulae ;; + services) + _arguments -C \ + '1: :->command' \ + '2: :->service' && return 0 + + local -a commands + + commands=( + 'cleanup:Get rid of stale services and unused plists' + 'list:List all services managed by brew services' + 'restart:Gracefully restart selected service' + 'start:Start selected service' + 'stop:Stop selected service' + ) + + case $state in + command) + _describe -t commands 'Action' commands + ;; + service) + _brew_installed_services + _describe -t subcommands 'Services' installed_services + ;; + esac esac |