Gvim interface to the ruby debugger?


(Gray, Jeff) #1

I’ve been contemplating hacking together some sort of Gvim-based interface
to the Ruby debugger, sort of a mini-IDE I suppose, that would do the
following, as a start:

  • Use a split window to display code above, ruby debugger
    interface below
  • Do some pre-formatting and apply syntax highlighting to the
    debugger I/O (useful for “p”'ing deeply hierarchical objects)
  • Synchronize current file/line in the code window to the debugger
  • Define commands/keystrokes in the code window to do things
    like set breakpoint at current line, etc.

I’m by no means an expert with Vim scripting, but Vim features like :Explore
make me think it’s a feasible project. Please let me know any productive
comments – pointers to existing work, suggestions to alternatives, public
demand for such a project, etc. – that you might have.

Thanks,

  • jeff

(Michael Brailsford) #2

I’ve been contemplating hacking together some sort of Gvim-based interface
to the Ruby debugger, sort of a mini-IDE I suppose, that would do the
following, as a start:

Sounds great! You don’t need to be a vim scripting expert, just use
vim’s ability to use ruby as a scripting language. You can do the whole
thing in ruby.

-Michael


(Ned Konz) #3

Hi Jeff,

I’ve been thinking about this (for both Ruby and Perl). The main
problem is that you have to have an external connection to the
debugger, since the internal Vim environment is strange enough you
don’t want to run a debugger in it (and as was noted, most Vims
aren’t compiled with Ruby for some reason).

The built-in debugger interface is pretty specialized, and hooks into
the main event loop of Vim (and only works with X).

I don’t know if you want this to work under Windows, but it’s possible
(I think) to use named pipes in both the Unix and Windows envronment
(at least Windows/NT; don’t know if you can do this with
DOS-windows).

So you could whip up a version of debug.rb that talks to a couple of
named pipes, and then open a connection to those pipes from Vim. One
would pass commands from Vim to the debugger, and another would pass
output and line number data to Vim.

I don’t know how easy it would be to interrupt a running program,
though.

···

On Wednesday 26 June 2002 03:55 pm, Gray, Jeff wrote:

I’ve been contemplating hacking together some sort of Gvim-based
interface to the Ruby debugger, sort of a mini-IDE I suppose, that
would do the following, as a start:

  • Use a split window to display code above, ruby debugger
    interface below
  • Do some pre-formatting and apply syntax highlighting to the
    debugger I/O (useful for “p”'ing deeply hierarchical objects)
  • Synchronize current file/line in the code window to the debugger
  • Define commands/keystrokes in the code window to do things
    like set breakpoint at current line, etc.

I’m by no means an expert with Vim scripting, but Vim features like
:Explore make me think it’s a feasible project. Please let me know
any productive comments – pointers to existing work, suggestions
to alternatives, public demand for such a project, etc. – that you
might have.


Ned Konz
http://bike-nomad.com
GPG key ID: BEEA7EFE


(Austin Ziegler) #4

It would probably be better to make it in vim scripting rather than
in Ruby itself, because (IIRC) vim requirs that you compile in
specific support for the language. Unless this has changed, I know
that will prevent most users of Windows from using vim+ruby.

-austin
– Austin Ziegler, austin@halostatue.ca on 2002.06.26 at 19.42.27

···

On Thu, 27 Jun 2002 08:10:48 +0900, brailsmt@yahoo.com wrote:

I’ve been contemplating hacking together some sort of Gvim-based
interface to the Ruby debugger, sort of a mini-IDE I suppose,
that would do the following, as a start:
Sounds great! You don’t need to be a vim scripting expert, just
use vim’s ability to use ruby as a scripting language. You can do
the whole thing in ruby.


(Michael Brailsford) #5

It would probably be better to make it in vim scripting rather than
in Ruby itself, because (IIRC) vim requirs that you compile in
specific support for the language. Unless this has changed, I know
that will prevent most users of Windows from using vim+ruby.

Don’t windows binaries have ruby support compiled in? Its a shame if
they don’t.

-Michael


(Austin Ziegler) #6

No. In my vim6.1 for Windows, it’s -ruby, whereas it’s +python/dyn,
+tcl/dyn, and +perl/dyn (dynamic loading).

Maybe someone could convince them to do it differently for vim6.2.

-austin
– Austin Ziegler, austin@halostatue.ca on 2002.06.26 at 22.08.42

···

On Thu, 27 Jun 2002 08:57:00 +0900, brailsmt@yahoo.com wrote:

It would probably be better to make it in vim scripting rather
than in Ruby itself, because (IIRC) vim requirs that you compile
in specific support for the language. Unless this has changed, I
know that will prevent most users of Windows from using vim+ruby.
Don’t windows binaries have ruby support compiled in? Its a shame
if they don’t.