我有以下内容:
\newcommand*{\code}{\lstinline}
它(正确地)将代码显示为黑色,关键字显示为蓝色。但是,我想全部内联代码以不同的颜色(棕色/红色)显示。我该如何实现这一点?
请注意我不能重新定义\code
为如下所示:
\newcommand{\code}[1]{\lstinline{#1}}
这是因为这个问题,其中我有包含反斜杠的内联代码片段。我开始寻求使用的解决方案\color
,但考虑到上述限制,我无法弄清楚如何做到这一点。
答案1
您随时可以将特定listing
样式添加到可选参数中lstinline
:
\newcommand*{\code}{\lstinline[keywordstyle=\color{brown}, basicstyle=\color{brown}]}
在这种情况下,当您需要其他列表设置时,您必须定义另一个命令。
\documentclass{article}
\usepackage{listings}
\usepackage{xcolor}
\newcommand*{\code}{\lstinline[keywordstyle=\color{brown}, basicstyle=\color{brown}]}
\newcommand*{\codered}{\lstinline[keywordstyle=\color{red}, basicstyle=\color{green}]}
\lstset{
language=C,
keywordstyle=\color{blue}
}
\begin{document}
\lstinline{for (i=0; i<5; i++) if (i==0)}
\code{for (i=0; i<5; i++) if (i==0)}
\codered{for (i=0; i<5; i++) if (i==0)}
\end{document}