Переключите язык в листинге кода, используя lstlisting - PullRequest
0 голосов
/ 07 июня 2018

Я использую lstlisting для вставки кода Java в мой текст.Но в том же листинге я хочу изменить цвет шрифта на несколько строк, продолжая в том же формате листинга.Моя цель состоит в том, чтобы выделять красным цветом только те строки, которые вызывают сбой компиляции и / или времени выполнения.

Я понимаю, что в этих специальных строках не будет никакого выделения синтаксиса (потому что цвет будет красным во всех этихлинии).

Я пытался выбрать escapeinside и \ textcolor {red}, чтобы изменить цвет на красный, но текстовый формат меняется на обычный текстовый формат, а также избавляется от новых строк, присутствующих в коде.

Как мне этого добиться?

1 Ответ

0 голосов
/ 07 июня 2018

ОК, я понял.Я использую параметр moredelim.Вот так -

    \begin{lstlisting}[language=java, basicstyle={\small\ttfamily}, moredelim={[is][\color{red}]{STARTRC}{ENDRC}}]
class Test{
  private String name; 
STARTRC     default String id;//will not compile.ENDRC
}
\end{lstlisting}

Текст в STARTRC и ENDRC теперь отображается красным цветом, а все остальное так же, как и в другой части списка.

...