在 Latex 中编写具有预定行号的代码时,如何导致换行?

在 Latex 中编写具有预定行号的代码时,如何导致换行?

在此处输入图片描述

我目前的 PDF 看起来像这样,但我希望第 30 行和第 31 行也变成绿色。我想知道是否有人知道我可以这样做的方法?

这是我的乳胶

    \begin{enumerate}
    \item [\textbf{Example 1:}]
    \begin{lstlisting}[firstnumber=1]
    int digitOfPi(int n){
        /*
         * Code not shown
    \end{lstlisting}
    ~~$\vdots$\\
    \begin{lstlisting}[firstnumber=30]
         */
         }
    \end{lstlisting}

答案1

以下示例为这种情况提供了一种解决方法。它添加了以 开头的行注释,以将*结束注释标记格式化为注释。结束花括号保持不变,因为它确实不是属于评论。

\documentclass{article}
\usepackage{listings}
\usepackage{xcolor}
\colorlet{darkgreen}{green!70!black}
\lstset{
  basicstyle=\ttfamily,
  commentstyle=\color{darkgreen},
  identifierstyle=\color{blue},
  numbers=left,
}

\begin{document}
  \begin{enumerate}
    \item [\textbf{Example 1:}] \mbox{}\\
\begin{lstlisting}[language=C, firstnumber=1]
int digitOfPi(int n) {
    /*
     * Code not shown
\end{lstlisting}
\vspace{-3ex}
\begin{lstlisting}[mathescape, numbers=none]
     $\vdots$
\end{lstlisting}
\vspace{-2ex}
\begin{lstlisting}[language=C, firstnumber=30, morecomment={[l]{*}}]
     */
}
\end{lstlisting}
  \end{enumerate}
\end{document}

结果

相关内容