How can I apply the same formatting with R chunks that I apply to regular listings? The following example shows a nicely formatting listing and an (IMHO) awful looking R chunk. I already loaded SweaveListingUtils
and use SweaveListingUtils
, no change in the output.
\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{xcolor}
\usepackage{listings}
\lstset{language=R,breaklines=true}
\definecolor{hellgelb}{rgb}{1,1,0.8}
\definecolor{colKeys}{rgb}{0,0,1}
\definecolor{colIdentifier}{rgb}{0,0,0}
\definecolor{colComments}{rgb}{1,0,0}
\definecolor{colString}{rgb}{0,0.5,0}
\setbeamertemplate{navigation symbols}{}
\lstset{%
float=hbp,%
basicstyle=\ttfamily\small, %
identifierstyle=\color{colIdentifier}, %
keywordstyle=\color{colKeys}, %
stringstyle=\color{colString}, %
commentstyle=\color{colComments}, %
columns=flexible, tabsize=2, %
frame=single, extendedchars=true, %
showspaces=false, showstringspaces=false, %
numbers=left, numberstyle=\tiny, %
breaklines=true, backgroundcolor=\color{hellgelb}, %
breakautoindent=true, captionpos=b%
}
\begin{document}
<<setup, include=FALSE, cache=FALSE>>=
library(knitr)
library(SweaveListingUtils)
opts_chunk$set(fig.path = 'figure/listings-')
options(formatR.arrow = TRUE)
render_listings()
@
\begin{frame}[fragile]
\begin{lstlisting}
rnorm(3)
\end{lstlisting}
<<eval=TRUE>>=
rnorm(3)
@
\end{frame}
\end{document}
Update
Using the example (modified to article
)and listings.css
from Boris' answer below and running knitr
on the boris.Rnw
I receive a warning in the knitr output:
[1] "boris.tex"
Warnmeldung:
In color_def(options$background) :
the color '' is invalid;using default color...see http://yihui.name/knitr/options
the TeX file Boris.tex
is generated. Running pdflatex on this file gives:
Undefined control sequence.
l.9 \hlkwd{rnorm}\hlstd{(}\hlnum
{3}\hlstd{)}
?
I have an up-to-date R, knitr and TeX Live 2015:
*File List*
article.cls 2014/09/29 v1.4h Standard LaTeX document class
size10.clo 2014/09/29 v1.4h Standard LaTeX file (size option)
graphicx.sty 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR)
keyval.sty 2014/10/28 v1.15 key=value parser (DPC)
graphics.sty 2014/10/28 v1.0p Standard LaTeX Graphics (DPC,SPQR)
trig.sty 1999/03/16 v1.09 sin cos tan (DPC)
graphics.cfg 2010/04/23 v1.9 graphics configuration of TeX Live
pdftex.def 2011/05/27 v0.06d Graphics/color for pdfTeX
infwarerr.sty 2010/04/08 v1.3 Providing info/warning/error messages (HO)
ltxcmds.sty 2011/11/09 v1.22 LaTeX kernel commands for general use (HO)
color.sty 1999/02/16
color.cfg 2007/01/18 v1.5 color configuration of teTeX/TeXLive
framed.sty 2011/10/22 v 0.96: framed or shaded text with page breaks
alltt.sty 1997/06/16 v2.0g defines alltt environment
inputenc.sty 2015/03/17 v1.2c Input encoding file
utf8.def 2015/06/27 v1.1n UTF-8 support for inputenc
t1enc.dfu 2015/06/27 v1.1n UTF-8 support for inputenc
ot1enc.dfu 2015/06/27 v1.1n UTF-8 support for inputenc
omsenc.dfu 2015/06/27 v1.1n UTF-8 support for inputenc
fontenc.sty
t1enc.def 2005/09/27 v1.99g Standard LaTeX file
xcolor.sty 2007/01/21 v2.11 LaTeX color extensions (UK)
color.cfg 2007/01/18 v1.5 color configuration of teTeX/TeXLive
listings.sty 2015/06/04 1.6 (Carsten Heinz)
lstmisc.sty 2015/06/04 1.6 (Carsten Heinz)
listings.cfg 2015/06/04 1.6 listings configuration
lstlang1.sty 2015/06/04 1.6 listings language file
lstlang2.sty 2015/06/04 1.6 listings language file
lstlang3.sty 2015/06/04 1.6 listings language file
upquote.sty 2012/04/19 v1.3 upright-quote and grave-accent glyphs in verbat
im
textcomp.sty 2005/09/27 v1.99g Standard LaTeX package
ts1enc.def 2001/06/05 v3.0e (jk/car/fm) Standard LaTeX file
ts1enc.dfu 2015/06/27 v1.1n UTF-8 support for inputenc
ts1cmr.fd 2014/09/29 v2.5h Standard LaTeX font definitions
supp-pdf.mkii
pdftexcmds.sty 2011/11/29 v0.20 Utility functions of pdfTeX for LuaTeX (HO)
ifluatex.sty 2010/03/01 v1.3 Provides the ifluatex switch (HO)
ifpdf.sty 2011/01/30 v2.3 Provides the ifpdf switch (HO)
epstopdf-base.sty 2010/02/09 v2.5 Base part for package epstopdf
grfext.sty 2010/08/19 v1.1 Manage graphics extensions (HO)
kvdefinekeys.sty 2011/04/07 v1.3 Define keys (HO)
kvoptions.sty 2011/06/30 v3.11 Key value format for package options (HO)
kvsetkeys.sty 2012/04/25 v1.16 Key value parser (HO)
etexcmds.sty 2011/02/16 v1.5 Avoid name clashes with e-TeX commands (HO)
epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Live
t1cmtt.fd 2014/09/29 v2.5h Standard LaTeX font definitions
***********
Best Answer
The simplest solution is not to use
lstlistings
but instead put the code into a chunk witheval=FALSE
:UPDATE
In my previous answer I assumed you wanted
listings
output to look likeknitr
. Now I see you wantknitr
output to look likelistings
. Well, this is also possible.The simplest way is to use
knitr
theme mechansim, see https://github.com/yihui/knitr/blob/master/inst/examples/knitr-themes.Rnw.First, create the CSS file, e.g.
listings.css
:You may want to tune up further. Then input the file in your
rnw
file:Here is the result: