我有这个 LaTeX 代码,想使用列表进行排版:
\documentclass[paper=a4,fontsize=12pt,version=last]{scrlttr2}
我想用不同的格式强调“scrlttr2”。如何使用列表来实现?
答案1
您必须设置scrlttr2
为keyword
。 中的数字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}
结果:
将这些跨度“解释”为某种程度上的“评论”是偶然的;重要的是它允许您设置格式。