[ESS] ess-tracebug - feature suggestion
Rainer M Krug
r.m.krug at gmail.com
Thu Dec 16 14:48:26 CET 2010
-----BEGIN PGP SIGNED MESSAGE-----
On 12/16/2010 02:30 PM, Vitalie S. wrote:
> Rainer M Krug <r.m.krug at gmail.com> writes:
>>> You probably already know that it can be set with M-c b b b :)
>> Actually not.
>> So multiple b are cycling through defined types of breakpoints? What is
>> the >R one?
> Yes b,b,b cycles through the breakpoint types. And "R>" stands for "recover"
> breakpoint. It is useful when you want to examine the call stack and the state
> of your variables at some specific point. It's an alternative to watch window by
> the way :).
> I completed the documentation by including the example on how to define custom
> breakpoint, and the screen-shot of all available breakpoints (including the
> custom one) here:
>> what about a variable like close-watch-window-after-debugging ? But in
>> general, the window / frame should be closed, but the buffer should
>> still be there, so that I could go back to it.
>>> How the screen should be split?
>> again a variable? similar to the one in ESS for the R process?
>>> Split only the iESS window, or the whole screen?
>>> May be hide the iESS altogether?
>> I think these depend on personal preferences, and it would be nice if
>> they could be, in a later stage, be configured by the user.
> Yes, defining user custom variables is the safest option.
>> I just thought about one: what about logging points? like breakpoints,
>> but that values of expressions are logged, but the running of the
>> program is not interrupted? i.e:
> Interesting idea. But I think it's much easier implementable in R. Just define a
> custom function to log the variable state in global variable or a file, and
> invoke it whenever you need logging in your program.
Yes - but as you are planning to include "watches", it would be nice to
be able to log the variables for further debugging from the debugging
interface. This would avoid to having to edit the source code when
debugging. And actually, when saving it to a file, it should not be to
difficult to implement, as it is effectively only inserting, instead of
a browser() command, a save.table("logfile", append=true,
col.names=FLASE). Kind of a custom breakpoint.
>> M-c l a
>> brings up a request for the expression to be logged
>> M-c l f
>> brings up a request for the filename to which log he expression
>> M-c l o
>> brings up a request if the logs should be appended or overwritten
>> Another option for logging: Open a new R session, and store the logged
>> variable values there as a list - this would enable plotting for quick
>> checks, ....
>> Thinking of it, I would actually prefer the new R session.
>>>> And finally: the tab-completion is not working when debugging, but the
>>>> same applies when using browser() - so it has nothing to do with
>>>> ess-tracebug in particular, but is related to debugging.
>>> It works for me. The `ess-complete-object-name` which performs the
>>> completion and should be fine with you as well.
>> I'll try it out again by using `ess-complete-object-name` directly and
>> not tab.
>>> I will get down to conditional breakpoint and watch window in the January.
>>> Hopefully you don't plan to do some heavy debugging during the Christmas
>> Don't worry - over the Christmas holidays, I will go into personal
>> recovery mode and not R / ess debug mode.
>> I am really looking forward to the new release of ess-tracebug.
>>> Thanks for the feedback,
>> Pleasure - that's what I like about open-source software: even if I
>> don't have the knowledge (and time) to code myself, I can help to
>> improve the software by giving feedback.
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation
Biology, UCT), Dipl. Phys. (Germany)
Centre of Excellence for Invasion Biology
Natural Sciences Building
Office Suite 2039
Main Campus, Merriman Avenue
Tel: +33 - (0)9 53 10 27 44
Cell: +27 - (0)8 39 47 90 42
Fax (SA): +27 - (0)8 65 16 27 82
Fax (D) : +49 - (0)3 21 21 25 22 44
Fax (FR): +33 - (0)9 58 10 27 44
email: Rainer at krugs.de
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
-----END PGP SIGNATURE-----
More information about the ESS-help