| 
									
										
										
										
											2016-04-08 16:28:43 +02:00
										 |  |  | #:  * `command` <cmd>: | 
					
						
							|  |  |  | #:    Display the path to the file which is used when invoking `brew` <cmd>. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-06-26 15:19:27 +08:00
										 |  |  | module Homebrew | 
					
						
							|  |  |  |   def command | 
					
						
							| 
									
										
										
										
											2015-09-29 15:39:08 +02:00
										 |  |  |     abort "This command requires a command argument" if ARGV.empty? | 
					
						
							| 
									
										
										
										
											2015-06-26 15:19:27 +08:00
										 |  |  |     cmd = ARGV.first | 
					
						
							|  |  |  |     cmd = HOMEBREW_INTERNAL_COMMAND_ALIASES.fetch(cmd, cmd) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-01-18 01:22:35 +01:00
										 |  |  |     if (path = internal_command_path cmd) | 
					
						
							| 
									
										
										
										
											2015-06-26 15:19:27 +08:00
										 |  |  |       puts path | 
					
						
							|  |  |  |     elsif (path = which("brew-#{cmd}") || which("brew-#{cmd}.rb")) | 
					
						
							|  |  |  |       puts path | 
					
						
							|  |  |  |     else | 
					
						
							|  |  |  |       odie "Unknown command: #{cmd}" | 
					
						
							|  |  |  |     end | 
					
						
							|  |  |  |   end | 
					
						
							| 
									
										
										
										
											2016-01-18 01:22:35 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |   private | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   def internal_command_path(cmd) | 
					
						
							|  |  |  |     extensions = %w[rb sh] | 
					
						
							|  |  |  |     paths = extensions.map { |ext| HOMEBREW_LIBRARY_PATH/"cmd/#{cmd}.#{ext}" } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     if ARGV.homebrew_developer? | 
					
						
							|  |  |  |       paths += extensions.map { |ext| HOMEBREW_LIBRARY_PATH/"dev-cmd/#{cmd}.#{ext}" } | 
					
						
							|  |  |  |     end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     paths.find { |p| p.file? } | 
					
						
							|  |  |  |   end | 
					
						
							| 
									
										
										
										
											2015-06-26 15:19:27 +08:00
										 |  |  | end |