Экранирование подчеркивания

Экранирование подчеркивания

Я хочу раскрасить часть текста в lstlisting. Вот пример:

\begin{lstlisting}[basicstyle=\linespread{0.8}\footnotesize\ttfamily, language=tcl, escapeinside={<@}{@>}]
  set_param drc.disableLUTOverUtilError 1
} {

      <@\textcolor{red}{              

      red\_text \\

      set\_property PACKAGE\_PIN V20 [get\_ports {red[0]}]

      }@>

\end{lstlisting}

\textcolorне позволяет использовать подчеркивание без использования \перед ним. Есть десятки подчеркиваний, которые я хочу использовать внутри, \textcolorи я не хочу добавлять \для каждого подчеркивания. Есть ли способ избавиться от этого?

решение1

Вы, вероятно, скорее захотитеразделительчем перейти в LaTeX:

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

\lstdefinestyle{mystyle}{
  basicstyle = \linespread{0.8}\footnotesize\ttfamily,
  language   = tcl,
  moredelim  = [is][\color{red}]{<@}{@>}
}

\begin{document}

\begin{lstlisting}[style=mystyle]
set_param drc.disableLUTOverUtilError 1
}{
  <@red_text \\
  set_property PACKAGE_PIN V20 [get_ports {red[0]}] @>
}
\end{lstlisting}

\end{document}

введите описание изображения здесь

Связанный контент