Hello,

To show what I mean, let's say I was interested in using a browser call to
examine the contents of the dots object from within a function call.

Running R from the Windows R gui (for example), I could just do this:

> f <- function(...) browser()
> f(x=1:4, y=11:14)
Called from: f(x = 1:4, y = 11:14)
Browse[1]> names(list(...))
[1] "x" "y"

In ESS, this is much harder for a couple of reasons. First, upon entering
the browser, ESS always seems to immediately step through one step. Using
the function above, that steps it right out of the call, like this:

> f <- function(...) browser()
> f(x=1:4, y=1:14)
Called from: f(x = 1:4, y = 1:14)
Browse[1]>
>

I can often work around that, in this case by adding any line of code after
the browser call. But I still can't (directly) examine names(list(...)),
because ESS interprets the initial 'n' in 'names' as a command to step
through the debugger:

> f <- function(...) {browser(), dummy <-1}
> f(x=1:4, y=1:14)
Called from: f(x = 1:4, y = 1:14)
Browse[1]>
debug at #1: dummy <- 1
Browse[2]>
> ames(      ## Stopped typing because I realize I've been popped fully out
of the debugger

Is there any way to suppress this behavior, or do I just need to do this
sort of interactive debugging from somewhere other than ESS?

Thanks!

- Josh

(In case it matters, I'm running ESS 13.03 and GNU Emacs 23.3.1 on Windows
XP, using Vincent Goulet's Emacs distribution.)

	[[alternative HTML version deleted]]

