From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Hendy Subject: Re: [BABEL] BUG Re: Omitting try/catch blocks from tangled R code? Date: Mon, 17 Mar 2014 12:11:20 -0500 Message-ID: References: <52F498AE.6090802@krugs.de> <87siruamo3.fsf@gmail.com> <52F5326C.7010505@krugs.de> <877g7syio6.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:48225) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WPb4N-0000HI-2z for emacs-orgmode@gnu.org; Mon, 17 Mar 2014 13:11:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WPb4L-0007Kl-Uq for emacs-orgmode@gnu.org; Mon, 17 Mar 2014 13:11:23 -0400 Received: from mail-oa0-x236.google.com ([2607:f8b0:4003:c02::236]:38921) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WPb4L-0007Kg-QV for emacs-orgmode@gnu.org; Mon, 17 Mar 2014 13:11:21 -0400 Received: by mail-oa0-f54.google.com with SMTP id n16so5923221oag.41 for ; Mon, 17 Mar 2014 10:11:20 -0700 (PDT) In-Reply-To: <877g7syio6.fsf@gmail.com> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Eric Schulte Cc: Rainer@krugs.de, emacs-orgmode On Mon, Mar 17, 2014 at 10:00 AM, Eric Schulte wrote: > John Hendy writes: > >> On Fri, Feb 7, 2014 at 1:22 PM, Rainer M Krug wrote: >>> >>> >>> >>> On 02/07/14, 17:47 , Eric Schulte wrote: >>> > Rainer M Krug writes: >>> > >>> >> On 02/07/14, 07:18 , John Hendy wrote: >>> >>> Greetings, >>> >>> >>> >>> >>> >>> I don't usually tangle, but am creating a code file to go along with a >>> >>> presentation I'm giving this weekend so that attendees can try things >>> >>> out afterward by cloning my github repo where all the data and >>> >>> necessary files are stored. >>> >>> >>> >>> In my presentation (Beamer), I create plots via the R pdf() device, >>> >>> and noticed that all of the tangled code where plots are generated >>> >>> contains the following: >>> >>> >>> >>> pdf(file="file.pdf"); tryCatch({ >>> >>> >>> >>> code block contents here >>> >>> >>> >>> },error=function(e){plot(x=-1:1, y=-1:1, type='n', xlab='', ylab='', >>> >>> axes=FALSE); text(x=0, y=0, labels=e$message, col='red'); >>> >>> paste('ERROR', e$message, sep=' : ')}); dev.off() >>> >>> >>> >>> Is there a way to omit this? >>> >> >>> >> This is a bug which must have been introduced some time ago - in the >>> >> stock version of emacs (Org-mode version 7.9.3f >>> >> (release_7.9.3f-17-g7524ef @ >>> >> /usr/local/Cellar/emacs/24.3/share/emacs/24.3/lisp/org/)) it does not >>> >> tangle the enclosing commands to create graphics, but in 8.2 it does (I >>> >> don't have an older version at hand to go further back). >>> >> >>> > >>> > I believe this was introduced by your commit eaa3a761d. Reversion of >>> > which with the following should provide a temporary workaround. >>> > > I take this back, the behavior is unrelated to Rainer's commit adding > try/catch blocks to R graphics creation logic. > > In fact I don't believe this is a bug, rather the default behavior is to > expand code block bodies on tangling. This behavior may be changed by > using the :no-expand header argument which will inhibit code block body > expansion during tangling. > Got it, and thanks for the new variable tip! Out of curiosity, is there a consensus that this is the preferred behavior for tangling by default? I'm guessing at some point it was decided that the need was preferred to have these bits inserted before/after code blocks, but just trying to confirm this. It seems odd to me, at least given R's behavior, that someone would prefer these bits to show up in the tangled file since they appeared to serve the purpose of having Org not fail during export vs. benefitting the code in any way (if I wasn't running code through R, I'd just get the errors directly). John > Best, > > -- > Eric Schulte > https://cs.unm.edu/~eschulte > PGP: 0x614CA05D