Module: Debugger::ShowFunctions
- Defined in:
- lib/ruby-debug/commands/show.rb
Overview
Mix-in module to showing settings
Instance Method Summary collapse
-
#show_setting(setting_name) ⇒ Object
:nodoc:.
Instance Method Details
#show_setting(setting_name) ⇒ Object
:nodoc:
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
# File 'lib/ruby-debug/commands/show.rb', line 4 def show_setting(setting_name) case setting_name when /^annotate$/ Debugger.annotate ||= 0 return pr("show.messages.annotation", level: Debugger.annotate) when /^args$/ if Command.settings[:argv] and Command.settings[:argv].size > 0 if defined?(Debugger::RDEBUG_SCRIPT) # rdebug was called initially. 1st arg is script name. args = Command.settings[:argv][1..-1].join(' ') else # rdebug wasn't called initially. 1st arg is not script name. args = Command.settings[:argv].join(' ') end else args = '' end return pr("show.messages.args", args: args) when /^autolist$/ on_off = Command.settings[:autolist] > 0 return pr("show.messages.general", setting: "autolist", status: show_onoff(on_off)) when /^autoeval$/ on_off = Command.settings[:autoeval] return pr("show.messages.general", setting: "autoeval", status: show_onoff(on_off)) when /^autoreload$/ on_off = Command.settings[:reload_source_on_change] return pr("show.messages.general", setting: "autoreload", status: show_onoff(on_off)) when /^autoirb$/ on_off = Command.settings[:autoirb] > 0 return pr("show.messages.general", setting: "autoirb", status: show_onoff(on_off)) when /^basename$/ on_off = Command.settings[:basename] return pr("show.messages.general", setting: "basename", status: show_onoff(on_off)) when /^callstyle$/ style = Command.settings[:callstyle] return pr("show.messages.call_style", style: style) when /^commands(:?\s+(\d+))?$/ if @state.interface.readline_support? s = ''; args = @match[1].split if args[1] first_line = args[1].to_i - 4 last_line = first_line + 10 - 1 if first_line > Readline::HISTORY.length first_line = last_line = Readline::HISTORY.length elsif first_line <= 0 first_line = 1 end if last_line > Readline::HISTORY.length last_line = Readline::HISTORY.length end i = first_line commands = Readline::HISTORY.to_a[first_line..last_line] else if Readline::HISTORY.length > 10 commands = Readline::HISTORY.to_a[-10..-1] i = Readline::HISTORY.length - 10 else commands = Readline::HISTORY.to_a i = 1 end end commands.each do |cmd| s += ("%5d %s\n" % [i, cmd]) i += 1 end else s = pr("show.errors.no_readline") end return s when /^debuggertesting$/ on_off = Command.settings[:debuggertesting] return pr("show.messages.debuggertesting", status: show_onoff(on_off)) when /^forcestep$/ on_off = self.class.settings[:force_stepping] return pr("show.messages.general", setting: "force-stepping", status: show_onoff(on_off)) when /^fullpath$/ on_off = Command.settings[:full_path] return pr("show.messages.fullpath", status: show_onoff(on_off)) when /^history(:?\s+(filename|save|size))?$/ args = @match[1].split interface = @state.interface if args[1] show_save = show_size = show_filename = false prefix = false if args[1] == "save" show_save = true elsif args[1] == "size" show_size = true elsif args[1] == "filename" show_filename = true end else show_save = show_size = show_filename = true prefix = true end s = [] if show_filename s << pr("show.messages.history.filename", prefix: ("filename: " if prefix), filename: interface.histfile) end if show_save s << pr("show.messages.history.save", prefix: ("save: " if prefix), status: show_onoff(interface.history_save)) end if show_size s << pr("show.messages.history.size", prefix: ("size: " if prefix), size: interface.history_length) end return s.join("") when /^linetrace$/ on_off = Debugger.tracing return pr("show.messages.general", setting: "line tracing", status: show_onoff(on_off)) when /^linetrace\+$/ on_off = Command.settings[:tracing_plus] return pr("show.messages.tracing_plus.#{on_off ? "on" : "off"}") when /^listsize$/ listlines = Command.settings[:listsize] return pr("show.messages.listsize", size: listlines) when /^port$/ return pr("show.messages.port", port: Debugger::PORT) when /^trace$/ on_off = Command.settings[:stack_trace_on_error] return pr("show.messages.general", setting: "Displaying stack trace", status: show_onoff(on_off)) when /^version$/ return pr("show.messages.version", version: Debugger::VERSION) when /^width$/ return pr("show.messages.general", setting: "width", status: self.class.settings[:width]) else return pr("show.errors.unknown_subcommand", name: setting_name) end end |