不同列表语言脚本的独立标题和编号

不同列表语言脚本的独立标题和编号

我正在尝试编写一个使用 AMPL、Python 的文档,并且还希望能够显示一些输出。

问题是第一个 python 代码是脚本 1,第一个 AMPL 是脚本 2,第二个 python 是脚本 3,第一个 python 代码的输出是脚本 4,依此类推。

我希望不同的语言是独立的,AMPL 脚本、Python 脚本和输出有不同的计数器和标题。

这可能吗?提前谢谢

答案1

基于这个答案上市:不同的上市环境有不同的柜台我认为这可能就是你想要的:

\documentclass{extarticle}

\usepackage{listings}

\newcounter{pythoncode}
\lstnewenvironment{pythoncode}[2]{
\renewcommand\lstlistingname{Python Code}
\setcounter{lstlisting}{\value{pythoncode}}
\lstset
{
language={},
basicstyle=\ttfamily,
frame = tb,
caption={[#1]{#1}},
label={#2},        
}
} {\addtocounter{pythoncode}{1}}

\newcounter{amplcode}
\lstnewenvironment{amplcode}[2]{
    \renewcommand\lstlistingname{AMPL Code}
    \setcounter{lstlisting}{\value{amplcode}}
    \lstset
    {
    language={},
    basicstyle=\ttfamily,
    frame = tb,
    caption={[#1]{#1}},
    label={#2},        
    }
} {\addtocounter{amplcode}{1}}

\begin{document}
\section{Examples}
\begin{pythoncode}{Hello world in Python 2}{alg-label}
print "Hello world"
\end{pythoncode}

\begin{pythoncode}{Hello world in Python 3}{another-alg-label}
print("Hello world")
\end{pythoncode}

\begin{amplcode}{\texttt{blend.mod}}{prg-label}
set INPUT;    # inputs
set OUTPUT;   # outputs
...
\end{amplcode}
\end{document}

在此处输入图片描述

相关内容