add Formula.core_names Formula.tap_names and Formula.full_names
This commit is contained in:
parent
811c4c5add
commit
e2b0bca931
@ -32,7 +32,7 @@ module Homebrew
|
||||
|
||||
formulae = []
|
||||
if ARGV.named.empty?
|
||||
formulae = Formula.names
|
||||
formulae = Formula.full_names
|
||||
else
|
||||
user, repo = tap_args
|
||||
user.downcase!
|
||||
|
||||
@ -28,7 +28,7 @@ module Homebrew
|
||||
end
|
||||
end
|
||||
elsif ARGV.empty?
|
||||
puts_columns Formula.names
|
||||
puts_columns Formula.full_names
|
||||
elsif ARGV.first =~ HOMEBREW_TAP_FORMULA_REGEX
|
||||
query = ARGV.first
|
||||
user, repo, name = query.split("/", 3)
|
||||
@ -152,7 +152,7 @@ module Homebrew
|
||||
|
||||
def search_formulae rx
|
||||
aliases = Formula.aliases
|
||||
results = (Formula.names+aliases).grep(rx).sort
|
||||
results = (Formula.full_names+aliases).grep(rx).sort
|
||||
|
||||
# Filter out aliases when the full name was also found
|
||||
results.reject do |name|
|
||||
|
||||
@ -603,13 +603,35 @@ class Formula
|
||||
alias_method :python2, :python
|
||||
alias_method :python3, :python
|
||||
|
||||
# an array of all core {Formula} names
|
||||
def self.core_names
|
||||
Dir["#{HOMEBREW_LIBRARY}/Formula/*.rb"].map{ |f| File.basename f, ".rb" }.sort
|
||||
end
|
||||
|
||||
# an array of all tap {Formula} names
|
||||
def self.tap_names
|
||||
names = []
|
||||
Pathname.glob("#{HOMEBREW_LIBRARY}/Taps/*/*/") do |tap|
|
||||
tap.find_formula do |formula|
|
||||
formula.to_s =~ HOMEBREW_TAP_PATH_REGEX
|
||||
names << "#{$1}/#{$2.gsub(/^homebrew-/, "")}/#{formula.basename(".rb")}"
|
||||
end
|
||||
end
|
||||
names.sort
|
||||
end
|
||||
|
||||
# an array of all {Formula} names
|
||||
def self.names
|
||||
Dir["#{HOMEBREW_LIBRARY}/Formula/*.rb"].map{ |f| File.basename f, '.rb' }.sort
|
||||
(core_names + tap_names.map { |name| name.split("/")[-1] }).sort.uniq
|
||||
end
|
||||
|
||||
# an array of all {Formula} names, which the tap formulae have the fully-qualified name
|
||||
def self.full_names
|
||||
core_names + tap_names
|
||||
end
|
||||
|
||||
def self.each
|
||||
names.each do |name|
|
||||
full_names.each do |name|
|
||||
begin
|
||||
yield Formulary.factory(name)
|
||||
rescue StandardError => e
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user