2013-05-06 16 views
12

Non riesco a trovare informazioni sulla possibilità di specificare le opzioni per i blocchi in linea in knitr. Ho appena provato a specificarli, come nel pezzo normale, ma questo dà un errore.Opzioni di blocco inline Knitr (nessuna valutazione) o solo il codice di rendering evidenziato

Quello che mi serve è includere il codice R con l'evidenziazione in un PDF, ma senza valutarlo. Questo può accadere solo con blocchi in linea a causa del formato del contesto. O forse c'è un altro modo per includere il codice evidenziato.

Per fornire un esempio, ho bisogno di qualcosa nelle linee di:

Some text about something with `r eval=FALSE 1+1` inside the sentence. 

Questa sintassi particolare dà:

Error in parse(text = code, keep.source = FALSE) : 
<text>:1:11: unexpected ',' 
1: eval=FALSE, 
+0

fa 'eval = FALSE, echo = TRUE' fai quello che vuoi –

+0

@TylerRinker Purtroppo no. Ho modificato la domanda per essere più chiaro su ciò di cui ho bisogno. –

+0

[duplicato parziale] (http://stackoverflow.com/a/16185350/471093) (per la parte evidenziata) – baptiste

risposta

5

Grazie alla Yihui you can do,

\documentclass{article} 
<<setup, include=FALSE>>= 
knit_hooks$set(inline = function(x) { 
    if (is.numeric(x)) return(knitr:::format_sci(x, 'latex')) 
    knitr:::hi_latex(x) 
}) 
@ 
\begin{document} 

the value of $\pi$ is \Sexpr{pi}, and the function to read a table is 
\Sexpr{'read.table()'}. 

<<test2>>= 
rnorm(10) 
@ 
\end{document} 
+0

+1. Potresti immaginare come sarebbe questo in Markdown? Il chunk setup non è il problema, piuttosto il contenuto della funzione (porzioni latex e hi_latex) –

+1

Yihui [recentemente accennato] (http://stackoverflow.com/a/16185350/471093) che un piccolo trucco sarebbe stato necessario per il markdown . – baptiste

+0

Grazie. Credo che dovrò vivere senza evidenziare poi. Lascerò la domanda aperta per ora, nel caso. –

Problemi correlati