Gibt es eine Möglichkeit, eine separate Listing-Escape-Sequenz zu definieren?

Gibt es eine Möglichkeit, eine separate Listing-Escape-Sequenz zu definieren?

MWE:

\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}

Die Escape-Sequenz`soll den speziellen Anwendungsfall der Formatierung von Platzhalterwerten im Code haben (z. B. ).

Ich hätte gern eine separate Escape-Sequenz für allgemeinere Dinge. Gibt es eine Möglichkeit, das zu tun?

Antwort1

Nein, ich glaube nicht, dass das möglich ist: Pro Eintrag ist nur ein Paar Escape-Sequenzen zulässig.

Sie können stattdessen Makros für die verschiedenen Aufgaben definieren.

\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}

Bildbeschreibung hier eingeben

verwandte Informationen