코드 블록 내부에 두 가지 특정 색상으로 키워드 설정

코드 블록 내부에 두 가지 특정 색상으로 키워드 설정

Codeblock 내부에서 키워드에 두 가지 색상을 설정할 수 있습니까?

내 Codeblock에 대한 현재 설정이 있습니다.

\lstset{language=[Sharp]C,
captionpos=b,
%numbers=left, %Nummerierung
%numberstyle=\tiny, % kleine Zeilennummern
frame=lines, % Oberhalb und unterhalb des Listings ist eine Linie
showspaces=false,
showtabs=false,
numbers=left,
basicstyle = small,
breaklines=true,
showstringspaces=false,
breakatwhitespace=true,
escapeinside={(*@}{@*)},
commentstyle=\color{greencomments},
morekeywords={HaarCascade, Image, partial, var, value, get, set},
keywordstyle=\color{bluekeywords},
stringstyle=\color{redstrings},
basicstyle=\ttfamily\small,
}

HaarCascade또는 와 같은 키워드를 정의할 수 Image있으며 해당 키워드는 내 코드에서 파란색으로 표시됩니다. 하지만 이 두 가지 특정 키워드를 청록색이라는 다른 색상으로 설정하려면 어떻게 해야 할까요?

답변1

keyword=[class]...구문 및 와 함께 다양한 키워드 클래스를 사용할 수 있습니다 keywordstyle=[class].... class클래스의 ID로 사용되는 자연수입니다.

귀하의 경우:

\documentclass{article}
\usepackage[usenames]{xcolor}

\definecolor{turquoise}{RGB}{64, 224, 208}
\colorlet{greencomments}{green!50!black}
\colorlet{bluekeywords}{blue}
\colorlet{redstrings}{red}

\usepackage{listings}
\lstset{language=[Sharp]C,
captionpos=b,
%numbers=left, %Nummerierung
%numberstyle=\tiny, % kleine Zeilennummern
frame=lines, % Oberhalb und unterhalb des Listings ist eine Linie
showspaces=false,
showtabs=false,
numbers=left,
basicstyle = small,
breaklines=true,
showstringspaces=false,
breakatwhitespace=true,
escapeinside={(*@}{@*)},
commentstyle=\color{greencomments},
morekeywords=[1]{partial, var, value, get, set},
morekeywords=[2]{HaarCascade, Image},
keywordstyle=\color{bluekeywords},
keywordstyle=[2]\color{turquoise},
stringstyle=\color{redstrings},
basicstyle=\ttfamily\small,
}
\begin{document}
\begin{lstlisting}
using System;
// From wikipedia
class Program
{
    static void Main()
    {
        Console.WriteLine("Hello, world!");
        Image img;
    }
}
HaarCascade, Image, partial, var, value, get, set
\end{lstlisting}

\end{document}

시사

관련 정보