PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : begin und end in newcommand?



Darion
22-06-2008, 13:08
Hallo,
ich versuche, \begin und \end Befehle etwas abzukürzen:



\documentclass{article}
\usepackage{amsmath}

\newcommand{\BGlg}{\begin{align}\begin{split}}
\newcommand{\EGlg}{\end{split}\end{align}}

\begin{document}
Zeile1
\BGlg
1
\EGlg
Zeile2

Zeile3
\end{document}


Wenn man an den entsprechenden Stellen einfach die Kommandos von oben einsetzt, klappt alles. Wenn man es aber so compiliert, wie es da steht, kommt ein "Paragraph ended before \align was complete". Kann mir jemand helfen?

PS: \newenvironment scheint ebenfalls nicht zu funktionieren.

Stefan_K
22-06-2008, 13:27
Hallo Darion,

Du findest eine Antwort dazu in der amsmath faq (http://www.ams.org/tex/amsmath-faq.html) Why can't I use \begin{align} ... \end{align} in the definition of another environment? bzw. in amsmath technical notes (ftp://ftp.ams.org/pub/tex/amslatex/math/technote.pdf). In letzterem Dokument werden zwei Workarounds vorgeschlagen.

Viele Grüße,

Stefan

Darion
22-06-2008, 13:38
Danke erst Mal! Von den beiden in technote.pdf genannten Workarounds


\def\bal#1\eal{\begin{align}#1\end{align}}
Define \newcommand{\env}[2]{\begin{#1}#2\end{#1}} and then use
\env{align}{...}habe ich


\def\BGlg#1\EGlg{\begin{align}\begin{split}#1\end{ split}\end{align}}
genommen und es funktioniert!