-->

突出一个lstlisting内码的一大块(Highlighting a Chunk of Code

2019-08-01 20:34发布

我有一个lstlisting环境一串代码。 我怎么能突出(彩色背景)只是一个特定的代码块的环境中?

Answer 1:

您可以使用\颜色框和您的房源内的转义字符:

添加到您的序言

  \usepackage{color}

  \definecolor{light-gray}{gray}{0.80}

那么你的文档中使用这样的:

  \begin{lstlisting}[escapechar=!]
  def mult(m: Matrix[Int], n: Matrix[Int]) {
    val p = !\colorbox{light-gray}{new MatrixInt}!(m.rows, n.cols)
  }
  \end{lstlisting}


Answer 2:

这是一个有点麻烦,但你可以打破代码为几个lstlisting环境。

\begin{lstlisting}
line
\end{lstlisting}
\vspace{-\baselineskip}
\begin{lstlisting}[backgroundcolor=\color{pink}]
very
interesting
\end{lstlisting}
\vspace{-\baselineskip}
\begin{lstlisting}
line
line
\end{lstlisting}


Answer 3:

房源包提供的backgroundColor = \颜色{}作为一个选项,但我敢肯定这使得整个背景色,而不是一大块。

你可以看一下把它用颜色或颜色框包parbox。



文章来源: Highlighting a Chunk of Code within a lstlisting