Class: Homebrew::Cmd::PrettyListing

Inherits:
Object
  • Object
show all
Defined in:
cmd/list.rb

Instance Method Summary collapse

Constructor Details

#initialize(path) ⇒ PrettyListing

Returns a new instance of PrettyListing.



180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
# File 'cmd/list.rb', line 180

def initialize(path)
  Pathname.new(path).children.sort_by { |p| p.to_s.downcase }.each do |pn|
    case pn.basename.to_s
    when "bin", "sbin"
      pn.find { |pnn| puts pnn unless pnn.directory? }
    when "lib"
      print_dir pn do |pnn|
        # dylibs have multiple symlinks and we don't care about them
        (pnn.extname == ".dylib" || pnn.extname == ".pc") && !pnn.symlink?
      end
    when ".brew"
      next # Ignore .brew
    else
      if pn.directory?
        if pn.symlink?
          puts "#{pn} -> #{pn.readlink}"
        else
          print_dir pn
        end
      elsif Metafiles.list?(pn.basename.to_s)
        puts pn
      end
    end
  end
end