John Hendy <jw.he...@gmail.com> writes: > On Fri, Feb 7, 2014 at 1:22 PM, Rainer M Krug <rai...@krugs.de> wrote: >> >> >> >> On 02/07/14, 17:47 , Eric Schulte wrote: >> > Rainer M Krug <rai...@krugs.de> 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. Best, -- Eric Schulte https://cs.unm.edu/~eschulte PGP: 0x614CA05D