# Listings: new environments with arguments

I have this basic question. How can use arguments with listings? I tried this and it doesn't work:

\lstnewenvironment{cor}[2][]
{\linerange{#1-#2},\lstset{language=[Sharp]C,,basicstyle=\scriptsize,
showspaces=false,showtabs=false,,breaklines=true,showstringspaces=false,
breakatwhitespace=true  }}
{}


and then I used it in the following way:

\begin{cor}{2}{3}
\end{cor}


\documentclass{minimal}
\usepackage{listings}
\lstnewenvironment{X}[2]{%
\lstset{language=[Sharp]C,linerange=#1-#2}}{}
\begin{document}
\begin{X}{1}{1}
class A{static void Main(){}}
\end{X}
\end{document}

• one more question i'm having serious problem understanding well the syntax of latex, i now a lot of programming languages but latex still it see for me a little cryptic, do you know what is the key to fully understand it? – mjsr Jan 6 '11 at 8:08
• @voodoomsr, you should create a new question in a new topic and not in this topic. This is the rule to avoid cluttering this site. :-) – xport Jan 6 '11 at 8:13
• @xport, ok im gonna creating right away – mjsr Jan 6 '11 at 8:31
• @xport: It's great that you asked voodoomsr to ask a new question. It worked! However, please do try and post minimal examples and short screenshots. Moreover, usually one should wait a day before accepting an answer, so you should wait with such comments. (Upvoting can of couse be done immediately.) – Hendrik Vogt Jan 6 '11 at 10:20
• @Hendrik, the answer has been normalized. :-) – xport Jan 6 '11 at 11:18