我有这个简单的 MCVE:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{color}
\usepackage{minted}
\definecolor{bill}{RGB}{229,225,225}
\begin{document}
\begin{minted}[xleftmargin=20pt,framesep=2mm, bgcolor=bill, linenos]{html}
<select id="ddlViewBy">
<option value="1">test1</option>
<option value="2" selected="selected">test2</option>
<option value="3">test3</option>
</select>
\end{minted}
\end{document}
输出如下:
如您所见,这bgcolor
也会影响行号。我不想这样。那么如何用不同的颜色为与行号对应的列着色呢?
答案1
如果您只想将行号背景设为白色,只需减少xleftmargin
。 如果您希望它是其他颜色,则需要使用tcolorbox
或mdframed
。 以下是 tcolorbox 版本的可能解决方案:
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{tcolorbox}
\tcbuselibrary{minted,skins}
\definecolor{bill}{RGB}{229,225,225}
\newtcblisting{mycode}{
listing engine=minted,
minted style=trac,
minted language=html,
minted options={fontsize=\small,linenos,numbersep=3mm},
colback=bill,
colframe=bill,
listing only,
left=5mm,
enhanced,
overlay={\begin{tcbclipinterior}\fill[red](frame.south west)rectangle([xshift=5mm]frame.north west);\end{tcbclipinterior}}
}
\begin{document}
\begin{mycode}
<select id="ddlViewBy">
<option value="1">test1</option>
<option value="2" selected="selected">test2</option>
<option value="3">test3</option>
</select>
\end{mycode}
\end{document}
tcolorbox 代码直接取自手册第 15.5 节,只做了少量修改。在那里,您将发现许多有关更多自定义可能性的见解。