lstlisting 环境忽略标签

lstlisting 环境忽略标签

我有这个 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}

在此处输入图片描述

相关内容