Sha256: 6d3c62cc26f405cf1f8f2181e89d50cdbadc2c38aa34288de14e497568a3e952
Contents?: true
Size: 1.3 KB
Versions: 69
Compression:
Stored size: 1.3 KB
Contents
module Compass module Commands module DefaultOptionsParser def set_options(opts) opts.on("--trace") do self.options[:trace] = true end opts.on("-?", "-h", "--help") do self.options[:command] = Proc.new do Help.new(working_path, options.merge(:help_command => "help")) end end opts.on("-q", "--quiet") do self.options[:quiet] = true end opts.on("-v", "--version") do self.options[:command] = Proc.new do PrintVersion.new(working_path, options) end end super end end class Default < Base class << self def option_parser(arguments) parser = Compass::Exec::CommandOptionParser.new(arguments) parser.extend(DefaultOptionsParser) end # def usage # $stderr.puts caller.join("\n") # "XXX" # end def parse!(arguments) parser = option_parser(arguments) parser.parse! parser.options[:command] ||= Proc.new do Help.new(working_path, options.merge(:help_command => "help")) end parser.options end end def execute instance_eval(&options[:command]).execute end end end end
Version data entries
69 entries across 68 versions & 6 rubygems