emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] R code block produces only partial output


From: Rainer M Krug
Subject: Re: [O] R code block produces only partial output
Date: Sat, 09 Aug 2014 10:54:29 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (darwin)

"Charles C. Berry" <address@hidden> writes:

> On Thu, 7 Aug 2014, Aaron Ecay wrote:
>
>> Hi Chuck,
>>
>> Thanks for your feedback.
>>
>> 2014ko abuztuak 7an, "Charles C. Berry"-ek idatzi zuen:
>>> Hi Aaron,
>>>
>>> I like what you are trying to do, but ...
>>>
>>> 1) The change has at least one bug: Remote sessions are broken by this
>>> change.
>>>
>>> 2) The behavior of :results output is modified in ways that might not be
>>> desired. i.e. warnings and errors will not show up in the output.
>>>
>
> [snip issue 1 discussion]
>
>>>
>>> Issue 2) ===========
>>>
>>> ECM:
>>>
>>> #+NAME: aa
>>> #+BEGIN_SRC R :session R2 :results output
>>> warning("this is a warning")
>>> 1+1
>>> #+END_SRC
>>>
>>> #+RESULTS: aa
>>> : [1] 2
>>>
>>> For some purposes having the warnings in the #+RESULTS: block is helpful.
>>>
>>> And when revising code, having the errors in the #+RESULTS helps -
>>> especially if I have to put aside work in progress.
>>
>> Hmm.  Certainly, the previous behavior should be retained for now.  In
>> the longer term, I’d like to see a system whereby R errors trigger elisp
>> errors.  This is so that the execution of a whole document (subtree,
>> etc.) will be halted by the first error, rather than continuing what may
>> be a long series of commands that will not give valid output.  What do
>> you think?
>>
>
> I need a while to sort through this. stop(), warning(), and message()
> will print to the session but not show up in what capture.output
> retains.
>
> sink() has the ability to capture those things, but there is added
> baggage.
>
> I fear some study of ?conditions is needed. My knowledge of condition
> handling in R is scant.
>
> As for stopping on error, I think that anything that changes current
> behavior at this late date ought to be configurable.
>
> FWIW, when I export documents, I sometimes get innocuous errors that I
> am happy did not stop the run in its tracks - like formatting one
> table fails with an error but all else went through. And sometimes I
> wish it had stopped.

I agree here with Charles. An example where R errors do *not* trigger do
not abort export are graphs: the graph generation, when using R, is
wrapped in a tryCatch() block and shows the error in the exported
document as well as in the R session but does not abort. 

A case where it is very useful to continue export is when creating
lecture notes or slides to demonstrate errors.

If there is the wish for R errors to trigger elisp errors, a header
argument would be needed to specify if errors and warnings in R should
trigger errors in elisp or if they should be ignored and the error
message displayed and the export should be continued.

Cheers,

Rainer

>
> Best,
>
> Chuck

-- 
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, 
UCT), Dipl. Phys. (Germany)

Centre of Excellence for Invasion Biology
Stellenbosch University
South Africa

Tel :       +33 - (0)9 53 10 27 44
Cell:       +33 - (0)6 85 62 59 98
Fax :       +33 - (0)9 58 10 27 44

Fax (D):    +49 - (0)3 21 21 25 22 44

email:      address@hidden

Skype:      RMkrug

PGP: 0x0F52F982

Attachment: pgpkZDzjjYOVI.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]