Ich schreibe ein Buch, das Code in zwei Sprachen (R und SAS) enthalten wird. Ich weiß, dass ich \verbatim
oder verwenden könnte \alltt
, um die Codeabschnitte festzulegen, aber das listings
Paket hat einige nette Funktionen.
Gibt es eine Möglichkeit, es listings
mit zwei Sprachen zu verwenden?
Antwort1
Wenn Sie für die beiden Sprachen unterschiedliche Optionen haben, können Sie zwei Stile definieren und die entsprechende Option style=...
Ihrer lstlisting
Umgebungen verwenden.
\documentclass{book}
\usepackage{xcolor}
\usepackage{listings}
\lstdefinestyle{SAS}{
language=SAS,
basicstyle=\ttfamily,
}
\lstdefinestyle{R}{
language=R,
breaklines=true,
basicstyle=\ttfamily
}
\begin{document}
Example of SAS code:
\begin{lstlisting}[style=SAS]
data myoutput;
set myinput;
if myvar = "OK" then output;
run;
\end{lstlisting}
Example of R code:
\begin{lstlisting}[style=R]
# I don't know R, code copied from http://www.rexamples.com/2/Functions
Square <- function(x) {
return(x^2)
}
print(Square(4))
print(Square(x=4)) # same thing
\end{lstlisting}
\end{document}