Sha256: a000267116512fdb2712aa1baa6aa3c2216e809dff79bb6b093083cf84c4843f
Contents?: true
Size: 929 Bytes
Versions: 2
Compression:
Stored size: 929 Bytes
Contents
require 'thor' require 'agile_utils' module ExtensionLister class CLI < Thor using AgileUtils::HashExt desc 'list', 'List all unique extensions' method_option "base_dir", aliases: "-b", desc: "Base directory", default: File.expand_path(".") method_option 'version', aliases: '-v', desc: 'Display version number' def list opts = options.symbolize_keys if opts[:version] puts "You are using ExtensionLister version #{ExtensionLister::VERSION}" exit end puts list_extensions(opts[:base_dir]) end private def list_extensions(base_dir = ".") extensions = Dir.glob(File.join(File.expand_path(base_dir), "**/*")).reduce([]) do |exts, file| exts << File.extname(file) end extensions.sort.uniq.delete_if { |e| e == "" } end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
extension_lister-0.2.1 | lib/extension_lister/cli.rb |
extension_lister-0.2.0 | lib/extension_lister/cli.rb |