aboutsummaryrefslogtreecommitdiffstats
path: root/etc/bash_completion.d
diff options
context:
space:
mode:
authorMartin Afanasjew2016-08-08 22:53:33 +0200
committerGitHub2016-08-08 22:53:33 +0200
commitcd23c263baa6c52b649234eeecf5775179d8d9f2 (patch)
tree65ac5b38da5cd3ebbd28a50e4b0e37a0b1a28fa7 /etc/bash_completion.d
parent8c0b72ac0da44be8cc4655996a336caa46f21694 (diff)
downloadbrew-cd23c263baa6c52b649234eeecf5775179d8d9f2.tar.bz2
Fix style inconsistencies in Bash completion (#660)
Diffstat (limited to 'etc/bash_completion.d')
-rw-r--r--etc/bash_completion.d/brew944
1 files changed, 459 insertions, 485 deletions
diff --git a/etc/bash_completion.d/brew b/etc/bash_completion.d/brew
index 1a5105f19..40a1174d0 100644
--- a/etc/bash_completion.d/brew
+++ b/etc/bash_completion.d/brew
@@ -1,624 +1,595 @@
# Bash completion script for brew(1)
-__brewcomp_words_include ()
-{
- local i=1
- while [[ $i -lt $COMP_CWORD ]]; do
- if [[ "${COMP_WORDS[i]}" = "$1" ]]; then
- return 0
- fi
- i=$((++i))
- done
- return 1
+__brewcomp_words_include() {
+ local i=1
+ while [[ "$i" -lt "$COMP_CWORD" ]]
+ do
+ if [[ "${COMP_WORDS[i]}" = "$1" ]]
+ then
+ return 0
+ fi
+ i="$((++i))"
+ done
+ return 1
}
# Find the previous non-switch word
-__brewcomp_prev ()
-{
- local idx=$((COMP_CWORD - 1))
- local prv="${COMP_WORDS[idx]}"
- while [[ $prv == -* ]]; do
- idx=$((--idx))
- prv="${COMP_WORDS[idx]}"
- done
- echo "$prv"
+__brewcomp_prev() {
+ local idx="$((COMP_CWORD - 1))"
+ local prv="${COMP_WORDS[idx]}"
+ while [[ "$prv" = -* ]]
+ do
+ idx="$((--idx))"
+ prv="${COMP_WORDS[idx]}"
+ done
+ echo "$prv"
}
-__brewcomp ()
-{
- # break $1 on space, tab, and newline characters,
- # and turn it into a newline separated list of words
- local list s sep=$'\n' IFS=$' '$'\t'$'\n'
- local cur="${COMP_WORDS[COMP_CWORD]}"
+__brewcomp() {
+ # break $1 on space, tab, and newline characters,
+ # and turn it into a newline separated list of words
+ local list s sep=$'\n' IFS=$' '$'\t'$'\n'
+ local cur="${COMP_WORDS[COMP_CWORD]}"
- for s in $1; do
- __brewcomp_words_include "$s" && continue
- list="$list$s$sep"
- done
+ for s in $1
+ do
+ __brewcomp_words_include "$s" && continue
+ list="$list$s$sep"
+ done
- IFS=$sep
- COMPREPLY=($(compgen -W "$list" -- "$cur"))
+ IFS="$sep"
+ COMPREPLY=($(compgen -W "$list" -- "$cur"))
}
# Don't use __brewcomp() in any of the __brew_complete_foo functions, as
# it is too slow and is not worth it just for duplicate elimination.
-__brew_complete_formulae ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- local formulas="$(brew search)"
- local shortnames="$(echo "$formulas" | grep / | cut -d / -f 3)"
- COMPREPLY=($(compgen -W "$formulas $shortnames" -- "$cur"))
-}
-
-__brew_complete_installed ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- local inst=$(\ls $(brew --cellar))
- COMPREPLY=($(compgen -W "$inst" -- "$cur"))
+__brew_complete_formulae() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ local formulas="$(brew search)"
+ local shortnames="$(echo "$formulas" | grep / | cut -d / -f 3)"
+ COMPREPLY=($(compgen -W "$formulas $shortnames" -- "$cur"))
}
-__brew_complete_outdated ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- local od=$(brew outdated --quiet)
- COMPREPLY=($(compgen -W "$od" -- "$cur"))
+__brew_complete_installed() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ local inst="$(ls "$(brew --cellar)")"
+ COMPREPLY=($(compgen -W "$inst" -- "$cur"))
}
-__brew_complete_versions ()
-{
- local formula="$1"
- local versions=$(brew list --versions "$formula")
- local cur="${COMP_WORDS[COMP_CWORD]}"
- COMPREPLY=($(compgen -W "$versions" -X "$formula" -- "$cur"))
+__brew_complete_outdated() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ local od="$(brew outdated --quiet)"
+ COMPREPLY=($(compgen -W "$od" -- "$cur"))
}
-__brew_complete_logs ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- local logs=$(ls ${HOMEBREW_LOGS:-~/Library/Logs/Homebrew/})
- COMPREPLY=($(compgen -W "$logs" -- "$cur"))
+__brew_complete_versions() {
+ local formula="$1"
+ local versions="$(brew list --versions "$formula")"
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ COMPREPLY=($(compgen -W "$versions" -X "$formula" -- "$cur"))
}
-_brew_switch ()
-{
- case "$COMP_CWORD" in
- 2) __brew_complete_installed ;;
- 3) __brew_complete_versions "${COMP_WORDS[COMP_CWORD-1]}" ;;
- *) ;;
- esac
+__brew_complete_logs() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ local logs="$(ls "${HOMEBREW_LOGS:-~/Library/Logs/Homebrew/}")"
+ COMPREPLY=($(compgen -W "$logs" -- "$cur"))
}
-__brew_complete_tapped ()
-{
- local taplib=$(brew --repository)/Library/Taps
- local dir taps
+__brew_complete_tapped() {
+ local taplib="$(brew --repository)/Library/Taps"
+ local dir taps
- for dir in ${taplib}/*/*; do
- [ -d "$dir" ] || continue
- dir=${dir#${taplib}/}
- dir=${dir/homebrew-/}
- taps="$taps $dir"
- done
- __brewcomp "$taps"
+ for dir in "$taplib"/*/*
+ do
+ [[ -d "$dir" ]] || continue
+ dir="${dir#${taplib}/}"
+ dir="${dir/homebrew-/}"
+ taps="$taps $dir"
+ done
+ __brewcomp "$taps"
}
-_brew_tap_unpin ()
-{
- __brewcomp "$(brew tap --list-pinned)"
+_brew_analytics() {
+ case "$COMP_CWORD" in
+ 2) __brewcomp "off on regenerate-uuid state" ;;
+ esac
}
-_brew_complete_tap ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_bottle() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--repair --list-official --list-pinned"
- return
- ;;
- esac
- __brewcomp "$(brew tap --list-official)"
+ __brewcomp "--merge --rb --write --root_url="
+ return
+ ;;
+ esac
+ __brew_complete_installed
}
-_brew_analytics ()
-{
- case "$COMP_CWORD" in
- 2) __brewcomp "off on regenerate-uuid state" ;;
- esac
+_brew_cleanup() {
+ __brew_complete_installed
}
-_brew_bottle ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_create() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--merge --rb --write --root_url="
- return
- ;;
- esac
- __brew_complete_installed
+ __brewcomp "--autotools --cmake --no-fetch --set-name --set-version"
+ return
+ ;;
+ esac
}
-_brew_cleanup ()
-{
- __brew_complete_installed
+_brew_deps() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
+ --*)
+ __brewcomp "--1 --all --tree"
+ return
+ ;;
+ esac
+ __brew_complete_formulae
}
-_brew_create ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_desc() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--autotools --cmake --no-fetch --set-name --set-version"
- return
- ;;
- esac
+ __brewcomp "--search --name --description"
+ return
+ ;;
+ esac
+ __brew_complete_formulae
}
-_brew_deps ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_diy() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--1 --all --tree"
- return
- ;;
- esac
- __brew_complete_formulae
+ __brewcomp "--set-name --set-version"
+ return
+ ;;
+ esac
+}
+
+_brew_doctor() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ __brewcomp "$(brew doctor --list-checks)"
}
-_brew_desc ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_fetch() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ local prv="$(__brewcomp_prev)"
+ case "$cur" in
--*)
- __brewcomp "--search --name --description"
- return
- ;;
- esac
- __brew_complete_formulae
+ __brewcomp "
+ --deps --force
+ --devel --HEAD
+ --build-from-source --force-bottle --build-bottle
+ --retry
+ $(brew options --compact "$prv" 2>/dev/null)
+ "
+ return
+ ;;
+ esac
+ __brew_complete_formulae
}
-_brew_doctor () {
- local cur="${COMP_WORDS[COMP_CWORD]}"
- __brewcomp "$(brew doctor --list-checks)"
+_brew_gist_logs() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
+ --*)
+ __brewcomp "--new-issue"
+ return
+ ;;
+ esac
+ __brew_complete_logs
}
-_brew_diy ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_info() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--set-name --set-version"
- return
- ;;
- esac
+ __brewcomp "--all --github --installed --json=v1"
+ return
+ ;;
+ esac
+ __brew_complete_formulae
}
-_brew_fetch ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- local prv=$(__brewcomp_prev)
- case "$cur" in
+_brew_install() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ local prv="$(__brewcomp_prev)"
+
+ case "$cur" in
--*)
+ if __brewcomp_words_include "--interactive"
+ then
+ __brewcomp "--devel --git --HEAD"
+ else
__brewcomp "
- --deps --force
- --devel --HEAD
- --build-from-source --force-bottle --build-bottle
- --retry
+ --build-from-source --build-bottle --force-bottle
+ --debug
+ --devel
+ --HEAD
+ --ignore-dependencies
+ --interactive
+ --only-dependencies
+ --verbose
$(brew options --compact "$prv" 2>/dev/null)
"
- return
- ;;
- esac
- __brew_complete_formulae
+ fi
+ return
+ ;;
+ esac
+ __brew_complete_formulae
}
-_brew_gist_logs ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_irb() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--new-issue"
- return
- ;;
- esac
- __brew_complete_logs
+ __brewcomp "--examples"
+ return
+ ;;
+ esac
}
-_brew_info ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_link() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--all --github --installed --json=v1"
- return
- ;;
- esac
- __brew_complete_formulae
-}
-
-_brew_install ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- local prv=$(__brewcomp_prev)
-
- case "$cur" in
- --*)
- if __brewcomp_words_include "--interactive"; then
- __brewcomp "--devel --git --HEAD"
- else
- __brewcomp "
- --build-from-source --build-bottle --force-bottle
- --debug
- --devel
- --HEAD
- --ignore-dependencies
- --interactive
- --only-dependencies
- --verbose
- $(brew options --compact "$prv" 2>/dev/null)
- "
- fi
- return
- ;;
- esac
- __brew_complete_formulae
+ __brewcomp "--dry-run --overwrite --force"
+ return
+ ;;
+ esac
+ __brew_complete_installed
}
-_brew_irb ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_linkapps() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--examples"
- return
- ;;
- esac
+ __brewcomp "--local"
+ return
+ ;;
+ esac
+ __brew_complete_installed
}
-_brew_link ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_list() {
+ local allopts="--unbrewed --verbose --pinned --versions --multiple"
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+
+ case "$cur" in
--*)
- __brewcomp "--dry-run --overwrite --force"
+ # most options to brew-list are mutually exclusive
+ if __brewcomp_words_include "--unbrewed"
+ then
return
- ;;
- esac
+ 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 "$allopts"
+ return
+ fi
+ ;;
+ esac
+
+ # --multiple excludes formulae and *implies* --versions...
+ if __brewcomp_words_include "--multiple"
+ then
+ __brewcomp "--versions"
+ else
__brew_complete_installed
+ fi
}
-_brew_linkapps ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_log() {
+ # if git-completion is loaded, then we complete git-log options
+ declare -F _git_log >/dev/null || return
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--local"
- return
- ;;
- esac
- __brew_complete_installed
+ __brewcomp "
+ $__git_log_common_options
+ $__git_log_shortlog_options
+ $__git_log_gitk_options
+ $__git_diff_common_options
+ --walk-reflogs --graph --decorate
+ --abbrev-commit --oneline --reverse
+ "
+ return
+ ;;
+ esac
+ __brew_complete_formulae
}
-_brew_list ()
-{
- local allopts="--unbrewed --verbose --pinned --versions --multiple"
- local cur="${COMP_WORDS[COMP_CWORD]}"
-
- case "$cur" in
- --*)
- # 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 "$allopts"
- return
- fi
- ;;
- esac
-
- # --multiple excludes formulae and *implies* --versions...
- if __brewcomp_words_include "--multiple"; then
- __brewcomp "--versions"
- else
- __brew_complete_installed
- fi
+_brew_man() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
+ --*)
+ __brewcomp "--link --server --verbose"
+ return
+ ;;
+ esac
}
-_brew_log ()
-{
- # if git-completion is loaded, then we complete git-log options
- declare -F _git_log >/dev/null || return
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_options() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "
- $__git_log_common_options
- $__git_log_shortlog_options
- $__git_log_gitk_options
- $__git_diff_common_options
- --walk-reflogs --graph --decorate
- --abbrev-commit --oneline --reverse
- "
- return
- ;;
- esac
- __brew_complete_formulae
+ __brewcomp "--all --compact --installed"
+ return
+ ;;
+ esac
+ __brew_complete_formulae
}
-_brew_man ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_outdated() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--link --server --verbose"
- return
- ;;
- esac
+ __brewcomp "--quiet --json=v1"
+ return
+ ;;
+ esac
}
-_brew_options ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_postinstall() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--all --compact --installed"
- return
- ;;
- esac
- __brew_complete_formulae
+ __brewcomp "--debug --sandbox"
+ return
+ ;;
+ esac
+ __brew_complete_installed
}
-_brew_outdated ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_prune() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--quiet --json=v1"
- return
- ;;
- esac
+ __brewcomp "--dry-run --verbose"
+ return
+ ;;
+ esac
}
-_brew_postinstall ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_pull() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--debug --sandbox"
- return
- ;;
- esac
- __brew_complete_installed
+ __brewcomp "--bottle --bump --clean --ignore-whitespace --install --resolve"
+ return
+ ;;
+ esac
}
-_brew_prune ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_readall() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--dry-run --verbose"
- return
- ;;
- esac
+ __brewcomp "--syntax"
+ return
+ ;;
+ esac
+ __brew_complete_tapped
}
-_brew_pull ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_search() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--bottle --bump --clean --ignore-whitespace --install --resolve"
- return
- ;;
- esac
+ __brewcomp "--debian --desc --fedora --fink --macports --opensuse --ubuntu"
+ return
+ ;;
+ esac
}
-_brew_readall ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_style() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--syntax"
- return
- ;;
- esac
- __brew_complete_tapped
+ __brewcomp "--fix"
+ return
+ ;;
+ esac
+ __brew_complete_formulae
}
-_brew_search ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
- --*)
- __brewcomp "--debian --desc --fedora --fink --macports --opensuse --ubuntu"
- return
- ;;
- esac
+_brew_switch() {
+ case "$COMP_CWORD" in
+ 2) __brew_complete_installed ;;
+ 3) __brew_complete_versions "${COMP_WORDS[COMP_CWORD-1]}" ;;
+ *) ;;
+ esac
}
-_brew_style ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_tap() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--fix"
- return
- ;;
- esac
- __brew_complete_formulae
+ __brewcomp "--repair --list-official --list-pinned"
+ return
+ ;;
+ esac
+ __brewcomp "$(brew tap --list-official)"
}
-_brew_tap_info ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_tap_info() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--installed --json=v1"
- return
- ;;
- esac
- __brew_complete_tapped
+ __brewcomp "--installed --json=v1"
+ return
+ ;;
+ esac
+ __brew_complete_tapped
}
-_brew_tap_readme ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_tap_readme() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--verbose"
- return
- ;;
- esac
+ __brewcomp "--verbose"
+ return
+ ;;
+ esac
+}
+
+_brew_tap_unpin() {
+ __brewcomp "$(brew tap --list-pinned)"
}
-_brew_tests ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_tests() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--verbose"
- return
- ;;
- esac
+ __brewcomp "--verbose"
+ return
+ ;;
+ esac
}
-_brew_uninstall ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_uninstall() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--force"
- return
- ;;
- esac
- __brew_complete_installed
+ __brewcomp "--force"
+ return
+ ;;
+ esac
+ __brew_complete_installed
}
-_brew_unlinkapps ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_unlinkapps() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--dry-run --local"
- return
- ;;
- esac
- __brew_complete_installed
+ __brewcomp "--dry-run --local"
+ return
+ ;;
+ esac
+ __brew_complete_installed
}
-_brew_unpack ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_unpack() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--git --patch --destdir="
- return
- ;;
- esac
- __brew_complete_formulae
+ __brewcomp "--git --patch --destdir="
+ return
+ ;;
+ esac
+ __brew_complete_formulae
}
-_brew_update ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_update() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--rebase --verbose"
- return
- ;;
- esac
+ __brewcomp "--rebase --verbose"
+ return
+ ;;
+ esac
}
-_brew_upgrade ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- local prv=$(__brewcomp_prev)
+_brew_upgrade() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ local prv="$(__brewcomp_prev)"
- case "$cur" in
+ case "$cur" in
--*)
- __brewcomp "
- --all
- --build-from-source --build-bottle --force-bottle
- --cleanup
- --debug
- --verbose
- "
- return
- ;;
- esac
- __brew_complete_outdated
+ __brewcomp "
+ --all
+ --build-from-source --build-bottle --force-bottle
+ --cleanup
+ --debug
+ --verbose
+ "
+ return
+ ;;
+ esac
+ __brew_complete_outdated
}
-_brew_uses ()
-{
- local cur="${COMP_WORDS[COMP_CWORD]}"
- case "$cur" in
+_brew_uses() {
+ local cur="${COMP_WORDS[COMP_CWORD]}"
+ case "$cur" in
--*)
- __brewcomp "--installed --recursive"
- return
+ __brewcomp "--installed --recursive"
+ return
+ ;;
+ esac
+ __brew_complete_formulae
+}
+
+_brew() {
+ local i=1 cmd
+
+ # find the subcommand
+ while [[ "$i" -lt "$COMP_CWORD" ]]
+ do
+ local s="${COMP_WORDS[i]}"
+ case "$s" in
+ --*)
+ cmd="$s"
+ break
;;
- esac
- __brew_complete_formulae
-}
-
-_brew ()
-{
- local i=1 cmd
-
- # find the subcommand
- while [[ $i -lt $COMP_CWORD ]]; do
- local s="${COMP_WORDS[i]}"
- case "$s" in
- --*)
- cmd="$s"
- break
- ;;
- -*)
- ;;
- *)
- cmd="$s"
- break
- ;;
- esac
- i=$((++i))
- done
-
- if [[ $i -eq $COMP_CWORD ]]; then
- # Do not auto-complete "instal" abbreviation for "install" command.
- # Prefix newline to prevent not checking the first command.
- local cmds=$'\n'"$(brew commands --quiet --include-aliases)"
- __brewcomp "${cmds/$'\n'instal$'\n'/$'\n'}"
- return
- fi
+ -*)
+ ;;
+ *)
+ cmd="$s"
+ break
+ ;;
+ esac
+ i="$((++i))"
+ done
- # subcommands have their own completion functions
- case "$cmd" in
- --cache|--cellar|--prefix) __brew_complete_formulae ;;
+ if [[ "$i" -eq "$COMP_CWORD" ]]
+ then
+ # Do not auto-complete "instal" abbreviation for "install" command.
+ # Prefix newline to prevent not checking the first command.
+ local cmds=$'\n'"$(brew commands --quiet --include-aliases)"
+ __brewcomp "${cmds/$'\n'instal$'\n'/$'\n'}"
+ return
+ fi
+
+ # subcommands have their own completion functions
+ case "$cmd" in
+ --cache) __brew_complete_formulae ;;
+ --cellar) __brew_complete_formulae ;;
+ --prefix) __brew_complete_formulae ;;
analytics) _brew_analytics ;;
- audit|cat|edit|home) __brew_complete_formulae ;;
- test|unlink) __brew_complete_installed ;;
+ audit) __brew_complete_formulae ;;
bottle) _brew_bottle ;;
+ cat) __brew_complete_formulae ;;
cleanup) _brew_cleanup ;;
create) _brew_create ;;
deps) _brew_deps ;;
desc) _brew_desc ;;
- doctor|dr) _brew_doctor ;;
diy|configure) _brew_diy ;;
+ doctor|dr) _brew_doctor ;;
+ edit) __brew_complete_formulae ;;
fetch) _brew_fetch ;;
gist-logs) _brew_gist_logs ;;
+ home|homepage) __brew_complete_formulae ;;
info|abv) _brew_info ;;
- install|instal|reinstall) _brew_install ;;
+ install|instal) _brew_install ;;
irb) _brew_irb ;;
link|ln) _brew_link ;;
linkapps) _brew_linkapps ;;
@@ -633,30 +604,33 @@ _brew ()
prune) _brew_prune ;;
pull) _brew_pull ;;
readall) _brew_readall ;;
+ reinstall) _brew_install ;;
search|-S) _brew_search ;;
style) _brew_style ;;
switch) _brew_switch ;;
- tap) _brew_complete_tap ;;
+ tap) _brew_tap ;;
tap-info) _brew_tap_info ;;
+ tap-pin) __brew_complete_tapped ;;
tap-readme) _brew_tap_readme ;;
tap-unpin) _brew_tap_unpin ;;
+ test) __brew_complete_installed ;;
tests) _brew_tests ;;
uninstall|remove|rm) _brew_uninstall ;;
+ unlink) __brew_complete_installed ;;
unlinkapps) _brew_unlinkapps ;;
unpack) _brew_unpack ;;
unpin) __brew_complete_formulae ;;
- untap|tap-pin) __brew_complete_tapped ;;
- update) _brew_update ;;
+ untap) __brew_complete_tapped ;;
+ update|up) _brew_update ;;
upgrade) _brew_upgrade ;;
uses) _brew_uses ;;
*) ;;
- esac
+ esac
}
# keep around for compatibility
-_brew_to_completion ()
-{
- _brew
+_brew_to_completion() {
+ _brew
}
complete -o bashdefault -o default -F _brew brew