marcelinho hat geschrieben:Warum kann ich die Parameter beim Definieren einer neuen Umgebung (newenvironment) nur für den Beginn der Umgebung benutzen
Weil Umgebungen nur eine andere Schreibweise für Befehle sind. \begin{X} wird grob gesagt ersetzt durch
\begingroup\X, deswegen kann der Befehl \X auf Argumente, die nach \begin{X} kommen, zugreifen. \end{X} entspricht grob
\endX\endgroup, der Befehl \endX ist dabei völlig unabhängig von \X.
marcelinho hat geschrieben:und kennt jemand vielleicht einen Weg, sie auch für das Ende zu benutzen?
Du musst sie zwischenspeichern:
\newenvironment{X}[1]{%
\newcommand*{\Xarg}{#1}%
}{%
% hier kann jetzt \Xarg benutzt werden
}
[quote="marcelinho"]Warum kann ich die Parameter beim Definieren einer neuen Umgebung (newenvironment) nur für den Beginn der Umgebung benutzen[/quote]Weil Umgebungen nur eine andere Schreibweise für Befehle sind. \begin{X} wird grob gesagt ersetzt durch [i]\begingroup\X[/i], deswegen kann der Befehl \X auf Argumente, die nach \begin{X} kommen, zugreifen. \end{X} entspricht grob [i]\endX\endgroup[/i], der Befehl \endX ist dabei völlig unabhängig von \X.
[quote="marcelinho"]und kennt jemand vielleicht einen Weg, sie auch für das Ende zu benutzen?[/quote]Du musst sie zwischenspeichern:
[code]\newenvironment{X}[1]{%
\newcommand*{\Xarg}{#1}%
}{%
% hier kann jetzt \Xarg benutzt werden
}[/code]