2012-02-21 14 views
5

Tôi đang sử dụng cacheSweave bằng tài liệu LaTeX Sweave lớn. Thay vì đưaĐặt đối số mặc định cho đoạn mã Sweave

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

ở hầu hết tất cả các khối mã của tôi, tôi thà có cache=true là mặc định, và sử dụng

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

khi tôi không muốn một mã đoạn để được lưu trữ. Làm thế nào tôi có thể đặt đối số mặc định này cho các khối mã?

Tôi hiện đang sử dụng đoạn mã sau để biên dịch các tài liệu Sweave:

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

để nhất quán với R, tôi khuyên bạn nên viết TRUE/FALSE thay vì true/false; như là một lưu ý phụ, bạn có thể sử dụng 'opts_chunk $ set (cache = TRUE)' hoặc '\ SweaveOpts {cache = TRUE}' trong gói knitr (http://yihui.name/knitr), cũng hỗ trợ cache. –

Trả lời

7

Có một số cách để thực hiện điều này, nhưng sử dụng \SweaveOpts{} để thiết lập các tùy chọn ở đâu đó đầu trong tập tin *.Snw của bạn (ví dụ như trong lời mở đầu tài liệu) có lẽ là handiest:

\SweaveOpts{cache=TRUE} 

Như đã trình bày trong cuốn hướng dẫn Sweave, một tuyên bố \SweaveOpts{} bất cứ nơi nào trong một đoạn tài liệu sẽ thay đổi giá trị mặc định cho "tất cả các khối mã sau câu lệnh ".

Một vài tùy chọn khác được đề cập here.