diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/musuos/musuos.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/musuos/musuos.dtx | 599 |
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 |