diff --git a/Library/Homebrew/brew.rb b/Library/Homebrew/brew.rb index c4a34d2981caee6737c944e45fc89704b823aefe..985a93de94a0b84830a66d02945c99c6d577b3c4 100644 --- a/Library/Homebrew/brew.rb +++ b/Library/Homebrew/brew.rb @@ -75,12 +75,9 @@ begin end # Usage instructions should be displayed if and only if one of: - # - a help flag is passed AND an internal command is matched + # - a help flag is passed AND a command is matched # - a help flag is passed AND there is no command specified # - no arguments are passed - # - # It should never affect external commands so they can handle usage - # arguments themselves. if empty_argv || help_flag require "cmd/help" Homebrew.help cmd, empty_argv: empty_argv diff --git a/Library/Homebrew/cmd/help.rb b/Library/Homebrew/cmd/help.rb index c8845b086e9b30a60e5bfdec0ef0c479a93d3907..bfcb6838d7ba53c1dcefee196119a7595b1a6b25 100644 --- a/Library/Homebrew/cmd/help.rb +++ b/Library/Homebrew/cmd/help.rb @@ -39,6 +39,8 @@ module Homebrew if cmd cmd = HOMEBREW_INTERNAL_COMMAND_ALIASES.fetch(cmd, cmd) path = Commands.path(cmd) + path ||= which("brew-#{cmd}") + path ||= which("brew-#{cmd}.rb") end # Display command-specific (or generic) help in response to `UsageError`. @@ -61,7 +63,7 @@ module Homebrew exit 0 end - # Resume execution in `brew.rb` for external/unknown commands. + # Resume execution in `brew.rb` for unknown commands. return if path.nil? # Display help for internal command (or generic help if undocumented).