summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/musuos/musuos.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/musuos/musuos.dtx')
-rw-r--r--Master/texmf-dist/source/latex/musuos/musuos.dtx599
1 files changed, 513 insertions, 86 deletions
diff --git a/Master/texmf-dist/source/latex/musuos/musuos.dtx b/Master/texmf-dist/source/latex/musuos/musuos.dtx
index 9cef98fafad..5505799bf27 100644
--- a/Master/texmf-dist/source/latex/musuos/musuos.dtx
+++ b/Master/texmf-dist/source/latex/musuos/musuos.dtx
@@ -17,52 +17,105 @@
%
% \iffalse
%<*driver>
-\ProvidesFile{musuos.dtx}[2011/08/15 v1.0 Uni Osnabrueck]
+\ProvidesFile{musuos.dtx}[2011/09/21 v1.1 Uni Osnabrueck]
%</driver>
%<class>\NeedsTeXFormat{LaTeX2e}[2009/01/01]
%<class>\ProvidesClass{musuos}
-%<class> [2011/08/15 v1.0 a class for typesetting
+%<class> [2011/09/21 v1.1 a class for typesetting
%<class> papers. Uni Osnabrueck, music dept.]
%
%<*driver>
-\documentclass{ltxdoc}
+\documentclass[a4paper]{ltxdoc}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{xspace}
-\usepackage{lmodern}
+\usepackage{lmodern}
+\usepackage{ragged2e}
\usepackage[hang]{footmisc}
\usepackage{dblfnote}
\setlength{\footnotemargin}{1em}
\usepackage{scrbase}
\usepackage[hyphens]{url}
-\usepackage{hyperref}
+\usepackage{xcolor}
+\definecolor{darkred}{HTML}{770011}
+\definecolor{darkblue}{HTML}{003b8b}
+\PassOptionsToPackage{%
+ linkcolor=darkblue,
+ urlcolor=darkred,
+}{hyperref}
+\usepackage{hypdoc}
+
+
+\renewcommand{\usage}[1]{\textbf{\hyperpage{#1}}}
+\renewcommand{\main}[1]{\textit{#1}}
\newcommand{\musuos}{\texttt{musuos.cls}\xspace}
\newcommand*{\pkg}[1]{\texttt{#1}}
-\newcommand*{\Opt}[1]{\texttt{#1}\marginpar{\raggedleft\texttt{#1} \small(Opt.)}}
-\MakeShortVerb{\|}
+\newcommand*{\env}[1]{\texttt{#1}}
+\newcommand*{\fnt}[1]{\texttt{#1}}
+\newcommand*{\opt}[1]{\texttt{#1}}
+\newcommand{\DO}[1]{%
+ \marginpar{\raggedleft\texttt{#1} \footnotesize(Opt.)}%
+ \index{#1=\texttt{#1} (Option)|usage}%
+ \index{Optionen:>\texttt{#1}|usage}%
+}
+\newcommand{\DF}[1]{%
+ \marginpar{\raggedleft\texttt{#1} \footnotesize(Schriftel.)}%
+ \index{#1=\texttt{#1} (Schriftelement)|usage}%
+ \index{Schriftelemente:>\texttt{#1}|usage}%
+}
\newcommand{\DM}[1]{\DescribeMacro{#1}}
+\newcommand{\DE}[1]{\DescribeEnv{#1}}
+
+\newcommand{\KOMAfont}{%
+ KOMA-Schriftelement\footnote{Siehe \KOMAScript-Anleitung,
+ Absch. 3.6 \glqq Textauszeichnung\grqq}\xspace%
+}
+\newcommand{\KOMAfonts}{%
+ KOMA-Schriftelementen\footnote{Siehe \KOMAScript-Anleitung,
+ Absch. 3.6 \glqq Textauszeichnung\grqq }\xspace%
+}
+
+\MakeShortVerb{\|}
+
+\makeatletter
+\def\SpecialMainEnvIndex#1{\@bsphack\special@index{%
+ #1\actualchar
+ {\string\ttfamily\space#1}
+ (Umgebung)%
+ \encapchar main}%
+ \special@index{Umgebungen:\levelchar#1\actualchar{%
+ \string\ttfamily\space#1}\encapchar
+ main}\@esphack}
+\def\SpecialUsageIndex#1{\@bsphack
+ {\let\special@index\index\SpecialIndex@{#1}{\encapchar usage}}%
+ \@esphack}
+\def\SpecialEnvIndex#1{\@bsphack
+ \index{#1\actualchar{\protect\ttfamily#1}
+ (Umgebung)\encapchar usage}%
+ \index{Umgebungen:\levelchar#1\actualchar{\protect\ttfamily#1}\encapchar
+ usage}\@esphack}
+\makeatother
+
\setcounter{tocdepth}{1}
\EnableCrossrefs
\CodelineIndex
\RecordChanges
-\def\generalname{G}
+\def\generalname{Global}
\IndexPrologue{
\section{Codeindex}
- Kursive Zahlen beziehen sich auf die Seite,
- auf der der Eintrag beschrieben wird, unterstrichene
+ Fettgedruckte Zahlen beziehen sich auf die Seite,
+ auf der der Eintrag beschrieben wird, kursive
Nummern beziehen sich auf die Codezeile mit der Definition
- und nicht ausgezeichnete Ziffern beziehen sich auf Codzeilen,
+ und nicht ausgezeichnete Zahlen beziehen sich auf Codezeilen,
in denen der Eintrag verwendet wird.
}
\GlossaryPrologue{
- \section{Versionsgeschichte}
- Mit einem G gekennzeichnete Einträge beziehen sich jeweils
- auf die ganze Klasse.
+ \section{Versionsgeschichte}\label{version}%
}
\begin{document}
@@ -71,6 +124,7 @@
%</driver>
% \fi
%
+% \CheckSum{603}
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
@@ -87,7 +141,6 @@
% Grave accent \` Left brace \{ Vertical bar \|
% Right brace \} Tilde \~}
%
-% \changes{v1.0}{2011/08/15}{Erste Version}
%
% \GetFileInfo{musuos.dtx}
%
@@ -134,17 +187,22 @@
% \DoNotIndex{\next}
% \DoNotIndex{\@afterheading,\@afterindentfalse,\@ifpackageloaded,\ ,
% \appto,\AtBeginDocument,\AtEndPreamble,\baselineskip,\BODY,
-% \centering,\contentspage,\CurrentOption,\dots,\endquote,\fill,\filright
-% \footnotesize,\Huge,\ifstrempty,\ifstrequal,\itshape,\Large,\large,\LARGE
+% \centering,\contentspage,\CurrentOption,\dots,\endquote,\fill,\filright,
+% \tiny,\footnotesize,\Huge,\ifstrempty,\ifstrequal,\itshape,\Large,\large,\LARGE,
% \makebox,\MessageBreak,\NewEnviron,\newif,\normalfont,\normalsize,
% \pbox,\preto,\quote,\RequirePackage,\rule,\setstretch,
% \SetupKeyvalOptions,\sffamily,\singlespacing,\textbf,\textit,\textwidth,
% \thecontentslabel,\thecontentspage,\titlecontents,\xspace}
+% \DoNotIndex{\0,\1,\2,\3,\4,\5,\6,\7,\8,\9,0,1,2,3,4,5,6,7,8,9}
+% \DoNotIndex{\music,\endmusic,\table,\endtable,\figure,\endfigure,
+% \verse,\endverse,\KOMAoptions,\lccode,\listof,\lowercase,
+% \renewenvironment,\romannumeral,\string}
%
% \title{\musuos}
% \author{Tobias Weh\\
% \normalsize\href{mailto:mail@tobias-weh.de}{\texttt{mail@tobias-weh.de}}\\
-% \normalsize\url{www.tobias-weh.de}}
+% \normalsize\url{http://www.tobias-weh.de}\\
+% \normalsize\url{http://www.ctan.org/pkg/musuos}}
% \date{\filedate{} --- \fileversion}
%
% \maketitle
@@ -159,11 +217,31 @@
% aus die relevanten Abschnitte der
% \href{ftp://ftp.dante.de/pub/tex/macros/latex/contrib/koma-script/scrguide.pdf}
% {\KOMAScript{}-Dokumentation} zu lesen.
+%
+% \bigskip\noindent%
+% \hspace*{\fill}\textbf{Neu in dieser Version}\hfill\mbox{}
+%
+% \medskip\noindent{\scriptsize Für eine vollständige Liste der Änderungen siehe die
+% Versionsgeschichte in Abschnitt~\ref{version}.}\par
+% \begin{itemize}
+% \item \cmd{\examiner} wurde durch \cmd{\examinerI} ersetzt,
+% siehe Abschnitt~\ref{titel}.
+% \item Die Umgebung \env{block} für abgesetzte Texte, als
+% Ergänzung zur Umgebung \env{quote}, siehe Abschnitt~\ref{block}.
+% \item Die Umgebung \env{verse} wurde erweitert und unterstützt
+% jetzt die Nummerierung von Zeilen, siehe Abschnitt~\ref{verse}.
+% \item Die Gleitumgebung \env{music} für Notenbeispiele,
+% siehe Abschnitt~\ref{gleit}.
+% \item Neue Optionen für Fußnoten, siehe Abschnitt~\ref{fussnoten}.
+% \end{itemize}
% \end{abstract}
%
+% \clearpage
% \tableofcontents
%
+% \clearpage
% \section{Einleitung}
+% \changes{v1.0}{2011/08/15}{Erste Version}
% \subsection{Installation}
% Um die Klassendatei (|.cls|) zu erzeugen navigiert man im Terminal in das
% Verzeichnis, in dem die Datei |musuos.ist| liegt und ruft dann den Befehl
@@ -184,7 +262,7 @@
%
% |makeindex -s gglo.ist -o musuos.gls musuos.glo|
%
-% |makeindex -s gind.ist -o musuos.ind musuos.idx|
+% |makeindex -s musuos-doc.ist -o musuos.ind musuos.idx|
%
% |pdflatex musuos.dtx|
%
@@ -193,6 +271,7 @@
% \smallskip\noindent%
% auf. Die mitgelieferte Datei |gind.ist| ist eine Anpassung für
% deutschsprachige Dokumentationen.
+% \changes{v1.1}{2011/09/19}{(Make)Index-Stil umbenannt in \texttt{musuos-doc.ist}}
%
% \subsection{Verwendung}
% Die Klasse wird ganz normal mit |\documentclass{musuos}| aufgerufen und ist
@@ -200,21 +279,33 @@
% \KOMAScript{}-Klasse \pkg{scrartcl} beruht, stehen auch alle Möglichkeiten
% aus \KOMAScript{} zu Verfügung. Daher werden in dieser Dokumentation im
% Wesentlichen nur die zusätzlichen Funktionen von \musuos erläutert.
+%
+% Um die Schriftart Linux Libertine verwenden zu können, muss entweder
+% die T1-kodierung geladen werden (|\usepackage[T1]{fontenc}|) oder
+% mit \pkg{xe(la)tex} gearbeitet werden.
%
% \subsubsection*{Klassenoptionen}
+% \changes{v1.1}{2011/09/21}{Neue Option \opt{nofnoterule}}
+% \changes{v1.1}{2011/09/21}{Neue Option \opt{twocolfnotes}}
% Es werden alle Klassenoptionen unterstützt, die auch den \KOMAScript{}-Klassen
% bekannt sind. Die Klasse stellt aber noch weitere Optionen zur Verfügung:
% \begin{itemize}
-% \item \Opt{blockquote} für Einstellung der Anführungszeichen bei abgesetzten
+% \item \DO{blockquote}\opt{blockquote} für Einstellung der Anführungszeichen bei abgesetzten
% Zitaten, siehe Abschnitt~\ref{zit}.
-% \item \Opt{manyfnotes} bei Vorkommen dreistelliger Fußnotenziffern,
-% siehe Abschnitt~\ref{fnote}.
-% \item \Opt{poorlayout} zum Umschalten des Layouts, siehe Abschnitt~\ref{layout}.
-% \item \Opt{qmarks} zum Umschalten der Anführungszeichen, siehe Abschnitt~\ref{zit}.
+% \item \DO{dontcenterfloats}\opt{dontcenterfloats} schaltet die Zentrirung von Gleitumgebungen ab,
+% siehe Abschnitt~\ref{gleit}.
+% \item \DO{manyfnotes}\opt{manyfnotes} bei Vorkommen dreistelliger Fußnotenziffern,
+% siehe Abschnitt~\ref{fussnoten}.
+% \item \DO{nofnoterule}\opt{nofnoterule} unterdrückt die Fußnotentrennlinie,
+% siehe Abschnitt~\ref{fussnoten}.
+% \item \DO{poorlayout}\opt{poorlayout} zum Umschalten des Layouts, siehe Abschnitt~\ref{layout}.
+% \item \DO{qmarks}\opt{qmarks} zum Umschalten der Anführungszeichen, siehe Abschnitt~\ref{zit}.
+% \item \DO{twocolfnotes}\opt{twocolfnotes} setzt die Fußnoten zweispaltig, siehe
+% Abschnitt~\ref{fussnoten}.
% \end{itemize}
-%
+%
% \subsubsection*{Beispiel}
-% Ein (etwas mehr als) minimales Dokument zur Verwendung der Klasse.
+% Ein (etwas mehr als) minimales Dokument zur Verwendung der Klasse mit \pkg{pdflatex}.
%
% \smallskip
% |\documentclass[ngerman]{musuos}|
@@ -242,15 +333,14 @@
% \begin{itemize}
% \item Rand links 3\,cm, rechts 5\,cm (Platz für Korrekturen), oben 3,25\,cm
% und unten 5,5\,cm.
-% \item Schriftart ist die freie Linux Libertine%
-% \footnote{Siehe \url{http://www.linuxlibertine.org/}
-%(16.8.11)}
+% \item Schriftart ist die freie Linux Libertine\footnote{Siehe
+% \url{http://www.linuxlibertine.org/} (16.8.11)}
% in 12\,pt für den Fließtext und die dazugehörige endstrichlose (|\textsf|,
% |\sffamily|) Biolinum für Überschriften u.\,ä.
% \item Einfacher Zeilenabstand.
% \end{itemize}
%
-% Mit der Option \Opt{poorlayout} kann auf das deutlich schlechtere, unitypische
+% Mit der Option \DO{poorlayout}\opt{poorlayout} kann auf das deutlich schlechtere, unitypische
% Layout umgeschaltet werden
% \begin{itemize}
% \item Rand links 2\,cm und rechts 3\,cm, oben und unten je 3\,cm.
@@ -265,7 +355,7 @@
% Blocksatz und Silbentrennung sind in \LaTeX{} bei Verwendung von \pkg{babel}
% grundsätzlich aktiviert. Absatzanfänge werden durch einen Einzug markiert.
%
-% \section{Titelseite}
+% \section{Titelseite}\label{titel}
% Mit |\maketitle| wird wie gewohnt die Titelseite ausgegeben, nachdem verschiedene
% Angaben (|\author|, |\title|, etc.) dafür gemacht wurden. Die möglichen Angaben
% werden durch \musuos wie folgt ergänzt:
@@ -280,9 +370,10 @@
% Hausarbeit geschrieben wird.
% \item Für Angaben zum Studiengang die Makros \DM{\study}\DM{\sterm}
% |\study|\marg{Studiengang} und |\sterm|\marg{Fachsemester}
-% \item \DM{\examiner}|\examiner|\marg{Bezeichnung}\marg{Prüfer} für
-% die Angabe eines Prüfkomitees (Mehrere Prüfer einfach durch |\\|
-% trennen).
+% \item Für die Angabe eines Prüfkomitees \DM{\examinerI}|\examinerI|\marg{Bezeichnung}\marg{(Erst)Prüfer}
+% und falls nötig auch \DM{\examinerII}|\examinerII|\marg{Bezeichnung}\marg{Zweitprüfer}.
+% Ein eventuell gewünschter Doppelpunkt nach den Bezeichnungen kann
+% im Argument \meta{Bezeichnung} mit angeben werden, bspw. |\examinerI{Prüfer:}{Dr. Müller}|
% \end{itemize}
% %
% Zusammen mit den von \KOMAScript{} bereitgestellten Variablen Autor
@@ -309,30 +400,102 @@
% Ein Anhang kann bei Bedarf mit \DM{\appendix}|\appendix| eingeleitet werden.
% Die höchste Gliederungsebene wird dann alphabetisch nummeriert.
%
-% \section{Fußnoten}\label{fnote}%
+% \section{Fußnoten}\label{fussnoten}%
% Fußnoten werden mit \DM{\footnote}|\footnote|\marg{Fußnotentext}
%gesetzt. Die Standardformatierungen funktioniert gut für Fußnoten bis
% 99. Bei Fußnoten bis 999 empfiehlt sich die Verwendung der Option
-% \Opt{manyfnotes}
+% \DO{manyfnotes}\opt{manyfnotes}, noch mehr Fußnoten sollten in einer
+% Hausarbeit nicht vorkommen \dots
+%
+% Mit der Option \DO{nofnoterule}\opt{nofnoterule} kann die Trennlinie
+% zwischen Text und Fußnoten ausgeblendet werden.
+%
+% Die Fußnoten\DO{twocolfnotes} zweispaltig zu setzten spart zum einen Platz, wenn viele
+% kurze Fußnoten vorkommen, es ehört aber auch die Lesbarkeit, wenn die
+% einzelnen Einträge sehr lang sind, denn durch die Zweispaltigkeit werden
+% die natürlich Zeilen kürzer. Um die Fußnoten in zwei Spalten zu setzten
+% kann man die Option \opt{twocolfnotes} verwenden. Die Fußnoten werden
+% dann zweispaltig und in einer kleineren Schrift gesetzt.
+% In der Regel sollte man dann auch die Trennlinie mit \opt{nofnoterule}
+% ausblenden.
%
% \section{Aufzählungen}
% Es stehen drei Aufzählungsumgebungen zur Verfügung, in denen einzelne Einträge
-% jeweils mit |\item| eingeleitet werden. Die Umgebungen \DescribeEnv{enumerate}
-% |enumerate| für nummerierte und \DescribeEnv{itemize}|itemize| für nummerierte
-% Listen sowie \DescribeEnv{description} für erklärende oder beschreibende Listen,
+% jeweils mit |\item| eingeleitet werden. Die Umgebungen \DE{enumerate}
+% |enumerate| für nummerierte und \DE{itemize}|itemize| für nummerierte
+% Listen sowie \DE{description} für erklärende oder beschreibende Listen,
% dabei wird das zu erklärende Wort als optionales Argument von |\item|\oarg{Wort}
% angegeben.
%
-% \section{Abbildungen und Tabellen}
-% Abbildungen und Tabellen sollten mit den Gleitumgebungen \DescribeEnv{figure}|figure|
-% und \DescribeEnv{table}|table| gesetzt werden. Eine Beschriftung kann man mit
-% \DM{\caption}|\caption|\marg{Beschreibung} hinzufügen. Für alles weitere sei auf die
-% gängige Einsteigerliteratur verwiesen.
+% \section{Abbildungen, Tabellen und Notenbeispiele}\label{gleit}%
+% Abbildungen und Tabellen sollten mit den Gleitumgebungen \DE{figure}|figure|
+% und \DE{table}|table| gesetzt werden. Für Notenbeispiele wird die Umgebung
+% \DE{music}\env{music} definiert. Eine Beschriftung kann man mit
+% \DM{\caption}|\caption|\marg{Beschreibung} hinzufügen. Alle diese Umgebungen
+% zentrieren ihren Inhalt. Ist das nicht gewünscht kann das Verhalten mit der Klassenoption
+% \DO{dontcenterfloats}\opt{dontcenterfloats} abgestellt werden.
+%
+% Eine Liste der Tabellen, Abbildungen oder Notenbeispiele wird mit
+% \DM{\listoffigures}\cmd{\listoffigures}, \DM{\listoftables}\cmd{\listoftables}
+% bzw. \DM{\listofmusic}\cmd{\listofmusic} ausgegben. Die Überschriften der
+% Listen sind nicht nummeriert und werden ins Inhaltverzeichnis aufgenommen.
+% Um die Listen nicht im Inhaltesverzeichnis anzuzeigen, fügt man in die
+% Präambel diese Zeile ein;
+%
+% \smallskip
+% |\KOMAoptions{listof=nottotoc}|
+%
+% \smallskip\noindent%
+% und um die Verzeichnisse zu nummerieren diese:
+%
+% \smallskip
+% |\KOMAoptions{listof=totocnumbered}|
+%
+% Für alles weitere sei auf die gängige Einsteigerliteratur verwiesen.
+%
+% \bigskip\noindent%
+% Wer mehrseitige Notenbeispiele (die als PDF vorliegen)\DM{\includepdf}
+% einfügen will, kann dazu das Paket \pkg{pdfpages} verwenden
+% Das folgende Beispiel zeigt, wie einige Seiten aus der Partitur
+% |mozart-sinf41.pdf| eingebunden werden. Die erste Seite wird dabei
+% extra angeben, um eine Beschriftung einzufügen (für die Beschriftung
+% mit |\captionof| muss das Paket \pkg{caption} geladen werden)
+% \begin{verbatim}
+% \documentclass{musuos}
+% \usepackage{pdfpages}
+% \usepackage{caption}
+%
+% \begin{document}
+% Ein Bisschen Text dann folgt der Partiturauszug
+% auf einer neuen Seite.
+% \includepdf[%
+% pages={1},% Seite 1
+% pagecommand={%
+% \begin{minipage}{\textwidth}
+% \captionof{music}{Mozarts schönste Sinfonie?}
+% \end{minipage}
+% }, % Beschriftung -- mit ein Bisschen bastelei
+% frame,% Seiten einrahmen
+% scale=0.7,% Seiten skalieren
+% ]{mozart-sinf41}% Dateiname ohne Endung
+% \includepdf[%
+% pages={2-4,10,18-22},
+% pagecommand={},
+% frame,scale=0.7
+% ]{mozart-sinf41}
+% Das war's \dots
+% \end{document}
+% \end{verbatim}
+% Wer im |pagecommand| den Befehl |\thispagestyle{empty}| verwendet,
+% kann die Kopf-und Fußzeilen unterdrücken. Wird die Option
+% |pagecommand| garnicht angeben, ist die voreinstellung
+% |pagekommand={\thispagestyle{empty}}|. Mehr zu der Verwendung
+% von \pkg{pdfpages} in der Paketdokumentation.
%
% \section{Zitate}\label{zit}%
% Für Zitate im Fließtext kann der Befehl \DM{\enquote}|\enquote|\marg{Text} verwendet werden,
% der sein Argument automatisch mit Anführungszeichen umschließt. Für längere, abgesetzte
-% Zitate kann die Umgebung \DescribeEnv{quote}|quote| verwendet werden,
+% Zitate kann die Umgebung \DE{quote}|quote| verwendet werden,
%
% \smallskip
% |\begin{quote}|\oarg{Quelle}
@@ -342,16 +505,24 @@
% |\end{quote}|
%
% \smallskip\noindent%
-% wobei der Inhalt von \meta{Quelle} ohne Leerzeichen%
-% \footnote{Wer ein Leerzeichen wünscht kann dieses einfach zu beginn
-%des Arguments mit eingeben \texttt{[\textvisiblespace Quelle]}}
-% nach dem schließenden Anführungszeichen ausgeben wird.
-% Mit der Option \Opt{blockqoute}|=marks|/|nomarks| kann festgelegt werden, ob die abgesetzten
+% wobei der Inhalt von \meta{Quelle} ohne Leerzeichen\footnote{Wer
+% ein Leerzeichen wünscht kann dieses einfach zu beginn
+% des Arguments mit eingeben \texttt{[\textvisiblespace Quelle]}}
+% nach dem schließenden Anführungszeichen ausgeben wird. Unter
+% Umständen muss das Argument durch geschweifte Klammern maskiert werden,
+% siehe Abschnitt~\ref{anmerkungen} "`Zitate in optionalen Argumenten"'.
+%
+% Die Schriftart der abgesetzten Zitate ist über das \KOMAfont \DF{quotetext}\fnt{quotetext}
+% steuerbar. Der Text wird an beiden Seiten um die Länge \DM{\blockmargin}
+% \cmd{\blockmargin} eingerückt.
+%
+% Mit der Option \DO{blockqoute}\opt{blockqoute}|=marks|/|nomarks| kann
+% festgelegt werden, ob die abgesetzten
% Zitate mit oder ohne Anführungszeichen gesetzt werden. Beide Zitatbefehle können verschachtelt
% werden und wählen dann automatisch einfache Anführungszeichen für die innere Zitatebene.
%
% Um die Anführungszeichen zu setzten, wird das Paket \pkg{csquotes} verwendet.
-% Die Art der Anführungszeichen kann mit der Klassenoption \Opt{qmarks}|=|\meta{Sprache}
+% Die Art der Anführungszeichen kann mit der Klassenoption \DO{qmarks}\opt{qmarks}|=|\meta{Sprache}
% angegeben, dabei kann \meta{Sprache} die Werte |german|, |gfrench|,
% |french| und |english| annehmen; Voreinstellung ist |german|. Den vollen Umfang von
% \pkg{csquotes} kann man einfach nutzen, indem man das Paket mit entsprechenden Optionen
@@ -360,11 +531,40 @@
% Auslassungszeichen und \emph{wirklich-so-Stellen} können mit den Befehlen \DM{\elp}|\elp|
% (wird zu [\kern1.5pt\dots]) und \DM{\sic}|\sic| (wird zu [sic]) gesetzt werden.
%
-% Zur Erstellung eines \textbf{Literaturverzeichnis} und für Quellenangaben im Text wird die Verwendung
-% von Bib\TeX{} zusammen mit dem Paket \pkg{biblatex} und dem passenden Stil \pkg{musuos}
-% empfohlen.
+% \section{Literaturverzeichnis}
+% Zur Erstellung eines Literaturverzeichnis und für Quellenangaben im Text wird die Verwendung
+% von Bib\TeX{} (oder besser biber) zusammen mit dem Paket \pkg{biblatex} und dem passenden Stil \pkg{musuos}
+% empfohlen. Bei der Verwendung von \pkg{biblatex} wird das Literaturverzeichnis automatisch
+% in das Inhaltsverzeichnis aufgenommen. ist das nicht gewünscht, kann es mit der
+% \pkg{biblatex}-Paketoption |bibliography=nottotoc| verhindert werden. Mit der
+% Option |bibliography=| |totocnumbered| kann erreicht werden dass das Verzeichnis nummeriert wird.
+%
+% Der passende Stil ist auf CTAN unter \url{http://www.ctan.org/pkg/biblatex-musuos} zu finden.
+%
+% \section{Abgesetzter Text}\label{block}%
+% Analog zur \env{quote}-Umgebung gibt es die Umgebung
+% \DE{block}\env{block} für abgesetzte Textblöcke,
+% die sich genau so verhält wie \env{quote}, nur dass sie grundsätzlich ohne
+% Anführungszeichen ausgegeben wird und dass sie daher auch kein optionales
+% Argument für Quellenangaben besitzt.
+%
+% \section{Verse}\label{verse}%
+% \DE{verse}
+% Um Textzeilen zu setzten, steht die Umgebung \env{verse}
+% zur Verfügung. Innerhab der Umgebung müssen alle Zeilen
+% explizit mit |\\| beendet werden. Ist der Text länger,
+% als die gedruckte Zeile lang ist, wird er umbrochen und
+% eingerückt. Wird der Umgebung als Optionales Argument angeben, werden die
+% Zeilen mit dieser beginnend nummeriert.
+% \DM{\linenumbermodulo}
+% Mit dem Befehl \cmd{\linenumbermodulo}\marg{Schritt} kann die
+% Schrittweite der Zeilennummern verändert werden.
+%
+% Mit den \KOMAfonts \DF{verse}\DF{linenumbers}
+% \fnt{verse} und \fnt{linenumbers} kann die Schrift der Verse bzw. die der
+% Zeilennummern geändert werden.
%
-% \section{Anmerkungen}
+% \section{Anmerkungen}\label{anmerkungen}%
% \begin{description}
% \item [Abkürzungen] sollten immer mit einem schmalen Leerzeichen |\,| zwischen den
% Teilen gesetzt werden, z.\,B. |z.\,B.| statt |z.B.| (z.B.) oder |z. B.| (z. B.)
@@ -380,16 +580,15 @@
% \item [Gedankenstriche, Bis-Striche, Bindestriche] muss man unterscheiden! Zum
% Verbinden einzelner Wörter setzt man einen Bindestrich (|Master-Arbeit|),
% in vielen Fällen kann aber auch eine Zusammenschreibung dem Verbinden mit Strich
-% vorgezogen werden.%
-% \footnote{\raggedright Siehe dazu
-% \url{http://www.belleslettres.eu/artikel/schreibung-durchgekoppelte-wortzusammensetzungen.php}
-% (16.8.11).}
+% vorgezogen werden.\footnote{\raggedright Siehe dazu
+% \url{http://www.belleslettres.eu/artikel/schreibung-durchgekoppelte-wortzusammensetzungen.php}
+% (16.8.11).}
% Den längeren Strich (|--|) setzt man mit Leerzeichen als Gedanken strich
% (\verb*|Text -- Einschub -- mehr Text|) und als Bis-Strich ohne Leerzeichen
% (|1967--2003|).
% \item [Geschützte Leerzeichen] werden mit |~| erzeugt und sollten z.\,B. bei Seitenzahlen
-% verwendet werden: |siehe S.~3| oder |vergleiche Abbildung~3.5|%
-% \footnote{Sinvollerweise sollte man die Zahlen nicht manuell schreiben sondern
+% verwendet werden: |siehe S.~3| oder |vergleiche Abbildung~3.5|\footnote{Sinvollerweise
+% sollte man die Zahlen nicht manuell schreiben sondern
% \LaTeX s Verweismechanismus (in Kombination mit \pkg{varioref}) verwenden.}
% \item [Formatierung] sollte einheitlich sein. Um das zu erleichtern ist es sinnvoll,
% sich eigene Befehle zu erstellen. So könnte man sich zum Beispiel einen Befehl
@@ -405,9 +604,18 @@
% \item [Unterstreichungen unterlassen!] Hervorhebungen können mit
%|\emph|\marg{Text}
% gesetzt werden. Der Befehl kann sogar verschachtelt werden.
+% \item [Zitate in optionalen Argumenten] Wenn ein Zitatbefehl mit optionalen Argumenten
+% in einem andern optionalen Argument werdendet werden soll, muss der Befehl durch
+% geschweifte Klammern geschützt werden, das \LaTeX{} andernfalls die Schachtelung
+% von eckigen Klammern falsch auflöst.
+%
+% Beispielsweise schreibt man besser |\begin{quote}[{\autocite[3]{nuss83}}]|
+% statt |\begin{quote}[\autocite[3]{nuss83}]|.
% \end{description}
%
-% \StopEventually{\PrintChanges\PrintIndex}
+% {\RaggedRight\PrintChanges}
+%
+% \StopEventually{\RaggedRight\PrintIndex}
%
% \section{Implementation}
%
@@ -431,15 +639,25 @@
\DeclareStringOption[withqmarks]{blockquote}[withqmarks]
\DeclareStringOption[german]{qmarks}[german]
% \end{macrocode}
-% Dann noch einen if-Schalter und eine einfache Option für das Layout
+% Dann noch einen if-Schalter und eine einfache Option für das Layout,
% \begin{macrocode}
\newif\if@poorlayout
\DeclareOption{poorlayout}{\@poorlayouttrue}
% \end{macrocode}
-% sowie für die Option bei vielen Fußnoten
+% für die Optionen für Fußnoten
% \begin{macrocode}
\newif\if@manyfnotes
\DeclareOption{manyfnotes}{\@manyfnotestrue}
+\newif\if@twocolfnotes
+\DeclareOption{twocolfnotes}{\@twocolfnotestrue}
+\newif\if@nofnoterule
+\DeclareOption{nofnoterule}{\@nofnoteruletrue}
+% \end{macrocode}
+% sowie für die Gleitumgebungszentrierung
+% \begin{macrocode}
+\newif\if@centerfloats
+\@centerfloatstrue
+\DeclareOption{dontcenterfloats}{\@centerfloatsfalse}
% \end{macrocode}
% Als letztes wird noch eine Dummyoption angelegt, die alle dieser
% Klasse nicht bekannten Optionen an die Basisklasse \pkg{scrartcl}
@@ -558,8 +776,10 @@
\newcommand{\@uni}{}
\newcommand{\@study}{}
\newcommand{\@sterm}{}
-\newcommand{\@examiner}{}
-\newcommand{\@examinerlabel}{}
+\newcommand{\@examinerI}{}
+\newcommand{\@examinerIlabel}{}
+\newcommand{\@examinerII}{}
+\newcommand{\@examinerIIlabel}{}
% \end{macrocode}
% um dann die Befehle zu erstellen, mit denen die Varaiblen
% gesetzt werden.
@@ -579,12 +799,28 @@
% weil der Abstand zwischen Bezeichnung und Name nur ausgegeben
% werden darf, wenn der Bezeichner nicht leer ist. Andernfalls
% wären die Namen nicht korrekt zentriert.
+% \begin{macro}{\examinerI/II}
+% \changes{v1.1}{2011/09/11}{Neue Macros für die Prüfer auf
+% der Titelseite}
+% \begin{macrocode}
+\newcommand*{\examinerI}[2]{%
+ \renewcommand{\@examinerIlabel}{#1}%
+ \renewcommand{\@examinerI}{#2}%
+}
+\newcommand*{\examinerII}[2]{%
+ \renewcommand{\@examinerIIlabel}{#1}%
+ \renewcommand{\@examinerII}{#2}%
+}
+% \end{macrocode}
+% \changes{v1.1}{2011/09/11}{\cmd{\examiner} wurde durch \cmd{\examinerI}
+% ersetzt}
+% \end{macro}
+% Nun noch den alten \cmd{\examiner}-Befehl zur Abwärtskompabilität
% \begin{macrocode}
\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}
}
% \end{macrocode}
% \end{macro}\end{macro}\end{macro}\end{macro}\end{macro}\end{macro}
@@ -594,26 +830,21 @@
% Rücksicht auf kleinere Unterschiede der Layouts genommen werden.
% Auf der Titelseite werden nacheinander alle Variablen ausgeben.
% Außerdem wird auf ein symmetrisches Seitenlayout umgeschaltet
-% \begin{macrocode}
-\RequirePackage{pbox}
-% \end{macrocode}
+% \begin{macro}{\maketitle}
% Damit das Trennzeichen zwischen Dozent und Semester auch
% wirklich nur dann ausgegeben, wenn beide einen Wert haben, muss
% ein zusätzlicher Test eingefügt werden, der später mit |\if@letesep|
-% ausgewertet werden kann.
+% ausgewertet werden kann. Anschließend kann der |\maketitle|-Befhel
+% definiert werden.
+% \changes{v1.1}{2011/09/11}{Test für Semester-Dozenten-Trennzeichen verbessert}
+% \changes{v1.1}{2011/09/20}{Das Paket \pkg{pbox} wird nicht mehr benötigt}
% \begin{macrocode}
\newif\if@letesep\@leteseptrue
-\AtBeginDocument{
- \expandafter\ifstrempty\expandafter{\@lecturer}{\@letesepfalse}{}
- \expandafter\ifstrempty\expandafter{\@term}{\@letesepfalse}{}
-}
-% \end{macrocode}
-% \begin{macro}{\maketitle}
-% Jetzt kann der |\maketitle|-Befhel definiert werden.
-% \begin{macrocode}
\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
@@ -629,8 +860,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
@@ -728,7 +961,16 @@
\appto\tableofcontents{\setstretch{1.45}}
\fi
% \end{macrocode}
+% Zum Schluss legen wir noch fest, dass das Literatur- sowie die
+% Gleitobjektverzeichnisse ins Inhaltsverzeichnisaufgenommen werden.
+% \changes{v1.1}{2011/09/20}{Literatur- und Gleitobjektverzeichnisse
+% werden ins Inhaltsverzeichnis aufgenommen}
+% \begin{macrocode}
+\KOMAoptions{listof=totoc}
+\PassOptionsToPackage{bibliography=totoc}{biblatex}
+% \end{macrocode}
% \end{macro}
+%
% \subsection{Fußnoten}
% \begin{macro}{manyfnotes}
% Die Fußnoten werden nicht hochgestellt gesetzt, sondern als normal
@@ -744,6 +986,29 @@
\fi
% \end{macrocode}
% \end{macro}
+% \begin{macro}{twocolfnotes}
+% Zur Unterstützung für zweispaltige Fußnoten laden wir das Paket
+% \pkg{dblfnote}. Außerdem soll die Schrift dann noch etwas kleiner
+% sein und die Trennlinie ausgeblendet werden.
+% \begin{macrocode}
+\if@twocolfnotes
+ \usepackage{dblfnote}
+ \setlength{\DFNcolumnsep}{2em}
+ \setkomafont{footnote}{\scriptsize}
+ \renewcommand{\footnoterule}{\noindent\rule{85mm}{.4pt}\vspace{1mm}}
+\fi
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{nofnoterule}
+% Nachdem wir eben schon die Fußnotenlinie bei zweispaltigen
+% Fußnoten angepasst haben, werten wir noch die Option
+% \opt{nofnoterule} aus. Dazu setzten wir einfach die Länge auf null.
+% \begin{macrocode}
+\if@nofnoterule
+ \renewcommand{\footnoterule}{\rule{0mm}{.4pt}\vspace{1mm}}
+\fi
+% \end{macrocode}
+% \end{macro}
% \subsection{Aufzählungen}
% \begin{environment}{itemize}
% \begin{environment}{enumerate}
@@ -813,12 +1078,19 @@
% \end{macrocode}
% und mit einem Befehl aus dem \pkg{environ}-Paket die neue gemacht.
% Dabei muss wieder Rücksicht auf |poorlayout| genommen werden.
+% \changes{v1.1}{2011/09/19}{Neues KOMA-Schriftelement \fnt{quotetext}}
+% Zunächst definieren wir aber nocht ein KOMA-Schriftelement
+% \changes{v1.1}{2011/09/19}{Neue Länge \cmd{\blockmargin}}
+% und einen Längenbefehl für die Randbreite bei abgesetzten Texten.
% \begin{macrocode}
+\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}%
@@ -835,7 +1107,162 @@
\newcommand{\sic}{[sic]\xspace}
% \end{macrocode}
% \end{macro}\end{macro}
+%
+% \subsection{Textblöcke}
+% \begin{environment}{block}
+% Als Ergänzung zur \env{quote}-Umgebung definiren wir noch die
+% Umgebung \env{block}
+% \begin{macrocode}
+\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%
+}
+% \end{macrocode}
+% \end{environment}
+%
+%
+% \subsection{Vers-Umgebung}
+% Als erstes laden wir das Paket \pkg{verse} für die
+% optionale Zeilennummerierung,
+% \begin{macrocode}
+\RequirePackage{verse}
+% \end{macrocode}
+% nehmen einige Einstellungen vor, lenken die
+% Schriftart für die Nummern auf ein neues
+% KOMA-Schriftelement um
+% \begin{macrocode}
+\verselinenumbersleft
+\setlength{\vrightskip}{-1.5\leftmargin}
+\newkomafont{linenumbers}{\normalfont\tiny}
+\verselinenumfont{\usekomafont{linenumbers}}
+% \end{macrocode}
+% \begin{macro}{\linenumbermodulo}
+% und definieren einen Befehl, mit dem der Nutzer
+% die Schrittweite der Zeilennummern verändern kann.
+% \begin{macrocode}
+\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
+}
+% \end{macrocode}
+% \end{macro}
+% Da wir die Vers-Umgebung nur anpassen, werden zunächst
+% die originalen Definitionen gespeichert.
+% \begin{macrocode}
+\let\mu@orig@verse\verse
+\let\mu@orig@endverse\endverse
+% \end{macrocode}
+% Dann definieren wir ein neues KOMA-Schriftelement
+% \begin{macrocode}
+\newkomafont{verse}{\itshape}
+% \end{macrocode}
+% Als Letztes brauchen wir noch eine möglichkeit,
+% zu Testen ob ein Argument auch wirklich eine
+% Zahl ist:
+% \begin{macrocode}
+\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
+}
+% \end{macrocode}
+% \begin{environment}{verse}
+% \changes{v1.1}{2011/09/19}{Umgebung \env{verse} erweitert}
+% \changes{v1.1}{2011/09/20}{Neues KOMA-Schriftelement \fnt{verse}}
+% \changes{v1.1}{2011/09/20}{Neues KOMA-Schriftelement \fnt{linenumbers}}
+% Nun können wir die neue Umgebung definieren
+% \begin{macrocode}
+\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%
+}
+% \end{macrocode}
+% \end{environment}
%
+% \subsection{Gleitumgebungen}
+% \begin{environment}{music}
+% \changes{v1.1}{2011/09/11}{Neue Umgebung \env{music}}
+% Um die neue Gleitumgebung für Notenbeispiele zu definieren,
+% laden wird das Paket \pkg{float}, legen die neue Umgebung an
+% und definieren die Bezeichnung "`Notenbeispiel"'.
+% \begin{macrocode}
+\usepackage{float}
+\newfloat{music}{htpb}{lom}
+\floatname{music}{Notenbeispiel}
+% \end{macrocode}
+% Anschließend definieren wir den Befehl zur Ausgabe
+% der Liste aller Beispiele analog zu |\listoffigures|
+% \begin{macrocode}
+\newcommand{\listofmusic}{%
+ \listof{music}{Notenbeispiele}
+}
+% \end{macrocode}
+% \end{environment}
+%
+% Nun kümmern wir uns noch darum, dass die Inhalte der
+% Umgebungen zentriert werden.
+% \begin{macrocode}
+\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
+% \end{macrocode}
+%
+%
% \Finale
\endinput
\ No newline at end of file