如何在列表中强调包含数字的标识符?

如何在列表中强调包含数字的标识符?

我有这个 LaTeX 代码,想使用列表进行排版:

\documentclass[paper=a4,fontsize=12pt,version=last]{scrlttr2}

我想用不同的格式强调“scrlttr2”。如何使用列表来实现?

答案1

您必须设置scrlttr2keyword。 中的数字keyword需要特殊处理。您需要otherkeyword

\listfiles
\documentclass{article}
\usepackage{color}
\usepackage{listings} 
\lstset{language=[LaTeX]tex,
       otherkeywords={scrlttr2},
       morekeywords=[2]{scrlttr2},
       keywordstyle=[2]{\color{red}\large}
       }

\begin{document}
\begin{lstlisting}
\documentclass[paper=a4,fontsize=12pt,version=last]{scrlttr2}
\end{lstlisting}
\end{document}

在此处输入图片描述

答案2

您也可以使用一个转义字符。我使用 ⠶,因为它在列表中未使用。

\documentclass{article}
    \usepackage{listings}
    \usepackage{xcolor}

\begin{document}
    \lstset{escapechar=\⠶}  % Any UTF-8 character can be used.
    \lstset{language=Python}
    \begin{lstlisting}
for i in range(5):
    ⠶\textcolor{red}{print}⠶(i)
print('Fin de la boucle...')
    \end{lstlisting}

    \lstset{escapechar={}} % If necessary, we can delete the special escaping character.
    \begin{lstlisting}
for i in range(5):
    ⠶\textcolor{red}{print}⠶(i)
print('Fin de la boucle...')
    \end{lstlisting}

\end{document}

答案3

更一般地说:如果你想强调一切在括号对之间(并考虑嵌套括号),您可以将它们定义为特殊类型的“注释”。您可以对其他希望以不同方式排版的字符“跨度”执行此操作,例如数学模式元素。

\documentclass{article}
\usepackage{color}
\usepackage{listings} 
\lstset{
  language=[LaTeX]tex,
  morecomment=[n][\color{blue!50!black}\bfseries]{\{}{\}},
  morecomment=[s][\color{green!50!black}\bfseries\slshape]{$}{$},
}

\begin{document}
\begin{lstlisting}
\documentclass[paper=a4,fontsize=12pt,version=last]{scrlttr2}
\begin{document}
Pythagoras' Theorem: $a^2 + b^2 = c^2$
\end{document}
\end{lstlisting}
\end{document}

结果:

突出显示的源代码

将这些跨度“解释”为某种程度上的“评论”是偶然的;重要的是它允许您设置格式。

相关内容