R コードと perl の両方を含むレポートを書きたいので、テストするために、ファイル002- minimal.Rnw (結果のファイルを Minimal.Rnw と呼びます):
<<CheckPerl>>=
Sys.which('perl')
@
<<TestPerl, engine='perl'>>=
$test = "jello world";
$test =~ s/j/h/;
print $test
@
ファイルを Knit() すると (emacs で Mn を使用)、Minimal.tex が生成され、置換の結果は正しいです。
...
\begin{verbatim}
## hello world
\end{verbatim}
...
ただし、.pdf ファイルを作成しようとすると、次のエラー メッセージが表示されます。
...
./Minimal.tex:108: Missing $ inserted.
<inserted text>
$
l.108 ...\hlkwb{\$test\ }\hlstd{}\hlopt{=$\sim$\ }
\hlstd{}\hlkwc{s/j/h/}\hls...
?
./Minimal.tex:108: Emergency stop.
...
l.108 (およびその他) のステートメントはalltt
環境内にありますが、 のドキュメントによるとalltt
、$
記号はドル記号を生成するだけであり、数学モードを示すために使用されていません。したがって、手動で に置き換える$\sim$
と\(\sim\)
、正しくコンパイルされ、期待される結果が得られる .tex ファイルが得られます。
結局のところ、私の質問は次のとおりです。環境ではなく、knitr を使用するにはどうすればよいです\(...\)
か?$...$
alltt
(R-3.0.1、emacs 23.3.1、ess 13.05、Ubuntu 12.04)