有没有办法定义单独的列表转义序列?

有没有办法定义单独的列表转义序列?

梅威瑟:

\documentclass{article}
\usepackage{listings}
\usepackage{xcolor}
\lstset{
  basicstyle=\small\sffamily,
  frame=tb,
  columns=fullflexible,
  escapeinside={`}{`},
  escapebegin={\color{darkgray}\textlangle},
  escapeend={\textrangle}
}
\begin{document}
\begin{lstlisting}
`what`
\end{lstlisting}
\end{document}

转义序列`应该具有在代码中设置占位符值样式的特定用例(例如)。

我希望能够为更一般的事物设置单独的转义序列。有什么办法吗?

答案1

不,我认为这是不可能的:每个列表只允许一对转义序列。

您可以为各种任务定义宏。

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

\lstset{
  basicstyle=\small\sffamily,
  frame=tb,
  columns=fullflexible,
  escapeinside={`}{`},
}
\NewDocumentCommand{\AAA}{m}{\textcolor{darkgray}{\textlangle #1\textrangle}}
\NewDocumentCommand{\BBB}{m}{\textcolor{red!80}{\textnormal{\textbf{#1}}}}


\begin{document}

\begin{lstlisting}
xyz `\AAA{what}` uvw
abc `\BBB{where}` def
\end{lstlisting}

\end{document}

在此处输入图片描述

相关内容