为了只显示几行源代码,lstlisting 有一个 linerange 键,它只打印那些范围。
\documentclass[slidestop]{beamer}
\usepackage{listings}
\begin{document}
\begin{frame}[fragile]
\begin{lstlisting}[language=C,linerange={1-2,5-6}]
#include<stdio.h>
int void main(int argc, char **argv)
{
printf("hello world\n");
return 0;
}
\end{lstlisting}
\end{frame}
\end{document}
上面的清单显示了以下代码行,行间没有任何空格。:
#include<stdio.h>
int void main(int argc, char **argv)
return 0;
}
我真正想要的是
#include<stdio.h>
int void main(int argc, char **argv)
return 0;
}
我希望不显示第 3-4 行,但我需要该范围的空行。因此,前两行和后两行显示的行之间应该有 2 个空行。
约束:
源代码不应该改变,它实际上是在一个单独的文件中,不能改变
我拥有的实际源代码非常大,因此对源的不同部分使用多个 lstlisting 很麻烦。
[更新]:简而言之: “源代码中在给定范围内排除的行应打印为空行(即使它们在源代码中为非空)”