Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Set default arguments to Sweave code chunk

I am using cacheSweave with a large LaTeX Sweave document. Rather than put

<<cache=true>>=
...snip...
@

in almost all of my code chunks, I would rather have cache=true be the default, and use

<<cache=false>>=
...snip...
@

when I don't want a code chunk to be cached. How can I set this default argument for code chunks?

I am currently using the following code to compile the Sweave document:

library(cacheSweave)
Sweave(infile, driver = cacheSweaveDriver)
like image 518
David Robinson Avatar asked Feb 21 '12 22:02

David Robinson


1 Answers

There are a number of ways to accomplish this, but using \SweaveOpts{} to set the option somewhere early in your *.Snw file (e.g. in the document preamble) is probably the handiest:

\SweaveOpts{cache=TRUE}

As described in the Sweave manual, a \SweaveOpts{} statement anywhere in a documentation chunk will modify the defaults for "all code chunks after the statement".

A couple of other options are mentioned here.

like image 147
Josh O'Brien Avatar answered Sep 23 '22 00:09

Josh O'Brien