Seite 1 von 1

\newenvironment

Verfasst: Mi 20. Okt 2010, 13:41
von IrenaSekuta
Hallo,

übe mich gerade an dem \newenvironment-Befehl und komme nicht so richtig weiter. Folgendes Minimalbeispiel endet mit mit einer Fehlermeldung und ich weiß nicht warum:
\documentclass{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{ltablex}

\newenvironment{A}{\begin{tabularx}{\textwidth}{c X}}{\end{tabularx}}

\begin{document}

\begin{A}
1 & 2\\
3 & 4\\
\end{A}

\end{document}
Ausgeschrieben funktioniert es wie gewohnt:
\documentclass{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{ltablex}

%\newenvironment{A}{\begin{tabularx}{\textwidth}{l X}}{\end{tabularx}}

\begin{document}

%\begin{A}
%1 & 2\\
%3 & 4\\
%\end{A}

\begin{tabularx}{\textwidth}{l X}
1 & 2\\
3 & 4\\
\end{tabularx}

\end{document}
Gruß,

Irena

Verfasst: Mi 20. Okt 2010, 14:12
von Xenara
Soweit ich mich erinnere, mag tabularx es nicht, wenn es in anderen Umgebungen verwendet werden soll.
Afaik gibt es dazu einen eigenen Absatz in der TabularX-Doku.

Verfasst: Mi 20. Okt 2010, 15:05
von IrenaSekuta
Habe ein bissel genauer in der Doku gelesen und eventuell ist das was Du anspricht dort wie folgt zu finden:
The body of the tabularx environment is in fact the argument to a com-
mand, and so certain constructions which are not allowed in command ar-
guments (like \verb) may not be used
Naja, Shit happens... :-)

Gruß,

Irena

Verfasst: Mi 20. Okt 2010, 16:42
von iTob
Mit Hilfe des Pakets environ gehts:
\documentclass{scrreprt} 
\usepackage[T1]{fontenc} 
\usepackage[latin1]{inputenc} 
\usepackage[ngerman]{babel} 
\usepackage{tabularx} 
\usepackage{environ}

\NewEnviron{A}{%
	\begin{tabularx}{\textwidth}{c|X|c}
		\BODY
	\end{tabularx}
} 

\begin{document} 

\begin{A} 
1 & 2 & a\\ 
3 & 4 & b\\ 
\hline
\end{A} 

\end{document}
Hatte dein Tabellenpaket nicht und hab einfach tabularx geladen, das sollte aber im Prinzip das gleiche sein.
Zur Erläuterung des Befehls NewEnviron siehe die Paketdoku.

Viele Grüße
Tobi

Danke !

Verfasst: Do 21. Okt 2010, 11:09
von IrenaSekuta
Danke für den tollen Tip. Mit dem Paket environ klappt es.

Gruß,

Irena

Verfasst: Do 21. Okt 2010, 14:27
von iTob
Gerne, bin übrigens vor kurzem an genau der gleichen Stelle hängen geblieben und hab überlegt, ob’s mit environ geht, hatte dann aber keine Lust, es zu probieren. Jetzt weiß ich, dass es geht...

Grüße,
Tobi