- 我想要更改列表中的字体颜色。
- 我只想让列表中的几行改变颜色(例如 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}
输出: