\typeout{SYNOPSIS.STY }
\RequirePackage{ifthen}

% Zähler
\newcounter{musiccnt}
\newcommand{\musicname}{Notenbeispiel}
\newcommand{\themusic}{\arabic{musiccnt}}

%  Der Grundbefehl
\newcommand{\music}[2]
 {\refstepcounter{musiccnt} \par
   \addcontentsline{lom}{music}
     {\musicname~\themusiccnt: #1}
   \textbf{\musicname~\themusiccnt} #1\\*[#2]\par}

%  Format des Verzeichnis-Eintrags
\newcommand{\l@music}[2]{#1\dotfill#2\\}

%  Verzeichnis der Notenbeispiele
\newcommand{\lomname}{Die Musikbeispiele}
\newcommand{\tableofmusic}
 {\@restonecolfalse
  \if@twocolumn\@restonecoltrue\onecolumn\fi
  \chapter*{\lomname\@mkboth{\lomname}{\lomname}}
  {\parindent\z@\@starttoc{lom}}
  \if@restonecol\twocolumn\fi
 }

\newboolean{rightflag} \setboolean{rightflag}{false} 
\newboolean{first}     \setboolean{first}{true}
\newlength{\leftwidth}
\newlength{\rightwidth}

% 50% der Textbreite für Kommentare, 40% Gesangstext
\setlength{\leftwidth}{0.5\textwidth}
\setlength{\rightwidth}{0.4\textwidth}

% Zwischenraum oberhalb von links/rechts-Boxen
\newlength{\lrskip}
\setlength{\lrskip}{2ex}
\newcommand{\lrpar}{\vspace{\lrskip}}

% Mit \bracetext ... \endbracetext geklammerte
% Teile werden mit Klammer [ umschlossen.
\def\bracetext#1\endbracetext{$$\left[
  \matrix{\vbox{#1}\cr}\right.$$}

\newcommand{\leftcol}[1][c]
 {\ifthenelse{\boolean{first}}
    {\lrpar
     \setboolean{first}{false}}
    {\end{minipage}\par}
  \noindent\begin{minipage}[#1]{\leftwidth}
  \setboolean{rightflag}{false}
 }

\newcommand{\rightcol}[1][c]
 {\ifthenelse{\boolean{rightflag}}
    {\end{minipage}
     \par\noindent\hspace*{\leftwidth}\hfill}
    {\ifthenelse{\boolean{first}} 
      {\lrpar
       \setboolean{first}{false}}
      {\end{minipage}\hfill}
    }
  \begin{minipage}[#1]{\rightwidth}
  \setboolean{rightflag}{true}
 }

\newcommand{\normalcol}
 {\end{minipage}\lrpar
  \setboolean{first}{true}
  \setboolean{rightflag}{false}
 }

%  Erzeugt einen zweispaltigen Eintrag
%  z.B. fuer Vokabelhefte
\newcommand{\word}[2]
 {\lrpar
  \begin{minipage}[t]{\leftwidth} #1\end{minipage}
  \hfill 
  \begin{minipage}[t]{\rightwidth} #2\end{minipage}
  \par
 }

%  abgesetzte Umgebung mit zentrierter Ueberschrift
\newenvironment{vocabulary}[1]
 {\begin{trivlist}
  \setlength{\parindent}{0pt}
  \item[]
  \centerline{\itshape #1}}
 {\end{trivlist}}

%  Zur Darstellung von Titel, Aktueberschriften etc.
%  Zweiter Parameter ist die Einrueckungsstufe des
%  Textes, der ins Inhaltsverzeichnis uebernommen
%  wird. Der Text selbst ist der dritte Parameter.
\newcommand{\acttitle}[3]
 {\addcontentsline{toc}{#2}{#3}
  \lrpar\centerline{\bfseries #1}\nopagebreak}

%  Zur Einstreuung von Regieanweisung und
%  Kommentaren, die ueber die Seite reichen sollen
\newenvironment{scenecomment}
  {\lrpar\begin{center}\small\itshape}
  {\end{center}}

%  noch eine Version fuer einzeilige Kommentare
\newcommand{\commentline}[1]
  {\lrpar\centerline{\itshape #1}\nopagebreak}

%  Liniengeruest fuer Kassettenlabels
\newenvironment{drawlabel}[1]
 {\begin{minipage}{93mm}
  \setlength{\parindent}{0pt}
  \setlength{\leftwidth}{0.48\textwidth}
  \setlength{\rightwidth}{0.48\textwidth}
  \setlength{\unitlength}{1cm}
  \begin{picture}(0,0)
    \put(-0.5,2.8){\framebox(10.3,1.2){}}
    \put(-0.5,1){\framebox(10.3,1.8){\bfseries\Large#1}}
    \put(-0.5,-12){\framebox(10.3,13){}}
  \end{picture}
 }
 {\end{minipage}}

\newcommand{\sepline}{\lrpar\hrule\lrpar}

% Erzeugt Werkeintrag, Komponist fett, Rest normal
\newcommand{\werk}[2]
  {\begin{flushleft}
  \textbf{#1}\\\sepline #2
  \end{flushleft}}

%  numerierte Liste
\newenvironment{satz}
  {\small
   \begin{list}{\arabic{enumiv}. }
     {\usecounter{enumiv}
     \setlength{\labelwidth}{5mm}
     \setlength{\leftmargin}{7mm}
     \setlength{\labelsep}{2mm}
     \setlength{\itemsep}{0mm}}}
  {\end{list}}