shuky19 / sublime_debugger

Interactive debugger for sublime
Apache License 2.0
429 stars 24 forks source link

Hooking other debuggers #22

Open dpo opened 10 years ago

dpo commented 10 years ago

This is a general question, not an issue with your package. In my opinion, the Python world is seriously lacking proper integration between their debuggers and their text editors, and your sublime_debugger is exactly what I had in mind. A similar package for GDB is SublimeGDB and there is SublimeLLDB for LLDB.

I'm not an expert on debuggers but I do need to use them. My question is: how difficult would it be to extract a "generic" debugger interface from sublime_debugger (or any of the others), so users could write simple plugin interfaces to their favorite debugger? My own interest is in Python, but I imagine you could plug in a debugger for any language.

In other words, how specific is sublime_debugger to the Ruby debugger?

Thanks!

shuky19 commented 10 years ago

Hi Dpo,

I will start by saying when I started this project I wanted to do the exact same thing: 'Build a unified debugger which can be extended to as much as languages as the open source people will take it'.

As a matter of fact, I have built an interfaces which supposedly decoupled from ruby. Unfortunately, I discovered it is very hard, since I found myself deeply coupled with ruby's debugging gems.

Now, to your question, I do believe a unified debugger can be created. sublime_debugger is a really good starting point, I recommend you to fork this project and start abstracting all the Ruby-Specific behaviors.

I will be more than happy to help you with this journey, but I am extremely busy right now, so it may not be a lot.

Shuky.

thomthom commented 10 years ago

Is this debugger plugin using the ruby-debug-ide?

shuky19 commented 10 years ago

No

thomthom commented 10 years ago

I'd be very keen on being able to use that protocol. Sounds like decoupling and making it generic might be the first step. So @dpo and @shuky19 - if any of you are in the progress of anything then let me know. As I'd also be willing to help out. Just don't want to start inventing another wheel.

shuky19 commented 10 years ago

Sounds great!

Actually I am doing progress right now, I am adding support for sublime 2, which I think is important before decoupling.

I will commit my partial work in new branch tomorrow.

By the way, I think decoupling wont be that hard, I took a look and it's pretty generic.

Shuky

thomthom commented 10 years ago

Excellent! I'm about to go into holiday season anyway so I'm in no rush. But I often use Sublime and we got the ruby-debug-ide protocol working for SketchUp recently so I thought it'd be neat to hook that up with Sublime. Looking around I found this project which appear to have the interface already so if I can wrap my head around doing some rewiring that'd be great. In any case, just give me a shout when the decoupling begins. :)

dpo commented 10 years ago

I haven't had a chance to make much progress yet.

shuky19 commented 10 years ago

I had just finished sublime 2 support.

I think the next step is decoupling.

shuky19 commented 10 years ago

By the way, Thomthom, this project is using debugger and byebug gems which are both forks of ruby-debug-ide (they just work on differen versions of ruby).