2012-02-21 5 views
5

Sto usando cacheSweave con un grande documento LaTeX Sweave. Piuttosto che mettereImposta gli argomenti predefiniti per il blocco del codice Sweave

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

in quasi tutti i miei pezzi di codice, avrei preferito cache=true essere il default, e utilizzare

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

quando io non voglio un codice pezzo per essere memorizzate nella cache. Come posso impostare questo argomento predefinito per i blocchi di codice?

Attualmente sto usando il seguente codice per compilare il documento Sweave:

library(cacheSweave) 
Sweave(infile, driver = cacheSweaveDriver) 
+1

per coerenza con R, ti consiglio di scrivere TRUE/FALSE anziché vero/falso; come nota a margine, puoi usare "opts_chunk $ set (cache = TRUE)' o '\ SweaveOpts {cache = TRUE}' nel pacchetto knitr (http://yihui.name/knitr), che supporta anche la cache. –

risposta

7

Ci sono un certo numero di modi per ottenere questo, ma utilizzando \SweaveOpts{} di impostare l'opzione da qualche parte nelle prime file *.Snw (ad esempio in il preambolo del documento) è probabilmente il più comodo:

\SweaveOpts{cache=TRUE} 

Come descritto nel manuale Sweave, una dichiarazione \SweaveOpts{} ovunque in un pezzo di documentazione modificherà le impostazioni predefinite per "tutti i blocchi di codice dopo la dichiarazione ".

Un paio di altre opzioni sono menzionate here.