[R] Suppressing certain debugging output

Prof Brian Ripley
Mon, 21 Dec 2009 17:28:13 -0000

On Mon, 21 Dec 2009, Stuart Andrews wrote:

> keywords: debug, do.call, "debugging in", suppress, arguments,
list, screen,
> console, output
>
> Hi,
>
> I would like to control the output to the console while debugging functions
> that are called by do.call( FCN, ARGUMENTS )  when the arguments are quite
> large.  Is there a simple way to suppress (or compress) this output?

Yes.  From ?options

      ?deparse.max.lines?: controls the number of lines used when
           deparsing in ?traceback?, ?browser?, and upon entry to a
           function whose debugging flag is set.  Initially unset, and
           only used if set to a positive integer.

>
> Thanks,
> - Stu
>
>
> For example:
>
> ttt = function(x) { length(x) };  debug(ttt);  do.call(ttt,
> list(x=rep(0,10)))
> ttt = function(x) { length(x) };  debug(ttt);  do.call(ttt,
> list(x=rep(0,100)))
> ttt = function(x) { length(x) };  debug(ttt);  do.call(ttt,
> list(x=rep(0,10000000)))
>
>
> The first line prints the following to the console ...
>
> debugging in: function(x) { length(x) }
> (x = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0))
> debug: {
>   length(x)
> }
> Browse[1]>
>
>
> The second prints ...
>
> debugging in: function(x) { length(x) }
> (x = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0))
> debug: {
>   length(x)
> }
> Browse[1]>
>
>
> Etc.
> Etc.
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

--
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595