aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/keg.rb
diff options
context:
space:
mode:
authorMike McQuaid2016-12-12 13:27:40 +0000
committerGitHub2016-12-12 13:27:40 +0000
commitc317c3c31f7e502dfc9c97f8e1b19a89f7d794b3 (patch)
tree128a19df1243dbfce51f62f1a4d3c1546c116560 /Library/Homebrew/keg.rb
parentebe45490b61decfd53574df615ab3d9e775c938e (diff)
parent14f46625a3e734a6b0e1ecdd8f146da20de5ea96 (diff)
downloadbrew-c317c3c31f7e502dfc9c97f8e1b19a89f7d794b3.tar.bz2
Merge pull request #1616 from zachwhaley/zsh_functions_caveats
caveats: Differentiate zsh completion files and function files
Diffstat (limited to 'Library/Homebrew/keg.rb')
-rw-r--r--Library/Homebrew/keg.rb11
1 files changed, 10 insertions, 1 deletions
diff --git a/Library/Homebrew/keg.rb b/Library/Homebrew/keg.rb
index 0dfad1a42..1de4ce1f0 100644
--- a/Library/Homebrew/keg.rb
+++ b/Library/Homebrew/keg.rb
@@ -297,12 +297,21 @@ class Keg
def completion_installed?(shell)
dir = case shell
when :bash then path.join("etc", "bash_completion.d")
- when :zsh then path.join("share", "zsh", "site-functions")
+ when :zsh
+ dir = path.join("share", "zsh", "site-functions")
+ dir if dir && dir.directory? && dir.children.any? { |f| f.basename.to_s.start_with?("_") }
when :fish then path.join("share", "fish", "vendor_completions.d")
end
dir && dir.directory? && !dir.children.empty?
end
+ def zsh_functions_installed?
+ # Check for non completion functions (i.e. files not started with an underscore),
+ # since those can be checked separately
+ dir = path.join("share", "zsh", "site-functions")
+ dir && dir.directory? && dir.children.any? { |f| !f.basename.to_s.start_with?("_") }
+ end
+
def fish_functions_installed?
dir = path.join("share", "fish", "vendor_functions.d")
dir && dir.directory? && !dir.children.empty?