如何以编程方式连接到Ruby调试器以创建Sublime Text 2的插件?

时间:2012-06-18 02:39:05

标签: ruby-on-rails ruby debugging sublimetext2

我想为Sublime Text 2开发一个插件,在编辑器中添加一个Ruby调试器。我正在寻找一些关于如何连接到调试器的文档,但我找不到任何真正好的文档。我想知道是否有API或者是否可以以编程方式连接到调试器。我想将此项目用作调试器后端https://github.com/cldwalker/debugger

1 个答案:

答案 0 :(得分:0)

由于Python需要为ST2编写插件,因此您无法挂钩https://github.com/cldwalker/debugger/blob/master/bin/rdebug并开始研究它的API来完成您的工作。

但你可以在调试器可执行文件上做一个popen(参见http://docs.python.org/library/subprocess.html#module-subprocess)并像你正常那样驱动它。这不是很优雅,但我担心这是因为你被Python锁定的唯一解决方案。

从那里开始,我可能会编写一些python api来以编程方式处理基本操作,如下面的伪代码:

class RubyDebugger:
  def __init__(self, debugger_path):
    # Popen stuff, consider looking for the idiomatic way of doing that :) 
    self.debugger = os.popen ...

  def breakpoint(self, file, line_number)
    self.debugger.write "breakpoint " + file + ":" + line_number