목록 환경에서 소스 코드에 색상을 추가하는 방법

목록 환경에서 소스 코드에 색상을 추가하는 방법

목록 환경에서 내 슬라이드의 몇 가지 키워드에 색상을 지정하고 싶습니다.

__shared__ 다음의 인위적인 예에서는 단어를 주황색으로, WIDTH를 파란색으로 색칠하고 싶습니다 . 이것을 어떻게 수정합니까?

    \begin{frame}[fragile]
               \lstset{language=C++,
               basicstyle=\ttfamily\scriptsize,
               keywordstyle=\color{blue}\ttfamily,
               stringstyle=\color{red}\ttfamily,
               commentstyle=\color{green}\ttfamily,
               breakline=true
              }
      \begin{lstlisting}
    __global__ 
    void MatMulKernelFast(double* d_M,double* d_N,double* d_P,int WIDTH)
    {
     __shared__ double ds_M[TILE_WIDTH][TILE_WIDTH];
     __shared__ double ds_N[TILE_WIDTH][TILE_WIDTH];
     }
  \end{lstlisting} 

\end{frame}

이전 코드의 출력은 다음과 같습니다. 여기에 이미지 설명을 입력하세요

답변1

스타일이 다른 두 번째 키워드 그룹에 대해 을 사용할 수 있습니다(이 경우 주황색 키워드의 경우 keywords=[2]{...}) . 다음 keywordstyle=[2]을 사용하면 otherkeywords=파란색을 사용할 수 있습니다 WIDTH.

\documentclass{beamer}
\usepackage{listings}

\lstset{language=C++,
               basicstyle=\ttfamily\scriptsize,
               keywordstyle=\color{blue}\ttfamily,
               otherkeywords={WIDTH},
               keywords=[2]{__shared__},
               keywordstyle=[2]\color{orange}\ttfamily,
               stringstyle=\color{red}\ttfamily,
               commentstyle=\color{green}\ttfamily,
               breaklines=true,
}

\begin{document}

\begin{frame}[fragile]
\begin{lstlisting}
__global__ 
void MatMulKernelFast(double* d_M,double* d_N,double* d_P,int WIDTH)
{
  __shared__ double ds_M[TILE_WIDTH][TILE_WIDTH];
  __shared__ double ds_N[TILE_WIDTH][TILE_WIDTH];
}
\end{lstlisting} 

\end{frame}

\end{document}

여기에 이미지 설명을 입력하세요

관련 정보