| 
									
										
										
										
											2010-07-19 09:51:28 -07:00
										 |  |  | # Bash completion script for brew(1) | 
					
						
							| 
									
										
										
										
											2009-07-31 09:45:04 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-09 04:16:41 -05:00
										 |  |  | # Indicates there are no completions | 
					
						
							|  |  |  | __brewcomp_null() { | 
					
						
							|  |  |  |   COMPREPLY="" | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | __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 | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Find the previous non-switch word | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | __brewcomp_prev() { | 
					
						
							|  |  |  |   local idx="$((COMP_CWORD - 1))" | 
					
						
							|  |  |  |   local prv="${COMP_WORDS[idx]}" | 
					
						
							|  |  |  |   while [[ "$prv" = -* ]] | 
					
						
							|  |  |  |   do | 
					
						
							|  |  |  |     idx="$((--idx))" | 
					
						
							|  |  |  |     prv="${COMP_WORDS[idx]}" | 
					
						
							|  |  |  |   done | 
					
						
							|  |  |  |   echo "$prv" | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | __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]}" | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |   for s in $1 | 
					
						
							|  |  |  |   do | 
					
						
							|  |  |  |     __brewcomp_words_include "$s" && continue | 
					
						
							|  |  |  |     list="$list$s$sep" | 
					
						
							|  |  |  |   done | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |   IFS="$sep" | 
					
						
							|  |  |  |   COMPREPLY=($(compgen -W "$list" -- "$cur")) | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # 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. | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | __brew_complete_formulae() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   local formulas="$(brew search)" | 
					
						
							| 
									
										
										
										
											2018-01-12 14:33:33 -05:00
										 |  |  |   local shortnames="$(echo "$formulas" | \grep / | \cut -d / -f 3)" | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |   COMPREPLY=($(compgen -W "$formulas $shortnames" -- "$cur")) | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | __brew_complete_installed() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							| 
									
										
										
										
											2016-09-09 14:15:07 -07:00
										 |  |  |   local inst="$(command ls "$(brew --cellar)" 2>/dev/null)" | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |   COMPREPLY=($(compgen -W "$inst" -- "$cur")) | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | __brew_complete_outdated() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   local od="$(brew outdated --quiet)" | 
					
						
							|  |  |  |   COMPREPLY=($(compgen -W "$od" -- "$cur")) | 
					
						
							| 
									
										
										
										
											2013-12-08 02:40:09 -05:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | __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")) | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | __brew_complete_logs() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							| 
									
										
										
										
											2016-09-09 14:15:07 -07:00
										 |  |  |   local logs="$(command ls "${HOMEBREW_LOGS:-${HOME}/Library/Logs/Homebrew/}" 2>/dev/null)" | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |   COMPREPLY=($(compgen -W "$logs" -- "$cur")) | 
					
						
							| 
									
										
										
										
											2013-12-08 02:40:09 -05:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | __brew_complete_tapped() { | 
					
						
							|  |  |  |   local taplib="$(brew --repository)/Library/Taps" | 
					
						
							|  |  |  |   local dir taps | 
					
						
							| 
									
										
										
										
											2014-04-24 17:24:27 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |   for dir in "$taplib"/*/* | 
					
						
							|  |  |  |   do | 
					
						
							|  |  |  |     [[ -d "$dir" ]] || continue | 
					
						
							|  |  |  |     dir="${dir#${taplib}/}" | 
					
						
							|  |  |  |     dir="${dir/homebrew-/}" | 
					
						
							|  |  |  |     taps="$taps $dir" | 
					
						
							|  |  |  |   done | 
					
						
							|  |  |  |   __brewcomp "$taps" | 
					
						
							| 
									
										
										
										
											2012-03-16 16:52:35 -05:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_analytics() { | 
					
						
							|  |  |  |   case "$COMP_CWORD" in | 
					
						
							|  |  |  |     2)  __brewcomp "off on regenerate-uuid state" ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2015-08-25 11:31:09 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_bottle() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2013-04-10 18:20:48 -03:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--merge --rb --write --root_url=" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_installed | 
					
						
							| 
									
										
										
										
											2012-03-23 22:42:43 -05:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_cleanup() { | 
					
						
							|  |  |  |   __brew_complete_installed | 
					
						
							| 
									
										
										
										
											2016-05-01 16:28:16 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_create() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2014-03-29 22:26:03 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--autotools --cmake --no-fetch --set-name --set-version" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2014-03-29 22:26:03 -05:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_deps() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							|  |  |  |     --*) | 
					
						
							|  |  |  |       __brewcomp "--1 --all --tree" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_formulae | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_desc() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--search --name --description" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_formulae | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_diy() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--set-name --set-version" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | _brew_doctor() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   __brewcomp "$(brew doctor --list-checks)" | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_fetch() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   local prv="$(__brewcomp_prev)" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2015-05-05 15:29:01 -07:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __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 | 
					
						
							| 
									
										
										
										
											2015-05-05 15:29:01 -07:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_gist_logs() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							|  |  |  |     --*) | 
					
						
							|  |  |  |       __brewcomp "--new-issue" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_logs | 
					
						
							| 
									
										
										
										
											2012-11-13 16:49:43 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_info() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--all --github --installed --json=v1" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_formulae | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_install() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   local prv="$(__brewcomp_prev)" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       if __brewcomp_words_include "--interactive" | 
					
						
							|  |  |  |       then | 
					
						
							|  |  |  |         __brewcomp "--devel --git --HEAD" | 
					
						
							|  |  |  |       else | 
					
						
							| 
									
										
										
										
											2013-06-12 15:57:58 -07:00
										 |  |  |         __brewcomp " | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |           --build-from-source --build-bottle --force-bottle | 
					
						
							|  |  |  |           --debug | 
					
						
							|  |  |  |           --devel | 
					
						
							|  |  |  |           --HEAD | 
					
						
							|  |  |  |           --ignore-dependencies | 
					
						
							|  |  |  |           --interactive | 
					
						
							|  |  |  |           --only-dependencies | 
					
						
							|  |  |  |           --verbose | 
					
						
							| 
									
										
										
										
											2013-06-12 15:57:58 -07:00
										 |  |  |           $(brew options --compact "$prv" 2>/dev/null) | 
					
						
							|  |  |  |           " | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       fi | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_formulae | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_irb() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--examples" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_link() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--dry-run --overwrite --force" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_installed | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_list() { | 
					
						
							|  |  |  |   local allopts="--unbrewed --verbose --pinned --versions --multiple" | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-07-11 20:08:09 -07:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       # most options to brew-list are mutually exclusive | 
					
						
							|  |  |  |       if __brewcomp_words_include "--unbrewed" | 
					
						
							|  |  |  |       then | 
					
						
							| 
									
										
										
										
											2012-11-13 16:50:19 -06:00
										 |  |  |         return | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       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 | 
					
						
							| 
									
										
										
										
											2012-07-11 20:08:09 -07:00
										 |  |  |     __brew_complete_installed | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |   fi | 
					
						
							| 
									
										
										
										
											2012-07-11 20:08:09 -07:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _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 | 
					
						
							| 
									
										
										
										
											2014-04-06 14:05:23 -07:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __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 | 
					
						
							| 
									
										
										
										
											2014-04-06 14:05:23 -07:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_man() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							|  |  |  |     --*) | 
					
						
							|  |  |  |       __brewcomp "--link --server --verbose" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_options() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--all --compact --installed" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_formulae | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_outdated() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-11 08:53:06 +02:00
										 |  |  |       __brewcomp "--quiet --json=v1 --fetch-HEAD" | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_postinstall() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--debug --sandbox" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_installed | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_prune() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--dry-run --verbose" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_pull() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--bottle --bump --clean --ignore-whitespace --install --resolve" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_readall() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--syntax" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_tapped | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_search() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--debian --desc --fedora --fink --macports --opensuse --ubuntu" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2018-01-09 04:16:41 -05:00
										 |  |  |   __brewcomp_null | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_style() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--fix" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_formulae | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_switch() { | 
					
						
							|  |  |  |   case "$COMP_CWORD" in | 
					
						
							|  |  |  |     2)  __brew_complete_installed ;; | 
					
						
							|  |  |  |     3)  __brew_complete_versions "${COMP_WORDS[COMP_CWORD-1]}" ;; | 
					
						
							|  |  |  |     *)  ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_tap() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2018-03-31 13:42:33 +01:00
										 |  |  |       __brewcomp "--repair --list-pinned" | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_tap_info() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2016-07-10 02:48:26 +02:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--installed --json=v1" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_tapped | 
					
						
							| 
									
										
										
										
											2016-07-10 02:48:26 +02:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-10-13 13:41:53 +01:00
										 |  |  | _brew_tap_new() { | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--verbose" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | _brew_tap_unpin() { | 
					
						
							|  |  |  |   __brewcomp "$(brew tap --list-pinned)" | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_tests() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--verbose" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_uninstall() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--force" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_installed | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_unpack() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2014-05-17 17:12:40 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--git --patch --destdir=" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_formulae | 
					
						
							| 
									
										
										
										
											2014-05-17 17:12:40 -05:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_update() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--rebase --verbose" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_upgrade() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   local prv="$(__brewcomp_prev)" | 
					
						
							| 
									
										
										
										
											2014-03-15 10:09:17 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2014-03-15 10:09:17 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp " | 
					
						
							|  |  |  |         --all | 
					
						
							|  |  |  |         --build-from-source --build-bottle --force-bottle | 
					
						
							|  |  |  |         --cleanup | 
					
						
							|  |  |  |         --debug | 
					
						
							|  |  |  |         --verbose | 
					
						
							| 
									
										
										
										
											2016-08-11 08:53:06 +02:00
										 |  |  |         --fetch-HEAD | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |         " | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_outdated | 
					
						
							| 
									
										
										
										
											2014-03-15 10:09:17 -05:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_uses() { | 
					
						
							|  |  |  |   local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |   case "$cur" in | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     --*) | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       __brewcomp "--installed --recursive" | 
					
						
							|  |  |  |       return | 
					
						
							|  |  |  |       ;; | 
					
						
							|  |  |  |   esac | 
					
						
							|  |  |  |   __brew_complete_formulae | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  | __brew_caskcomp_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 | 
					
						
							|  |  |  | __brew_caskcomp_prev () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local idx=$((COMP_CWORD - 1)) | 
					
						
							|  |  |  |     local prv="${COMP_WORDS[idx]}" | 
					
						
							|  |  |  |     while [[ $prv == -* ]]; do | 
					
						
							|  |  |  |         idx=$((--idx)) | 
					
						
							|  |  |  |         prv="${COMP_WORDS[idx]}" | 
					
						
							|  |  |  |     done | 
					
						
							|  |  |  |     echo "$prv" | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | __brew_caskcomp () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     # 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 | 
					
						
							|  |  |  |         __brew_caskcomp_words_include "$s" && continue | 
					
						
							|  |  |  |         list="$list$s$sep" | 
					
						
							|  |  |  |     done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     IFS=$sep | 
					
						
							|  |  |  |     COMPREPLY=($(compgen -W "$list" -- "$cur")) | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Don't use __brew_caskcomp() in any of the __brew_cask_complete_foo functions, as | 
					
						
							|  |  |  | # it is too slow and is not worth it just for duplicate elimination. | 
					
						
							|  |  |  | __brew_cask_complete_formulae () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |     local lib=$(brew --repository)/Library | 
					
						
							|  |  |  |     local taps=${lib}/Taps | 
					
						
							| 
									
										
										
										
											2018-05-25 18:03:16 +02:00
										 |  |  |     local casks=${lib}/Taps/homebrew/homebrew-cask/Casks | 
					
						
							| 
									
										
										
										
											2018-01-12 14:33:33 -05:00
										 |  |  |     local ff=$(\ls ${casks} 2>/dev/null | \sed 's/\.rb//g') | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  |     COMPREPLY=($(compgen -W "$ff" -- "$cur")) | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | __brew_cask_complete_installed () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |     local inst=$(brew cask list -1) | 
					
						
							|  |  |  |     COMPREPLY=($(compgen -W "$inst" -- "$cur")) | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | __brew_cask_complete_caskroom () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							| 
									
										
										
										
											2018-05-25 18:03:16 +02:00
										 |  |  |     local caskroom_dir="$(brew --prefix)/Caskroom/" | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  |     local files=$(\ls ${caskroom_dir} 2>/dev/null) | 
					
						
							|  |  |  |     COMPREPLY=($(compgen -W "$files" -- "$cur")) | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-15 18:59:42 -05:00
										 |  |  | __brew_cask_complete_outdated () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |     local outdated=$(brew cask outdated --quiet) | 
					
						
							|  |  |  |     COMPREPLY=($(compgen -W "$outdated" -- "$cur")) | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  | _brew_cask_cleanup () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |     case "$cur" in | 
					
						
							|  |  |  |     -*) | 
					
						
							|  |  |  |         __brew_caskcomp "--force" | 
					
						
							|  |  |  |         return | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  |     esac | 
					
						
							|  |  |  |     __brew_cask_complete_installed | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | _brew_cask_fetch () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |     local prv=$(__brew_caskcomp_prev) | 
					
						
							|  |  |  |     case "$cur" in | 
					
						
							|  |  |  |     -*) | 
					
						
							|  |  |  |         __brew_caskcomp "--force" | 
					
						
							|  |  |  |         return | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  |     esac | 
					
						
							|  |  |  |     __brew_cask_complete_formulae | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  | _brew_cask_install () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |     local prv=$(__brew_caskcomp_prev) | 
					
						
							|  |  |  |     case "$cur" in | 
					
						
							|  |  |  |     -*) | 
					
						
							|  |  |  |         __brew_caskcomp "--force --skip-cask-deps --require-sha --language" | 
					
						
							|  |  |  |         return | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  |     esac | 
					
						
							|  |  |  |     __brew_cask_complete_formulae | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  | _brew_cask_list () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  |     case "$cur" in | 
					
						
							|  |  |  |     -*) | 
					
						
							|  |  |  |         __brew_caskcomp "-1 --versions" | 
					
						
							|  |  |  |         return | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  |     esac | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  |     __brew_cask_complete_installed | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | _brew_cask_outdated () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  |     case "$cur" in | 
					
						
							|  |  |  |     -*) | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  |         __brew_caskcomp "--greedy --verbose --quiet" | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  |         return | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  |     esac | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  |     __brew_cask_complete_installed | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  | _brew_cask_style () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |     case "$cur" in | 
					
						
							|  |  |  |     -*) | 
					
						
							|  |  |  |         __brew_caskcomp "--fix" | 
					
						
							|  |  |  |         return | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  |     esac | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  |     __brew_cask_complete_installed | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | _brew_cask_uninstall () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |     case "$cur" in | 
					
						
							|  |  |  |     -*) | 
					
						
							|  |  |  |         __brew_caskcomp "--force" | 
					
						
							|  |  |  |         return | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  |     esac | 
					
						
							|  |  |  |     __brew_cask_complete_installed | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  | _brew_cask_upgrade () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local cur="${COMP_WORDS[COMP_CWORD]}" | 
					
						
							|  |  |  |     case "$cur" in | 
					
						
							|  |  |  |     -*) | 
					
						
							|  |  |  |         __brew_caskcomp "--force --greedy" | 
					
						
							|  |  |  |         return | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  |     esac | 
					
						
							| 
									
										
										
										
											2018-03-31 13:42:33 +01:00
										 |  |  |     __brew_cask_complete_outdated | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  | _brew_cask () | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |     local i=1 cmd | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     # find the subcommand | 
					
						
							|  |  |  |     while [[ $i -lt $COMP_CWORD ]]; do | 
					
						
							|  |  |  |         local s="${COMP_WORDS[i]}" | 
					
						
							|  |  |  |         case "$s" in | 
					
						
							|  |  |  |         --*) | 
					
						
							|  |  |  |             cmd="$s" | 
					
						
							|  |  |  |             break | 
					
						
							|  |  |  |             ;; | 
					
						
							|  |  |  |         -*) | 
					
						
							|  |  |  |             ;; | 
					
						
							|  |  |  |         cask) | 
					
						
							|  |  |  |             ;; | 
					
						
							|  |  |  |         *) | 
					
						
							|  |  |  |             cmd="$s" | 
					
						
							|  |  |  |             break | 
					
						
							|  |  |  |             ;; | 
					
						
							|  |  |  |         esac | 
					
						
							|  |  |  |         i=$((++i)) | 
					
						
							|  |  |  |     done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     if [[ $i -eq $COMP_CWORD ]]; then | 
					
						
							| 
									
										
										
										
											2018-05-25 18:03:16 +02:00
										 |  |  |         __brew_caskcomp "abv audit cat cleanup create doctor edit fetch home info install list ls outdated reinstall remove rm search style uninstall upgrade zap -S --force --verbose --appdir --colorpickerdir --prefpanedir --qlplugindir --fontdir --servicedir --input_methoddir --internet_plugindir --screen_saverdir --no-binaries --debug --version" | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  |         return | 
					
						
							|  |  |  |     fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     # subcommands have their own completion functions | 
					
						
							|  |  |  |     case "$cmd" in | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  |       --version)              __brewcomp_null ;; | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  |       audit)                  __brew_cask_complete_formulae ;; | 
					
						
							|  |  |  |       cat)                    __brew_cask_complete_formulae ;; | 
					
						
							|  |  |  |       cleanup)                _brew_cask_cleanup ;; | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  |       create)                 ;; | 
					
						
							|  |  |  |       doctor)                 __brewcomp_null ;; | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  |       edit)                   __brew_cask_complete_formulae ;; | 
					
						
							|  |  |  |       fetch)                  _brew_cask_fetch ;; | 
					
						
							|  |  |  |       home)                   __brew_cask_complete_formulae ;; | 
					
						
							|  |  |  |       info|abv)               __brew_cask_complete_formulae ;; | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  |       install|instal)         _brew_cask_install ;; | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  |       list|ls)                _brew_cask_list ;; | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  |       outdated)               _brew_cask_outdated ;; | 
					
						
							|  |  |  |       reinstall)              __brew_cask_complete_installed ;; | 
					
						
							|  |  |  |       search)                 __brewcomp_null ;; | 
					
						
							|  |  |  |       style)                  _brew_cask_style ;; | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  |       uninstall|remove|rm)    _brew_cask_uninstall ;; | 
					
						
							| 
									
										
										
										
											2018-01-12 16:45:34 -05:00
										 |  |  |       upgrade)                _brew_cask_upgrade ;; | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  |       zap)                    __brew_cask_complete_caskroom ;; | 
					
						
							|  |  |  |       *)                      ;; | 
					
						
							|  |  |  |     esac | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _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 | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |         ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |       -*) | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  |       *) | 
					
						
							|  |  |  |         cmd="$s" | 
					
						
							|  |  |  |         break | 
					
						
							|  |  |  |         ;; | 
					
						
							|  |  |  |     esac | 
					
						
							|  |  |  |     i="$((++i))" | 
					
						
							|  |  |  |   done | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |   if [[ "$i" -eq "$COMP_CWORD" ]] | 
					
						
							|  |  |  |   then | 
					
						
							| 
									
										
										
										
											2017-08-13 10:58:58 -04:00
										 |  |  |     # Do not auto-complete "*instal" or "*uninstal" aliases for "*install" commands. | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     # Prefix newline to prevent not checking the first command. | 
					
						
							| 
									
										
										
										
											2018-01-12 14:33:33 -05:00
										 |  |  |     local cmds=$'\n'"$(brew commands --quiet --include-aliases | \grep -v instal$)" | 
					
						
							| 
									
										
										
										
											2017-08-13 08:46:48 -04:00
										 |  |  |     __brewcomp "${cmds}" | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     return | 
					
						
							|  |  |  |   fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   # subcommands have their own completion functions | 
					
						
							|  |  |  |   case "$cmd" in | 
					
						
							|  |  |  |     --cache)                    __brew_complete_formulae ;; | 
					
						
							|  |  |  |     --cellar)                   __brew_complete_formulae ;; | 
					
						
							|  |  |  |     --prefix)                   __brew_complete_formulae ;; | 
					
						
							| 
									
										
										
										
											2016-05-01 16:28:16 +02:00
										 |  |  |     analytics)                  _brew_analytics ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     audit)                      __brew_complete_formulae ;; | 
					
						
							| 
									
										
										
										
											2014-03-29 22:26:03 -05:00
										 |  |  |     bottle)                     _brew_bottle ;; | 
					
						
							| 
									
										
										
										
											2018-01-09 02:49:55 -05:00
										 |  |  |     cask)                       _brew_cask ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     cat)                        __brew_complete_formulae ;; | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     cleanup)                    _brew_cleanup ;; | 
					
						
							|  |  |  |     create)                     _brew_create ;; | 
					
						
							|  |  |  |     deps)                       _brew_deps ;; | 
					
						
							| 
									
										
										
										
											2015-05-05 15:29:01 -07:00
										 |  |  |     desc)                       _brew_desc ;; | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     diy|configure)              _brew_diy ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     doctor|dr)                  _brew_doctor ;; | 
					
						
							|  |  |  |     edit)                       __brew_complete_formulae ;; | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     fetch)                      _brew_fetch ;; | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     gist-logs)                  _brew_gist_logs ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     home|homepage)              __brew_complete_formulae ;; | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     info|abv)                   _brew_info ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     install|instal)             _brew_install ;; | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     irb)                        _brew_irb ;; | 
					
						
							| 
									
										
										
										
											2012-07-11 20:08:09 -07:00
										 |  |  |     link|ln)                    _brew_link ;; | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     list|ls)                    _brew_list ;; | 
					
						
							|  |  |  |     log)                        _brew_log ;; | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     man)                        _brew_man ;; | 
					
						
							| 
									
										
										
										
											2012-06-13 08:12:41 -05:00
										 |  |  |     missing)                    __brew_complete_formulae ;; | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     options)                    _brew_options ;; | 
					
						
							|  |  |  |     outdated)                   _brew_outdated ;; | 
					
						
							| 
									
										
										
										
											2013-03-30 22:45:19 +01:00
										 |  |  |     pin)                        __brew_complete_formulae ;; | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     postinstall)                _brew_postinstall ;; | 
					
						
							|  |  |  |     prune)                      _brew_prune ;; | 
					
						
							|  |  |  |     pull)                       _brew_pull ;; | 
					
						
							|  |  |  |     readall)                    _brew_readall ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     reinstall)                  _brew_install ;; | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     search|-S)                  _brew_search ;; | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     style)                      _brew_style ;; | 
					
						
							| 
									
										
										
										
											2013-12-08 02:40:09 -05:00
										 |  |  |     switch)                     _brew_switch ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     tap)                        _brew_tap ;; | 
					
						
							| 
									
										
										
										
											2016-07-10 02:48:26 +02:00
										 |  |  |     tap-info)                   _brew_tap_info ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     tap-pin)                    __brew_complete_tapped ;; | 
					
						
							| 
									
										
										
										
											2016-10-13 13:41:53 +01:00
										 |  |  |     tap-new)                    _brew_tap_new ;; | 
					
						
							| 
									
										
										
										
											2015-08-25 11:31:09 +02:00
										 |  |  |     tap-unpin)                  _brew_tap_unpin ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     test)                       __brew_complete_installed ;; | 
					
						
							| 
									
										
										
										
											2015-06-02 01:08:13 -04:00
										 |  |  |     tests)                      _brew_tests ;; | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     uninstall|remove|rm)        _brew_uninstall ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     unlink)                     __brew_complete_installed ;; | 
					
						
							| 
									
										
										
										
											2014-05-17 17:12:40 -05:00
										 |  |  |     unpack)                     _brew_unpack ;; | 
					
						
							| 
									
										
										
										
											2013-03-11 16:41:08 +01:00
										 |  |  |     unpin)                      __brew_complete_formulae ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |     untap)                      __brew_complete_tapped ;; | 
					
						
							|  |  |  |     update|up)                  _brew_update ;; | 
					
						
							| 
									
										
										
										
											2014-03-15 10:09:17 -05:00
										 |  |  |     upgrade)                    _brew_upgrade ;; | 
					
						
							| 
									
										
										
										
											2012-03-16 19:09:24 -05:00
										 |  |  |     uses)                       _brew_uses ;; | 
					
						
							|  |  |  |     *)                          ;; | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  |   esac | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # keep around for compatibility | 
					
						
							| 
									
										
										
										
											2016-08-08 22:53:33 +02:00
										 |  |  | _brew_to_completion() { | 
					
						
							|  |  |  |   _brew | 
					
						
							| 
									
										
										
										
											2012-01-21 00:08:35 -06:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | complete -o bashdefault -o default -F _brew brew |