在LaTeX的摘录环境中,listings
包提供的lstlisting
环境无疑是最优秀的,它支持现在的多种计算机语言,提供了语法高亮功能,还有各种摘录设置。但是最近有群员询问有关lstlisting环境无法嵌套的问题:比如下面的问题,
如果使用两个lstlisting环境嵌套,会使得第一个
\begin{lstlisting}
匹配到第一个\end{lstlisting}
而使得第二个报错。比较不错的解决方法就是把外层的摘录环境换成verbatim
,不过由于个人比较喜欢listings
包的风格,所以这里采用tcolorbox
包的listings
库提供的tcblisting
环境。tcblisting
环境其实就是调用的listings
包,它一方面接受listings
包的设置,另一方面还接受tcolorbox
包的设置,简直一举两得。默认情况下,摘录的同时还执行摘录的代码,所以这里添加了listing only
选项,仅仅作摘录使用。1 | \documentclass{ctexart} |