Update mit ifcase(2013-10-13)
Ich bin durchaus nicht dafür, Anwendern eine bestimmte Vorgehensweise vorzuschreiben. Natürlich sind die Markup-Vorgehensweisen sinnvoll, aber sie sind nicht die einzigen und sollten auch nicht die einzigen werden. Ein holpriges, von einem Achtklässler zurechtgefummeltes, zeilen- oder wortweise formatiertes Schriftstück hat die gleiche Berechtigung, wie ein aus den Höhen der Latex-Päpste durchgestyltes Meisterwerk.
Bergsteigen lernt man ja auch nicht vom Gipfel her.
Hier nun ein Vorschlag, wie man die unterschiedlichen Schriftauszeichnungen in eine Umgebung mit Parametern zusammenfassen könnte. Ist ein Kompromiß (oder eine Erweiterung?) aus Markup und im Text verwendeten Schriftumgebungen.
\documentclass[a4paper]{article}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{blindtext}
\usepackage{longtable}
\def\fntcommands[#1,#2,#3,#4]{
\def\fntsize{#1}
\def\fntbf{#2}
\def\fntshape{#3}
\def\fntx{#4}%platzhalter
\def\fntempty{}
\def\fntempty{}%Befehl der auf alle fnt-Textteile wirkt
%\def\fntempty{\normalfont}%Befehl der auf alle fnt-Textteile wirkt
}
\def\paragraphsize{\small}
\newenvironment{fnt}[2]{
\ifnum #1=0 \fntcommands[\normalsize,\normalsize,\normalsize,\fntempty]{} \fi
\ifnum #1=1 \fntcommands[\small,\mdseries,\textit,\fntempty]{}\fi
\ifnum #1=2 \fntcommands[\Large,\mdseries,\textit,\fntempty]{} \fi
\ifnum #1=3 \fntcommands[\large,\mdseries,\textit,\fntempty]{} \fi
\ifnum #1=4 \fntcommands[\normalsize,\mdseries,\textit,\fntempty]{} \fi
\ifnum #1=5 \fntcommands[\paragraphsize,\mdseries,\textit,\fntempty]{} \fi
\ifcase #1
\or \fntcommands[\normalsize,\bfseries,\textsl,\fntempty]{}%Zitat
\or \fntcommands[\small,\mdseries,\textit,\fntempty]{}%Kommentar zum Zitat
\or \fntcommands[\tiny,\mdseries,\texttt,\fntempty]{}%
\or \fntcommands[\normalsize,\normalfont,\normalsize,\fntempty]{} %
\or \fntcommands[\normalsize,\normalfont,\normalsize,\fntempty]{} %
\or \fntcommands[\normalsize,\mdseries,\normalfont,\fntempty]{} %
\or \fntcommands[\normalsize,\normalfont,\normalsize,\fntempty]{}%
\or \fntcommands[\small,\textit,\textsl,\fntempty]{}%longtable
\fi%
\par \fntsize{\fntbf{\fntshape{\fntx{#2}\relax}}}}{\par \fntsize{\fntbf{\fntshape{\fntx{#2} \relax}}}\par \normalsize}{\par \normalsize }
\begin{document}
\begin{fnt}{0}{Hier fehlte ein Text}
\begin{fnt}{1}{\glqq Never laugh at live dragons, Bilbo you fool!' he said to himself, and it became a favourite saying of his later, and passed into a proverb." \grqq }
\end{fnt}
\begin{fnt}{1}{\blindtext}
\begin{fnt}{2}{(And he was right, as you can see.)}
\end{fnt}
\begin{fnt}{2}{Ausgezeichnet bleibt ausgezeichnet}
\begin{fnt}{8}{\begin{longtable}{p{4cm}p{4cm}}
Testtext&Testtext\\
Testtext&Testtext\\
Testtext&Testtext\\
\end{longtable}}
\end{fnt}
\begin{fnt}{3}{Ausgezeichnet bleibt ausgezeichnet}
\end{fnt}
\begin{fnt}{4}{Ausgezeichnet bleibt ausgezeichnet}
\end{fnt}
\begin{fnt}{5}{Ausgezeichnet bleibt ausgezeichnet}
\end{fnt}
\section{Ohne Umgebung}
\blindtext
Berge von Text
\end{document}