Because of the blocking nature of vim-fireplace (really of vim itself), 
you'll have to run most of the debuggers from a live, dedicated repl.

I've been slowly evolving my own debug-repl for a few years now.  It works 
in a `user.clj` setting or in a project related file.  At a quick glance, 
it supports the major features found in clj-debugger (file info exists, but 
no file pretty-print).  You can see a recent gist of it here: 
https://gist.github.com/ohpauleez/4ca0b646b89512f38ea2

Some people may want to rename `debug-repl` to `break`, and `quit-dr` to 
`continue`.

 * Locals are in a map, easy to print or consume
 * The debug repl captures the metadata about the call-site, so you can 
easily print the file contents based on that information
 * There's a shorthand to bounce the debugger into the namespace where the 
call happened, `in-debug-ns`
 * There's tooling/functions to make any uncaught exception trigger the 
debugger/repl
 * There's a `try-repl` (try an expression and launch the debugger/repl on 
an exception)
 * There's an `assert-repl` (like `try-repl` but with an assert - useful 
when testing function contracts/invariants)
 * One can make the debug repl return a new form into the call-site (at 
`quit`/`continue`) or establish a default one.
 * This debug repl nests correctly

In a more recent version (not in the gist), I've toyed with capturing 
stackframes as objects, allowing you to go up/down in the "stack" within a 
limited scope.  I don't think this is a particularly good idea, but in 
certain contexts, it works nicely.

While I've never used it, you may want to look at vim-redl - 
https://github.com/dgrnbrg/vim-redl.  You could also use emacs with evil, 
and then use ritz for a true JVM debugger - https://github.com/pallet/ritz

Cheers,
Paul

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to