SublimeXdebug icon indicating copy to clipboard operation
SublimeXdebug copied to clipboard

Rewrite

Open Kindari opened this issue 13 years ago • 23 comments

Well I wanted to let you all know I'm currently rewriting this. When I first wrote this I wasn't that familiar with the Sublime API or the Xdebug protocol itself. There are a lot of bugs, and a lot of bad architecture. I started trying to implement some of these other feature requests and just found the current layout too much of a pain to use.

I will be pushing soon on a "rewrite" branch. Some things that are already implemented:

  • Configuration overwriting. Lots more configurable items, editable in a global settings file, and in a project specific settings file.
  • Environments - The project specific settings implements environments, configurable when you begin listening. All settings are configurable per environment per project.
  • Path Mapping - If set in a project settings file, 'remote_dir' will be replaced with 'local_dir' in all pathnames. local_dir defaults to the first folder set in your project, if you dont explicitly set it.
  • Better error and state handling
  • Debugging instances per Sublime Window, with separate state.
  • Protocol is async now, commands are sent and retrieved in a separate thread, letting sublime carry on its way. Callbacks can be past along to be automatically fired when the response is retrieved. Because of this threaded manor, we must make use of sublime.set_timeout before working with any sublime objects.

In progress:

  • Rewriting context system (variables) to allow multiple display drivers, and also allow unlimited variable depth inspection (something currently not possible)
  • The first driver for this context system will use the quick panel.

Todo:

  • Create menus and such once everything else is done.
  • Re implement view based context information
  • Re implement browser interface

Future (hopes)

  • Hopefully sublime will release an api to work with the sidebar, allowing a much cleaner variable implementation.

Testing: When I do push this code, it will not be on the master branch for a while. This is a complete rewrite. I will need help testing on all platforms, but especially windows and linux.

If you use a specific feature I did not mention here, please reply so I can make sure we aren't losing features.

Kindari avatar Aug 29 '12 08:08 Kindari

Sounds great! Thanks for the update.

jotson avatar Aug 29 '12 17:08 jotson

Just went to try your plugin. Would really love to use it so +1 on the rewrite =) Good luck!

somazx avatar Aug 29 '12 23:08 somazx

I'm looking forward to helping test this on Ubuntu 12.04!

mtnorthrop avatar Aug 30 '12 12:08 mtnorthrop

I can't wait :)

acidtv avatar Sep 04 '12 10:09 acidtv

Followed to here from #26, since I suspect it's the issue I'm having. Can't wait to see this pushed up. :smile: (And I'll be running with it on Ubuntu 12.04, and possibly spreading it to Mac and Windows machines.)

Do you have an idea of when you'll be pushing this up?

ShaunaGordon avatar Sep 05 '12 14:09 ShaunaGordon

Horray! I can't use the original as it doesn't have mapping so anything is good for me if you want help testing it?

ryall avatar Sep 07 '12 15:09 ryall

I'd also like to know when this will be pushed. Then others can test and help debug. I have a windows and linux machine I'm willing to test on.

bayleedev avatar Sep 12 '12 02:09 bayleedev

How to use this Path Mapping?

I'm developing PHP Apps on MacOS, and share the code to the Ubuntu on VM and preview the code from that machine on the browser. I would like to debug the code from Sublime but the breakpoint's not working.

The configuration of xdebug it's good because it works on Netbeans. I think I need to somehow configure mapping but I don't know how. Could someone explain it, please?

lcmen avatar Sep 13 '12 12:09 lcmen

@lmendelowski This feature is not available yet.

ryall avatar Sep 17 '12 14:09 ryall

Very much looking forward to seeing this rewrite. This is already a very handy tool, with some improvement it could be amazing!

karock avatar Sep 19 '12 23:09 karock

hi, great work with this plugin.

I'm waiting for this rewrite too because i need the Path Mapping feature.

apelliciari avatar Sep 24 '12 10:09 apelliciari

Thank you so much @Kindari. Great work.

generalconsensus avatar Sep 24 '12 17:09 generalconsensus

@Kindari I understand you're probably busy but again, is there any chance of a test branch being pushed?

ryall avatar Sep 26 '12 10:09 ryall

Yeah, even if incomplete others could contribute. I'd love to help.

bayleedev avatar Sep 27 '12 20:09 bayleedev

@Kindari Thank you for your time on this plugin! Is there any chance of a test branch for the rewrite, as @ryall suggested? Thanks!

MartinPeverelli avatar Nov 07 '12 21:11 MartinPeverelli

@Kindari hi, +1 for releasing your test/rewrite branch please, would love to help out with getting it working.

sheldon avatar Jan 26 '13 09:01 sheldon

After 5 months and no feedback, I'd say this project is dead. Maybe a fork or another plugin will become popular.

bayleedev avatar Jan 27 '13 07:01 bayleedev

sad to say I think you might be right. would have been good to start with the rewrite he had started already. the thread thing seems key, to not block the editor. I noticed macgdbp is open source, maybe we could save a lot of time reusing some of Robert's work there. anyone interested in starting an official fork?

On 27 January 2013 07:29, Blaine Schmeisser [email protected]:

After 5 months and no feedback, I'd say this project is dead. Maybe a fork or another plugin will become popular.

— Reply to this email directly or view it on GitHubhttps://github.com/Kindari/SublimeXdebug/issues/36#issuecomment-12749933.

sheldon avatar Jan 27 '13 19:01 sheldon

@sheldon If I knew Python I would help. Sometimes it saves loads of time to step through some code. Maybe a good reason to learn a new language...

themroc5 avatar Feb 19 '13 02:02 themroc5

Did this ever get anywhere?

I'm needing remote debugging of PHP, and I'm using sublime 2. I know Python (although I've no experience with Sublime or XDebug)

I'd be happy to help if anyone is doing anything to push this on.

scottgrant avatar Jun 07 '13 07:06 scottgrant

@scottgrant There's a patch for remote debugging from @bendiy in #42 .

mbirth avatar Jun 07 '13 07:06 mbirth

The lack of full depth variable inspection is the show-stopper for me. Remote debugging would be nice too, but I've lived without it until now.

Sadly I'm not a Python developer either, although it doesn't look too taxing to learn. I'll keep an eye on this space and if I can help I will.

leighelse avatar Jun 25 '13 19:06 leighelse

Did anyone got this working on local but with a local domain name different from localhost . This is currently my situation, and I've managed to get it working for localhost, but when I try to use it on another local domain, It's not working

albertogomez-was avatar Jul 11 '13 16:07 albertogomez-was