使用列表管理关键字颜色

使用列表管理关键字颜色

R我正在处理一个包含软件包代码的文档listings,对于一些显然被视为第一个关键字的字符和单词的字体颜色,我遇到了麻烦。

在此示例中

\documentclass{article}
\usepackage{xcolor} 
\usepackage{listings}
\lstset{
  language=R,
  keywordstyle=\color{blue},
  keywordstyle=[2]{\color{red}},
  commentstyle=\color{gray},
  backgroundcolor=\color{gray!25},
  morekeywords=[2]{arg,pos},
  moredelim=[is][\color{violet}]{''}{''}
}
\begin{document}
\begin{lstlisting}
# define one / two / three characteristics
install(''"tree/site"'', arg = 1, pos = "t")
\end{lstlisting}
\end{document}

产生: 列表输出

此处,注释和引号内的斜线均以蓝色打印,并且它们不符合中定义的颜色lstset

除此之外pos,还明确定义为keywordstyle [2]红色出现在蓝色中。

我感谢您的帮助或建议。

答案1

pos已定义为关键字。您可以在定义新关键字之前将其删除:

deletekeywords = {pos}

/也被定义为关键字,但带有otherkeywords。不幸的是,没有deleteotherkeywords,但您可以重新设置列表,省去/

otherkeywords = {!,!=,~,$,*,\&,\%/\%,\%*\%,\%\%,<-,<<-,_}

R我可以在文件中找到上述内容的原始定义lstlang3.sty

完整示例:

\documentclass{article}
\usepackage{xcolor} 
\usepackage{listings}
\lstset{
  language=R,
  deletekeywords={pos},
  otherkeywords={!,!=,~,$,*,\&,\%/\%,\%*\%,\%\%,<-,<<-,_},
  keywordstyle=\color{blue},
  keywordstyle=[2]{\color{red}},
  commentstyle=\color{gray},
  backgroundcolor=\color{gray!25},
  morekeywords=[2]{arg,pos},
  moredelim=[is][\color{violet}]{''}{''}
}
\begin{document}
\begin{lstlisting}
# define one / two / three characteristics
install(''"tree/site"'', arg = 1, pos = "t")
\end{lstlisting}
\end{document}

在此处输入图片描述

相关内容