From f6c677e8d5591621594cf65c7e687edcdc28584a Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Wed, 21 Sep 2011 23:22:33 +0000
Subject: musuos (21sep11)

git-svn-id: svn://tug.org/texlive/trunk@24056 c570f23f-e606-0410-a88d-b1316a301751
---
 Master/texmf-dist/tex/latex/musuos/musuos.cls | 150 +++++++++++++++++++++++---
 1 file changed, 134 insertions(+), 16 deletions(-)

(limited to 'Master/texmf-dist/tex/latex/musuos/musuos.cls')

diff --git a/Master/texmf-dist/tex/latex/musuos/musuos.cls b/Master/texmf-dist/tex/latex/musuos/musuos.cls
index b494489de45..f2f0dc5c311 100644
--- a/Master/texmf-dist/tex/latex/musuos/musuos.cls
+++ b/Master/texmf-dist/tex/latex/musuos/musuos.cls
@@ -23,7 +23,7 @@
 %% 
 \NeedsTeXFormat{LaTeX2e}[2009/01/01]
 \ProvidesClass{musuos}
-  [2011/08/15 v1.0 a class for typesetting
+  [2011/09/21 v1.1 a class for typesetting
    papers. Uni Osnabrueck, music dept.]
 \RequirePackage{kvoptions}
 \SetupKeyvalOptions{
@@ -38,6 +38,13 @@
 \DeclareOption{poorlayout}{\@poorlayouttrue}
 \newif\if@manyfnotes
 \DeclareOption{manyfnotes}{\@manyfnotestrue}
+\newif\if@twocolfnotes
+\DeclareOption{twocolfnotes}{\@twocolfnotestrue}
+\newif\if@nofnoterule
+\DeclareOption{nofnoterule}{\@nofnoteruletrue}
+\newif\if@centerfloats
+\@centerfloatstrue
+\DeclareOption{dontcenterfloats}{\@centerfloatsfalse}
 \DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}}
 \PassOptionsToClass{fontsize=12pt,titlepage=true}{scrartcl}
 \ProcessKeyvalOptions*\relax
@@ -86,8 +93,10 @@
 \newcommand{\@uni}{}
 \newcommand{\@study}{}
 \newcommand{\@sterm}{}
-\newcommand{\@examiner}{}
-\newcommand{\@examinerlabel}{}
+\newcommand{\@examinerI}{}
+\newcommand{\@examinerIlabel}{}
+\newcommand{\@examinerII}{}
+\newcommand{\@examinerIIlabel}{}
 \newcommand*{\city}[1]{\renewcommand{\@city}{#1}}
 \newcommand*{\street}[1]{\renewcommand{\@street}{#1}}
 \newcommand*{\email}[1]{\renewcommand{\@email}{#1}}
@@ -98,21 +107,25 @@
 \newcommand*{\uni}[1]{\renewcommand{\@uni}{#1}}
 \newcommand*{\study}[1]{\renewcommand{\@study}{#1}}
 \newcommand*{\sterm}[1]{\renewcommand{\@sterm}{#1}}
+\newcommand*{\examinerI}[2]{%
+  \renewcommand{\@examinerIlabel}{#1}%
+  \renewcommand{\@examinerI}{#2}%
+}
+\newcommand*{\examinerII}[2]{%
+  \renewcommand{\@examinerIIlabel}{#1}%
+  \renewcommand{\@examinerII}{#2}%
+}
 \newcommand*{\examiner}[2]{%
-  \ifx{#1}\@empty\else
-    \renewcommand{\@examinerlabel}{#1\hspace{1em}}
-  \fi
-  \renewcommand{\@examiner}{#2}%
+  \renewcommand{\@examinerIlabel}{#1}%
+  \renewcommand{\@examinerI}{#2}%
+  \ClassWarning{musuos}{\string\examiner\space is obsolete use \string\examinerI}
 }
-\RequirePackage{pbox}
 \newif\if@letesep\@leteseptrue
-\AtBeginDocument{
-  \expandafter\ifstrempty\expandafter{\@lecturer}{\@letesepfalse}{}
-  \expandafter\ifstrempty\expandafter{\@term}{\@letesepfalse}{}
-}
 \renewcommand{\maketitle}{%
   \newgeometry{left=4cm,right=4cm,top=4cm,bottom=4cm}%
   \begin{titlepage}
+  \expandafter\ifstrempty\expandafter{\@lecturer}{\@letesepfalse}{}
+  \expandafter\ifstrempty\expandafter{\@term}{\@letesepfalse}{}
     \if@poorlayout\singlespacing\fi
     \centering
     \textbf{\@uni}\par
@@ -128,8 +141,10 @@
     \large\@subtitle\par
     \vspace{3cm}
     \normalfont\normalsize
-    \@examinerlabel\hspace{0.75em}%
-    \pbox[t]{\textwidth}{\@examiner}\par
+    \begin{tabular}{ll}
+      \@examinerIlabel & \@examinerI \\
+      \@examinerIIlabel & \@examinerII \\
+    \end{tabular}\par
     \vspace{\fill}
     \raggedright
     \textbf{\@author}\par
@@ -190,6 +205,8 @@
   \preto\tableofcontents{\singlespacing}
   \appto\tableofcontents{\setstretch{1.45}}
 \fi
+\KOMAoptions{listof=totoc}
+\PassOptionsToPackage{bibliography=totoc}{biblatex}
 \if@manyfnotes
   \deffootnote[1.75em]{1.75em}{1em}{
     \makebox[1.75em][l]{\thefootnotemark}
@@ -197,6 +214,15 @@
 \else
   \deffootnote[1.5em]{1.5em}{1em}{\makebox[1.5em][l]{\thefootnotemark}}
 \fi
+\if@twocolfnotes
+  \usepackage{dblfnote}
+  \setlength{\DFNcolumnsep}{2em}
+  \setkomafont{footnote}{\scriptsize}
+  \renewcommand{\footnoterule}{\noindent\rule{85mm}{.4pt}\vspace{1mm}}
+\fi
+\if@nofnoterule
+  \renewcommand{\footnoterule}{\rule{0mm}{.4pt}\vspace{1mm}}
+\fi
 \renewcommand{\labelitemi}{\rule[0.35ex]{0.5ex}{0.5ex}}
 \renewcommand{\labelitemii}{\rule[0.35ex]{0.5ex}{0.5ex}}
 \renewcommand{\labelitemiii}{\rule[0.35ex]{0.5ex}{0.5ex}}
@@ -234,11 +260,14 @@
 }}
 \let\quote\relax
 \let\endquote\relax
+\newkomafont{quotetext}{\footnotesize}
+\newlength{\blockmargin}
+\setlength{\blockmargin}{\leftmargini}
 \NewEnviron{quote}[1][]{%
   \par\vspace{0.5\baselineskip}%
   \if@poorlayout\setstretch{1.1}\fi%
-  \begin{addmargin}{2em}%
-    \footnotesize%
+  \begin{addmargin}{\blockmargin}%
+    \usekomafont{quotetext}%
     \if@bqqmarks\enquote{\BODY}\else\BODY\fi%
     #1%
   \end{addmargin}%
@@ -247,6 +276,95 @@
 }
 \newcommand{\elp}{[\kern0.5pt\dots\kern-1pt]\xspace}
 \newcommand{\sic}{[sic]\xspace}
+\NewEnviron{block}[1][]{%
+  \par\vspace{0.5\baselineskip}%
+  \if@poorlayout\setstretch{1.1}\fi%
+  \begin{addmargin}{\blockmargin}%
+    \usekomafont{quotetext}%
+    \BODY
+  \end{addmargin}%
+  \vspace{0.5\baselineskip}
+  \if@poorlayout\setstretch{1.45}\fi%
+}
+\RequirePackage{verse}
+\verselinenumbersleft
+\setlength{\vrightskip}{-1.5\leftmargin}
+\newkomafont{linenumbers}{\normalfont\tiny}
+\verselinenumfont{\usekomafont{linenumbers}}
+\newcommand{\mu@ln@modulo}{2}
+\newcommand*{\linenumbermodulo}[1]{%
+  \if@integer{#1}%
+    \renewcommand{\mu@ln@modulo}{#1}
+  \else
+    \ClassError{musuos}{%
+      \string\linenumbermodulo\space needs an integer
+    }{%
+      The command \string\linenumbermodulo\space
+      needs an Integer as value.\MessageBreak
+      If you sure that you gave an
+      integer you found a bug,\MessageBreak
+      please contact the class maintainer.
+    }%
+  \fi
+}
+\let\mu@orig@verse\verse
+\let\mu@orig@endverse\endverse
+\newkomafont{verse}{\itshape}
+\def\if@integer#1{%
+  \begingroup \lccode`\-=`\0 \lccode`+=`\0
+    \lccode`\1=`\0 \lccode`\2=`\0 \lccode`\3=`\0
+    \lccode`\4=`\0 \lccode`\5=`\0 \lccode`\6=`\0
+    \lccode`\7=`\0 \lccode`\8=`\0 \lccode`\9=`\0
+  \lowercase{\endgroup
+    \expandafter\ifx\expandafter\delimiter
+    \romannumeral0\string#1}\delimiter
+}
+\let\verse\relax
+\let\endverse\relax
+\NewEnviron{verse}[1][]{%
+  \usekomafont{verse}%
+  \mu@orig@verse%
+    \if@integer{#1}%
+      \poemlines{\mu@ln@modulo}%
+      \setverselinenums{#1}{#1}
+    \else%
+      \ClassWarning{musuos}{%
+        The optinal argument of verse seems to\MessageBreak
+        be no number. I'm going to ignore it.
+      }%
+    \fi%
+    \BODY%
+  \mu@orig@endverse%
+  \if@integer{#1}\poemlines{0}\fi%
+}
+\usepackage{float}
+\newfloat{music}{htpb}{lom}
+\floatname{music}{Notenbeispiel}
+\newcommand{\listofmusic}{%
+  \listof{music}{Notenbeispiele}
+}
+\if@centerfloats
+\let\mu@orig@music\music
+\let\mu@orig@endmusic\endmusic
+\renewenvironment{music}[1][htpb]{%
+  \mu@orig@music[#1]
+  \centering}%
+  {\mu@orig@endmusic}
+
+\let\mu@orig@table\table
+\let\mu@orig@endtable\endtable
+\renewenvironment{table}[1][htpb]{%
+  \mu@orig@table[#1]
+  \centering}%
+  {\mu@orig@endtable}
+
+\let\mu@orig@figure\figure
+\let\mu@orig@endfigure\endfigure
+\renewenvironment{figure}[1][htpb]{%
+  \mu@orig@figure[#1]
+  \centering}%
+  {\mu@orig@endfigure}
+\fi
 \endinput
 %%
 %% End of file `musuos.cls'.
-- 
cgit v1.2.3

