von KOMA » Sa 23. Jul 2011, 11:32
Die ersten beiden Fragen hast Du Dir ja eigentlich schon selbst beantwortet. Ich verstehe nicht ganz, was da an Fragen bleibt. Was nun fehlt ist die quote-Geschichte. Da könnte ich Dir beispielsweise folgendes bieten:
\documentclass{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}% german ist veraltet!
\usepackage[xcolor={}]{mdframed}
\usepackage{lmodern,alltt}
\newcounter{quotemark}
\makeatletter
\newcommand*{\quotemark}{%
\@tempcnta=\z@
\@whilenum \@tempcnta <\value{quotemark}\do{%
\ifcase \@tempcnta
\color{blue}\or \color{brown}\or \color{cyan}\or \color{green}\or
\color{lime}\or \color{magenta}\or \color{olive}\else \color{red}\fi
\rule[-\dp\strutbox]{1pt}{\baselineskip}\kern-1pt\nobreakspace
\advance\@tempcnta by \@ne
}%
}
\newcommand*{\emailinit}{\small
\setcounter{quotemark}{0}%
\renewenvironment*{quote}[1]{%
\stepcounter{quotemark}%
##1 schrieb:%
\ifnum\value{quotemark}=\@ne
\everypar \expandafter{\the\everypar \unpenalty \quotemark}%
\fi
}{\vskip-\baselineskip}%
\ignorespaces
}
\begin{document}
\begin{mdframed}
\begin{alltt}\emailinit
Lieber Oskar,
\begin{quote}{Oskar}
2 + 2 = 4
\begin{quote}{Peter}
4 + 4 = 8
\end{quote}
\end{quote}
das stimmt doch gar
nicht. Richtig ist 5.
Viele Grüße, Max
\color{gray}--
Maren und Max Mustermann
Musterstr. 8, 12345 Musterstadt, Deutschland
Tel.: +49 333 88888, Fax: +49 333 88999
Internet: www.example.com E-Mail: mustermann@example.com
\end{alltt}
\end{mdframed}
\end{document}
Die quote-Farben kannst Du Dir natürlich beliebig einstellen und auch zusätzliche Ebenen hinzufügen. Wichtig ist, dass \end{quote} in einer eigenen Zeile steht, weil ich die dadurch entstandene Leerzeile im \end-Teil per negativen \vskip extra wieder beseitigt habe. Ebenso muss \begin{quote} in einer eigenen Zeile stehen, weil ich nach der Einleitungszeile keinen Zeilenvorschub eingebaut habe, um den Zeilenvorschub, der durch \begin{quote} entsteht, zu beseitigen.
Die \everypar-Anweisung habe ich übrigens aus der alltt-Definition geklaut und lediglich um mein \quotemark ergänzt.
Natürlich könntest Du Dir auch ein \signature definieren, dass sowohl das Trennzeichen setzt als auch die Farbe umschaltet.
Die ersten beiden Fragen hast Du Dir ja eigentlich schon selbst beantwortet. Ich verstehe nicht ganz, was da an Fragen bleibt. Was nun fehlt ist die quote-Geschichte. Da könnte ich Dir beispielsweise folgendes bieten: [code]\documentclass{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}% german ist veraltet!
\usepackage[xcolor={}]{mdframed}
\usepackage{lmodern,alltt}
\newcounter{quotemark}
\makeatletter
\newcommand*{\quotemark}{%
\@tempcnta=\z@
\@whilenum \@tempcnta <\value{quotemark}\do{%
\ifcase \@tempcnta
\color{blue}\or \color{brown}\or \color{cyan}\or \color{green}\or
\color{lime}\or \color{magenta}\or \color{olive}\else \color{red}\fi
\rule[-\dp\strutbox]{1pt}{\baselineskip}\kern-1pt\nobreakspace
\advance\@tempcnta by \@ne
}%
}
\newcommand*{\emailinit}{\small
\setcounter{quotemark}{0}%
\renewenvironment*{quote}[1]{%
\stepcounter{quotemark}%
##1 schrieb:%
\ifnum\value{quotemark}=\@ne
\everypar \expandafter{\the\everypar \unpenalty \quotemark}%
\fi
}{\vskip-\baselineskip}%
\ignorespaces
}
\begin{document}
\begin{mdframed}
\begin{alltt}\emailinit
Lieber Oskar,
\begin{quote}{Oskar}
2 + 2 = 4
\begin{quote}{Peter}
4 + 4 = 8
\end{quote}
\end{quote}
das stimmt doch gar
nicht. Richtig ist 5.
Viele Grüße, Max
\color{gray}--
Maren und Max Mustermann
Musterstr. 8, 12345 Musterstadt, Deutschland
Tel.: +49 333 88888, Fax: +49 333 88999
Internet: www.example.com E-Mail: mustermann@example.com
\end{alltt}
\end{mdframed}
\end{document}[/code]
Die quote-Farben kannst Du Dir natürlich beliebig einstellen und auch zusätzliche Ebenen hinzufügen. Wichtig ist, dass \end{quote} in einer eigenen Zeile steht, weil ich die dadurch entstandene Leerzeile im \end-Teil per negativen \vskip extra wieder beseitigt habe. Ebenso muss \begin{quote} in einer eigenen Zeile stehen, weil ich nach der Einleitungszeile keinen Zeilenvorschub eingebaut habe, um den Zeilenvorschub, der durch \begin{quote} entsteht, zu beseitigen.
Die \everypar-Anweisung habe ich übrigens aus der alltt-Definition geklaut und lediglich um mein \quotemark ergänzt.
Natürlich könntest Du Dir auch ein \signature definieren, dass sowohl das Trennzeichen setzt als auch die Farbe umschaltet.