Archiv verlassen und diese Seite im Standarddesign anzeigen : \newcommand funktioniert nicht
tobias.vdk
08-03-2005, 12:41
Hallo!
Ich habe mir mit
\newcommand{\bquellcode}{%
\begin{lstlisting}[lineskip=-0.1ex,basicstyle=\footnotesize,frame=single,backgr oundcolor=\color{lightgray}]}
einen neuen Befehl geschaffen, damit ich Quelltext vom restlichen text absetzen kann. Das funktioniert auch, wenn ich den Quelltext mit
\end{lstlisting}
abschließe.
Wenn ich aber mit
\newcommand{\equellcode}{\end{lstlisting}}
noch einen Befehl zum abschließen des Quellcodes erzeuge, dann funktioniert das nicht.
Bin für alle Ideen und Hinweise dankbar.
Tobias
Edit:
Wenn ich im Text
\equelltext
%\end{lstlisting}
schreibe, dann funktionierst, obwohl ja auskommentiert.
\newcommand{\code}[1]{\begin{listing} #1 \end{listing}}
und benutzen tust dus so:
\code{blablabla...}
MfG Bischi
PS: Nicht getestet....
mr. pelle
08-03-2005, 17:09
Wie wärs mit \newenvironment?
Wie wärs mit \newenvironment?
Noch besser!!!
MfG Bischi
tobias.vdk
09-03-2005, 08:53
Guten Morgen an alle!
Mein Versuch mit \lstnewenvironment schlägt leider immer fehl.. weder
\lstnewenvironment{quellcode}{\lstset{}}[][lineskip=-0.1ex,basicstyle=\footnotesize,frame=single,backgr oundcolor=\color{lightgray}]{}
2 Fehler: Missing \begin{document}, Undefined control sequence ... esize, frame=single,...
noch
\lstnewenvironment{quellcode}{\lstset{lineskip=-0.1ex,basicstyle=\footnotesize,frame=single,backgr oundcolor=\color{lightgray}}{}
27 Fehler
führen zum Erfolg.
Wie kann ihm nun die Parameter übergeben? Der erste Versuch scheint ja schon fast zu stimmen. Auch die Doku zu listings (http://www.math.ntnu.no/~berland/latex/docs/listings.pdf) bringt mich nicht weiter. Auch googeln nach \lstnewenvironment brachte nichts.
Tobias
In deinem Versuch mit \lstnewenvironment fehlt der letzte Paramter
\lstnewenvironment{quellcode}{\lstset{}}
[]
[lineskip=-0.1ex,basicstyle=\footnotesize,frame=single,backgr oundcolor=\color{lightgray}]
{}%starting code
{} %ending code fehlte bisher
Der Rest dürfte ein Folgefehler sein.
Besser helfen könnte man, wenn du ein Minimalbeispiel posten würdest und nicht einzelne Makrofragmente.
Blubb
tobias.vdk
09-03-2005, 09:43
Also, in der Doku steht:
\lstnewenvironment
{name}[number][opt. default arg]
{starting code}
{ending code}
und dann als Beispiel:
\lstnewenvironment{pascal}
{\lstset{language=pascal}}
{}
\begin{pascal}
for i:=maxint to 0 do
begin
{ do nothing }
end;
\end{pascal}
Daran angelehnt würde ich gerne mit
\begin{quellcode}
....
\end{quellcode}
folgendes machen:
\begin{lstlisting}[lineskip=-0.1ex,basicstyle=\footnotesize,frame=single,backgr oundcolor=\color{lightgray}]
....
\end{lstlisting}
meine Versuche dies umzusetzen könnt ihr ja oben sehen
Tobias
tobias.vdk
09-03-2005, 12:15
Die Lösung:
\lstnewenvironment{code}
{\lstset{lineskip=-0.1ex,basicstyle=\footnotesize,frame=single,backgr oundcolor=\color{lightgray}}}%starting code
{} %ending code
und dann im Text mit
\begin{code}
...
\end{code}
:) Juchu! :)
Tobias
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.