\lstinline:“#pragma”的颜色

\lstinline:“#pragma”的颜色

我正在尝试使用\lstinline但它没有按预期工作:

\documentclass{scrreprt}

\usepackage{color, listings}

\lstset
{
    language=C,
    keywordstyle=\color{blue},
}

\lstset{language={[x86masm]Assembler}}

\begin{document}

    \begin{lstlisting}[language = C]            
#pragma pack(1)
    \end{lstlisting}

    Das \lstinline!#pragma pack(1)! dient dazu...

\end{document}

#pragma中lstliting正确显示蓝色,但\lstinline保持黑色。问题是什么?

谢谢你!

答案1

由于最后的全局(文档级)设置为language{[x86masm]Assembler}所有listings包代码命令/环境都使用它,除非每个列表都指定了另一种语言。

用于使用此特定内联代码段的语言\lstinline[language=C]!#pragma pack(1)!的突出显示规则。C

或者,如果文档中的大部分代码都是 C 代码,请删除该行并根据需要\lstset{language={[x86masm]Assembler}}使用本地语言覆盖。language={[x86masm]Assembler}

相关内容