更改列表数字的字体颜色

更改列表数字的字体颜色
  • 我想要更改列表中的字体颜色
  • 我只想让列表中的几行改变颜色(例如 1、2、9、10、12、13)。也就是说,我想将颜色应用于个别线路的列表。
  • 我想要电话号码与要着色的彩色线相匹配(例如 1、2、9、10、12、13)。
  • 我想要用HTML(十六进制)格式。
  • 我将列表内容包含在单独文件

我怎样才能做到这一点?

这是我的片段(出于演示目的,所包含的列表现在是本地的):

\documentclass{article}

\usepackage{listings}

\usepackage{xcolor}

\definecolor{custom_grey}{HTML}{818181}

\lstdefinestyle{base}{
  moredelim=**[is][\color{custom_grey}]{@}{@},
}

\renewcommand\thelstnumber{%
  \ifnum\value{lstnumber}=10
  \else
    \ifnum\value{lstnumber}>10
      \the\numexpr\value{lstnumber} + 5\relax%
    \else
      \arabic{lstnumber}%
    \fi
  \fi
}

\begin{document}

\begin{lstlisting}[numbers = left, style=base]
@#First comment@
@...@
'YY-MM-DD HH:MM:SS.sss'
|Code line|
--------------------------------------------------------
========================================================
|Code :: line|
========================================================
@#Additional comment@
@...@
'YY-MM-DD HH:MM:SS.sss'
@#End comment@
@...@
\end{lstlisting}

\end{document}

答案1

希望下面的内容能帮到你:

\documentclass{article}

\usepackage{listings}

\usepackage{xcolor}

\definecolor{custom_grey}{HTML}{818181}

\lstdefinestyle{base}{
  moredelim=**[is][\color{custom_grey}]{@}{@},
}

\renewcommand\thelstnumber{%
  \ifnum\value{lstnumber}=1
{     \color{custom_grey}\arabic{lstnumber}}%
\else
  \ifnum\value{lstnumber}=9
{     \color{custom_grey}\arabic{lstnumber}}%
\else
  \ifnum\value{lstnumber}=12
{     \color{custom_grey}\arabic{lstnumber}}%
\else
\arabic{lstnumber}%
  \fi\fi\fi
}

\begin{document}

\begin{lstlisting}[numbers = left,
style=base]
@#First comment@
@...@
'YY-MM-DD HH:MM:SS.sss'
|Code line|
--------------------------------------------------------
========================================================
|Code :: line|
========================================================
@#Additional comment@
@...@
'YY-MM-DD HH:MM:SS.sss'
@#End comment@
@...@
\end{lstlisting}

\end{document}

输出:

在此处输入图片描述

相关内容