diff options
| author | Sorin Ionescu <sorin.ionescu@gmail.com> | 2011-09-25 20:10:19 -0400 |
|---|---|---|
| committer | Sorin Ionescu <sorin.ionescu@gmail.com> | 2011-09-25 20:10:38 -0400 |
| commit | e0bda00d2bd1828cb38290f8af51d81f44e7db99 (patch) | |
| tree | 0c78a67823fedd0917dc87f90a20b2b7e437f2b8 | |
| parent | Rewrite/complete _teamocil (diff) | |
| download | zsh-completions-e0bda00d2bd1828cb38290f8af51d81f44e7db99.tar zsh-completions-e0bda00d2bd1828cb38290f8af51d81f44e7db99.tar.gz zsh-completions-e0bda00d2bd1828cb38290f8af51d81f44e7db99.tar.bz2 zsh-completions-e0bda00d2bd1828cb38290f8af51d81f44e7db99.tar.lz zsh-completions-e0bda00d2bd1828cb38290f8af51d81f44e7db99.tar.xz zsh-completions-e0bda00d2bd1828cb38290f8af51d81f44e7db99.tar.zst zsh-completions-e0bda00d2bd1828cb38290f8af51d81f44e7db99.zip | |
vagrant: complete vm names
| -rw-r--r-- | _vagrant | 13 |
1 files changed, 10 insertions, 3 deletions
@@ -1,4 +1,4 @@ -#compdef vagrant +#compdef vagrant # ------------------------------------------------------------------------------ # Description # ----------- @@ -62,6 +62,11 @@ __box_list () _wanted application expl 'command' compadd $(command ls -1 $HOME/.vagrant/boxes 2>/dev/null| sed -e 's/ /\\ /g') } +__vm_list () +{ + _wanted application expl 'command' compadd $(command grep Vagrantfile -oe '^[^#]*\.vm\.define *:\([a-zA-Z0-9]\+\)' 2>/dev/null | cut -d: -f2) +} + __vagrant-box () { local curcontext="$curcontext" state line @@ -80,7 +85,7 @@ __vagrant-box () (options) case $line[1] in (repackage|remove) - _arguments ':feature:__box_list' + _arguments ':feature:__box_list' ;; esac ;; @@ -109,12 +114,14 @@ case $state in (options) case $line[1] in (help) - _arguments ':feature:__task_list' + _arguments ':feature:__task_list' ;; (box) __vagrant-box ;; + (up|provision|package|destroy|reload|ssh|halt|resume|status) + _arguments ':feature:__vm_list' esac ;; esac |
