aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Contributions
diff options
context:
space:
mode:
authorChes Martin2014-05-25 23:05:00 +0700
committerAdam Vandenberg2014-05-25 09:48:29 -0700
commitf580e6e148f4b2d30bea4c76ed7e965484aff65c (patch)
tree5cd7406d9d1070a74056f15c17d3df0b49d7d543 /Library/Contributions
parentcee3c1e5b71efcf25aa23ef8fc1ee5fe72138591 (diff)
downloadhomebrew-f580e6e148f4b2d30bea4c76ed7e965484aff65c.tar.bz2
bash completion for `brew list --multiple`
As per 9ab605c7f1883 removal of `brew dirty`. `--multiple` *implies* `--versions`, thus IMO it shouldn't be necessary to also explicitly include the `--versions` option, but that's a separate matter. For now this offers the small added convenience of: $ brew list --m<TAB><TAB> to quickly expand the `brew dirty` equivalent. Closes #29571. Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Diffstat (limited to 'Library/Contributions')
-rw-r--r--Library/Contributions/brew_bash_completion.sh19
1 files changed, 16 insertions, 3 deletions
diff --git a/Library/Contributions/brew_bash_completion.sh b/Library/Contributions/brew_bash_completion.sh
index 6f97935f0..9aa58fed1 100644
--- a/Library/Contributions/brew_bash_completion.sh
+++ b/Library/Contributions/brew_bash_completion.sh
@@ -282,25 +282,38 @@ _brew_linkapps ()
_brew_list ()
{
+ local allopts="--unbrewed --verbose --pinned --versions --multiple"
local cur="${COMP_WORDS[COMP_CWORD]}"
+
case "$cur" in
--*)
- # options to brew-list are mutually exclusive
+ # most options to brew-list are mutually exclusive
if __brewcomp_words_include "--unbrewed"; then
return
elif __brewcomp_words_include "--verbose"; then
return
elif __brewcomp_words_include "--pinned"; then
return
+ # --multiple only applies with --versions
+ elif __brewcomp_words_include "--multiple"; then
+ __brewcomp "--versions"
+ return
elif __brewcomp_words_include "--versions"; then
+ __brewcomp "--multiple"
return
else
- __brewcomp "--unbrewed --verbose --pinned --versions"
+ __brewcomp "$allopts"
return
fi
;;
esac
- __brew_complete_installed
+
+ # --multiple excludes formulae and *implies* --versions...
+ if __brewcomp_words_include "--multiple"; then
+ __brewcomp "--versions"
+ else
+ __brew_complete_installed
+ fi
}
_brew_log ()