我有这个 LaTeX 代码:
\lstset{
language=Java,
tabsize=8,
keepspaces,
extendedchars=true,
rulecolor=\color{black},
basicstyle=\footnotesize,
aboveskip=5pt,
upquote=true,
columns=fixed,
showstringspaces=false,
extendedchars=true,
breaklines=true,
frame=single,
showtabs=true,
showspaces=false,
showstringspaces=false,
}
\begin{frame}[fragile]
\begin{lstlisting}
public class Teddy {
public MethodName(String name, int var) {
this.name = name;
}
}
\end{lstlisting}
\end{frame}
Beamer 忽略了列表内的标签,因为我的框架是易碎的。但我需要它是易碎的,因为当没有易碎时,我得到了“失控参数”异常。
除了从外部文件导入 Lsting 之外,我还能做什么?
我不想为每个源代码列表定义一个新命令,就像此解决方案中所建议的那样:如何防止 beamer 删除 lstlisting 的制表符对齐?
答案1
请按如下方式使用:
\documentclass{beamer}
\usepackage{listings}
\lstset{
language=Java,
tabsize=8,
keepspaces,
extendedchars=true,
rulecolor=\color{black},
basicstyle=\footnotesize,
aboveskip=5pt,
upquote=true,
columns=fixed,
showstringspaces=false,
extendedchars=true,
breaklines=true,
frame=single,
showtabs=true,
showspaces=false,
showstringspaces=false,
}
\begin{document}
\defverbatim\lst{%
\begin{lstlisting}
public class Teddy {
public MethodName(String name, int var) {
this.name = name;
}
}
\end{lstlisting}
}
\begin{frame}
\lst
\end{frame}
\end{document}