Цвет для блока кода R в пакете списков
Я хочу вставить фрагмент кода R в документ LaTeX. Настройки по умолчанию для пакета listings
также изменяют шрифт, но не цвет, который мне нужен.
Хотя я понимаю, что могу установить цвета с помощью функции lstset
, я не очень уверен в комбинации, которая будет выглядеть хорошо. Таким образом, может ли кто-нибудь поделиться своими настройками lstset
для пакета listings
, чтобы раскрасить синтаксис R? Таким образом, все, кто видит этот пост, могут использовать одни и те же настройки!
1 ответ:
\documentclass[12pt]{article} \usepackage{listings} \usepackage[usenames,dvipsnames]{color} \lstset{ language=R, % the language of the code basicstyle=\tiny\ttfamily, % the size of the fonts that are used for the code numbers=left, % where to put the line-numbers numberstyle=\tiny\color{Blue}, % the style that is used for the line-numbers stepnumber=1, % the step between two line-numbers. If it is 1, each line % will be numbered numbersep=5pt, % how far the line-numbers are from the code backgroundcolor=\color{white}, % choose the background color. You must add \usepackage{color} showspaces=false, % show spaces adding particular underscores showstringspaces=false, % underline spaces within strings showtabs=false, % show tabs within strings adding particular underscores frame=single, % adds a frame around the code rulecolor=\color{black}, % if not set, the frame-color may be changed on line-breaks within not-black text (e.g. commens (green here)) tabsize=2, % sets default tabsize to 2 spaces captionpos=b, % sets the caption-position to bottom breaklines=true, % sets automatic line breaking breakatwhitespace=false, % sets if automatic breaks should only happen at whitespace keywordstyle=\color{RoyalBlue}, % keyword style commentstyle=\color{YellowGreen}, % comment style stringstyle=\color{ForestGreen} % string literal style } \begin{document} \begin{lstlisting} library(foreign) foo <- rnorm(100) # writing a function bar <- apply(foo, 1, function(x){ y <- sqrt(x) cat(paste('The result is ', x ))) }) bar str(bar) foo + bar \end{lstlisting} \end{document}