Sha256: 4cff704aa2c1ad880b4c045aa4e7c138ab4a4fc20d7bfeed8e79ffc562d063c3

Contents?: true

Size: 1.87 KB

Versions: 5

Compression:

Stored size: 1.87 KB

Contents

#!/usr/bin/env ruby

require 'rubygems'
require 'optparse'
require "ostruct"
require 'ruby-debug'

$stdout.sync=true

options = OpenStruct.new(
  'host'        => nil,
  'port'        => 1234,
  'tracing'     => false,
  'frame_bind'  => false
)

opts = OptionParser.new do |opts|
  opts.banner = <<EOB
Using ruby-debug-base #{Debugger::VERSION}
Usage: rdebug-ide is supposed to be called from RDT or NetBeans. The command line interface to ruby-debug is rdebug.
EOB
  opts.separator ""
  opts.separator "Options:"
  opts.on("-h", "--host HOST", "Host name used for remote debugging") {|options.host|}
  opts.on("-p", "--port PORT", Integer, "Port used for remote debugging") {|options.port|}
  opts.on("-x", "--trace", "turn on line tracing") {options.tracing = true}
  opts.on("-d", "--debug", "Debug self - prints information for debugging ruby-debug itself") do
    Debugger.is_debug = true
  end
  opts.on("-I", "--include PATH", String, "Add PATH to $LOAD_PATH") do |path|
    $LOAD_PATH.unshift(path)
  end
  
  opts.on("--keep-frame-binding", "Keep frame bindings") {options.frame_bind = true}
  opts.separator ""
  opts.separator "Common options:"
  opts.on_tail("-v", "--version", "Show version") do
    puts "Using ruby-debug-base #{Debugger::VERSION}"
    exit
  end
end

begin
  Debugger::ARGV = ARGV.clone
  rdebug_path = File.expand_path($0)
  if RUBY_PLATFORM =~ /mswin/
    rdebug_path += ".cmd" unless rdebug_path =~ /\.cmd$/i
  end
  Debugger::RDEBUG_SCRIPT = rdebug_path
  opts.parse! ARGV
rescue StandardError => e
  puts opts
  puts
  puts e.message
  exit(1)
end

if ARGV.empty?
  puts opts
  puts
  puts "Must specify a script to run"
  exit(1)
end    

# save script name
Debugger::PROG_SCRIPT = ARGV.shift
  
# install interruption handler
trap('INT') { Debugger.interrupt_last }
  
# set options
Debugger.keep_frame_binding = options.frame_bind

Debugger.main(options.host, options.port)

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ruby-debug-ide-0.1.10 bin/rdebug-ide
ruby-debug-ide-0.1.9 bin/rdebug-ide
ruby-debug-ide-0.2.0 bin/rdebug-ide
ruby-debug-ide-0.2.1 bin/rdebug-ide
ruby-debug-ide-0.3.0 bin/rdebug-ide