我用它minted
来显示文档中的代码片段。其中一些代码跳过的行号. 由此产生的问题是跳过行号的列表与没有跳过行号的列表具有不同的行号格式。
文档minted
和这StackExchange 问题展示了一种修改theFancyVerbLine
命令以更改格式的方法。但是,这不会影响带有行跳过的列表。
我尝试将这两种方法结合起来,但会导致行号重复。我遗漏了minted
文档中的哪些内容?
提前致谢。
最小工作示例:
% arara: xelatex: {shell: yes }
\documentclass{scrreprt}
\usepackage{minted}
\renewcommand{\theFancyVerbLine}{\textcolor[rgb]{0.5,0.5,1.0}{\footnotesize\arabic{FancyVerbLine}}}
\begin{document}
\begin{listing}[H]
\begin{minted}[linenos]{py}
import bar from foo
print("Hello %s!" % "World")
\end{minted}
\end{listing}
\begin{listing}[H]
\renewcommand\theFancyVerbLine{%
\ifnum\value{FancyVerbLine}=2
\setcounter{FancyVerbLine}{125}\ldots
\else
\arabic{FancyVerbLine}%
\fi
}
\begin{minted}[linenos]{py}
import deep_thought as dt
print("The answer is %s!" % dt.getAnswerTo("everything"))
\end{minted}
\end{listing}
\end{document}
答案1
\arabic{FancyVerbLine}
所需的修改是在第二个列表中用上面的定义替换,即\textcolor[rgb]{0.5,0.5,1.0}{\footnotesize\arabic{FancyVerbLine}}
。
此外,您还可以为点着色,并使它们垂直。
梅威瑟:
\documentclass{scrreprt}
\usepackage{minted}
\renewcommand{\theFancyVerbLine}{\textcolor[rgb]{0.5,0.5,1.0}{\footnotesize\arabic{FancyVerbLine}}}
\begin{document}
\begin{listing}[H]
\begin{minted}[linenos]{py}
import bar from foo
print("Hello %s!" % "World")
\end{minted}
\end{listing}
\begin{listing}[H]
\renewcommand\theFancyVerbLine{%
\ifnum\value{FancyVerbLine}=2
\setcounter{FancyVerbLine}{125}\color[rgb]{0.5,0.5,1.0}\vdots
\else
\textcolor[rgb]{0.5,0.5,1.0}{\footnotesize\arabic{FancyVerbLine}}%
\fi
}
\begin{minted}[linenos]{py}
import bar from foo
print("Goodbye %s!" % "World")
\end{minted}
\end{listing}
\end{document}
结果: