【问题标题】:How to connect programmatically to the Ruby debugger to create a plugin for Sublime Text 2?如何以编程方式连接到 Ruby 调试器以为 Sublime Text 2 创建插件?
【发布时间】:2012-06-20 00:59:52
【问题描述】:

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

【问题讨论】:

    标签: ruby-on-rails ruby debugging sublimetext2


    【解决方案1】:

    由于为 ST2 编写插件需要 Python,因此您不能使用 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
    

    【讨论】:

    • 这个问题是我无法找到连接到使用调试器 gem 的正在运行的 Rails 应用程序的方法。你知道如何使用 rdebug 客户端来做到这一点吗?
    猜你喜欢
    • 1970-01-01
    • 2013-03-17
    • 2010-09-24
    • 1970-01-01
    • 1970-01-01
    • 2012-06-13
    • 1970-01-01
    • 1970-01-01
    • 2018-10-13
    相关资源
    最近更新 更多