我正在输入一些有关编程语言 R 的笔记。不幸的是,该listings
包似乎可以识别某些数学运算符,但不能识别其他运算符。例如,在下面的示例中,
*
和%%
根据需要以不同的颜色排版,但%/%
和+
和-
和^
没有以不同的颜色排版。
\documentclass[12pt]{scrartcl}
\usepackage{xcolor}
\usepackage{listings}
\lstset{
language=R,
basicstyle=\footnotesize\ttfamily,
backgroundcolor=\color{white!95!black},
commentstyle=\color{green},
keepspaces=true,
keywordstyle=\color{blue}}
\begin{document}
You can use R as a simple calculator:
\begin{lstlisting}
> # The hash symbol '#' will comment out the rest of the line
> 2 + 3
[1] 5
> 7 - 3
[1] 4
> 4 * 5
[1] 20
> 3^4 # Exponentiation
[1] 81
> 43 %% 10 # Modulo operator
[1] 3
> 43 / 10 # Floating point division
[1] 4.3
> 43 %/% 10 # Integer division
[1] 4
\end{lstlisting}
\end{document}
如何获得所有数学运算符都以蓝色字体输出的输出?
答案1
对于R
语言,listings
定义:
otherkeywords={!,!=,~,$,*,\&,\%/\%,\%*\%,\%\%,<-,<<-,_,/},
因此,既没有+
列出-
也没有^
列出,必须添加它们。
看来%/%
只有\%
在它之前添加它才能otherkeywords
让它按预期工作。
换句话说,添加:
otherkeywords={!,!=,~,$,*,\&,+,-,^,\%,\%/\%,\%*\%,\%\%,<-,<<-,_,/},
做\lstset
你想做的事。
\documentclass[12pt]{scrartcl}
\usepackage{xcolor}
\usepackage{listings}
\lstset{
language=R,
basicstyle=\footnotesize\ttfamily,
backgroundcolor=\color{white!95!black},
commentstyle=\color{green},
keepspaces=true,
otherkeywords={!,!=,~,$,*,\&,+,-,^,\%,\%/\%,\%*\%,\%\%,<-,<<-,_,/},
keywordstyle=\color{blue}}
\begin{document}
You can use R as a simple calculator:
\begin{lstlisting}
> # The hash symbol '#' will comment out the rest of the line
> 2 + 3
[1] 5
> 7 - 3
[1] 4
> 4 * 5
[1] 20
> 3^4 # Exponentiation
[1] 81
> 43 %% 10 # Modulo operator
[1] 3
> 43 / 10 # Floating point division
[1] 4.3
> 43 %/% 10 # Integer division
[1] 4
\end{lstlisting}
\end{document}