Exclude -q, -v and –grep because they, don’t specify what the user wants to see.
# File lib/pry/commands/ls.rb, line 72 def no_user_opts? !(opts[:methods] || opts['instance-methods'] || opts[:ppp] || opts[:globals] || opts[:locals] || opts[:constants] || opts[:ivars]) end
# File lib/pry/commands/ls.rb, line 52 def options(opt) opt.on :m, :methods, "Show public methods defined on the Object" opt.on :M, "instance-methods", "Show public methods defined in a Module or Class" opt.on :p, :ppp, "Show public, protected (in yellow) and private (in green) methods" opt.on :q, :quiet, "Show only methods defined on object.singleton_class and object.class" opt.on :v, :verbose, "Show methods and constants on all super-classes (ignores Pry.config.ls.ceiling)" opt.on :g, :globals, "Show global variables, including those builtin to Ruby (in cyan)" opt.on :l, :locals, "Show hash of local vars, sorted by descending size" opt.on :c, :constants, "Show constants, highlighting classes (in blue), and exceptions (in purple).\n" << " " * 32 << "Constants that are pending autoload? are also shown (in yellow)" opt.on :i, :ivars, "Show instance variables (in blue) and class variables (in bright blue)" opt.on :G, :grep, "Filter output by regular expression", :argument => true if jruby? opt.on :J, "all-java", "Show all the aliases for methods from java (default is to show only prettiest)" end end
# File lib/pry/commands/ls.rb, line 77 def process @interrogatee = args.empty? ? target_self : target.eval(args.join(' ')) raise_errors_if_arguments_are_weird ls_entity = LsEntity.new({ :interrogatee => @interrogatee, :no_user_opts => no_user_opts?, :opts => opts, :args => args, :_pry_ => _pry_ }) _pry_.pager.page ls_entity.entities_table end