summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/tudscr/tudscr-misc.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/tudscr/tudscr-misc.dtx')
-rw-r--r--Master/texmf-dist/source/latex/tudscr/tudscr-misc.dtx612
1 files changed, 36 insertions, 576 deletions
diff --git a/Master/texmf-dist/source/latex/tudscr/tudscr-misc.dtx b/Master/texmf-dist/source/latex/tudscr/tudscr-misc.dtx
index ff79c236bcd..c77d9a66532 100644
--- a/Master/texmf-dist/source/latex/tudscr/tudscr-misc.dtx
+++ b/Master/texmf-dist/source/latex/tudscr/tudscr-misc.dtx
@@ -1,32 +1,32 @@
-% \CheckSum{907}
+% \CheckSum{413}
% \iffalse meta-comment
-%
-% ============================================================================
-%
-% TUD-Script
-% Copyright (c) Falk Hanisch <tudscr@gmail.com>, 2012-2016
-%
-% ============================================================================
-%
+%
+% TUD-Script -- Corporate Design of Technische Universität Dresden
+% ----------------------------------------------------------------------------
+%
+% Copyright (C) Falk Hanisch <tudscr@gmail.com>, 2012-2017
+%
+% ----------------------------------------------------------------------------
+%
% This work may be distributed and/or modified under the conditions of the
% LaTeX Project Public License, version 1.3c of the license. The latest
-% version of this license is in http://www.latex-project.org/lppl.txt and
+% version of this license is in http://www.latex-project.org/lppl.txt and
% version 1.3c or later is part of all distributions of LaTeX 2005/12/01
-% or later and of this work. This work has the LPPL maintenance status
+% or later and of this work. This work has the LPPL maintenance status
% "author-maintained". The current maintainer and author of this work
% is Falk Hanisch.
-%
-% ----------------------------------------------------------------------------
-%
+%
+% ============================================================================
+%
% Dieses Werk darf nach den Bedingungen der LaTeX Project Public Lizenz
-% in der Version 1.3c, verteilt und/oder veraendert werden. Die aktuelle
-% Version dieser Lizenz ist http://www.latex-project.org/lppl.txt und
-% Version 1.3c oder spaeter ist Teil aller Verteilungen von LaTeX 2005/12/01
-% oder spaeter und dieses Werks. Dieses Werk hat den LPPL-Verwaltungs-Status
-% "author-maintained", wird somit allein durch den Autor verwaltet. Der
+% in der Version 1.3c, verteilt und/oder verändert werden. Die aktuelle
+% Version dieser Lizenz ist http://www.latex-project.org/lppl.txt und
+% Version 1.3c oder später ist Teil aller Verteilungen von LaTeX 2005/12/01
+% oder später und dieses Werks. Dieses Werk hat den LPPL-Verwaltungs-Status
+% "author-maintained", wird somit allein durch den Autor verwaltet. Der
% aktuelle Verwalter und Autor dieses Werkes ist Falk Hanisch.
-%
-% ============================================================================
+%
+% ----------------------------------------------------------------------------
%
% \fi
%
@@ -49,9 +49,9 @@
% \iffalse
%%% From File: tudscr-misc.dtx
%<*driver>
-\ifx\ProvidesFile\undefined\def\ProvidesFile#1[#2]{}\fi
+\ifx\ProvidesFile\@undefined\def\ProvidesFile#1[#2]{}\fi
\ProvidesFile{tudscr-misc.dtx}[%
- 2016/09/22 v2.05d TUD-Script (miscellaneous)%
+ 2017/01/03 v2.05g TUD-Script (miscellaneous)%
]
\RequirePackage[ngerman=ngerman-x-latest]{hyphsubst}
\documentclass[english,ngerman,xindy]{tudscrdoc}
@@ -60,13 +60,19 @@
\usepackage{babel}
\usepackage{tudscrfonts} % only load this package, if the fonts are installed
\KOMAoptions{parskip=half-}
-\usepackage{microtype}
\usepackage{bookmark}
+\usepackage[babel]{microtype}
+
\CodelineIndex
\RecordChanges
\GetFileInfo{tudscr-misc.dtx}
+\title{\file{\filename}}
+\author{Falk Hanisch\qquad\expandafter\mailto\expandafter{\tudscrmail}}
+\date{\fileversion\nobreakspace(\filedate)}
+
\begin{document}
\maketitle
+ \tableofcontents
\DocInput{\filename}
\end{document}
%</driver>
@@ -76,7 +82,6 @@
%
% \changes{v2.02}{2014/06/23}{Paket \pkg{titlepage} nicht weiter unterstützt}^^A
% \changes{v2.02}{2014/07/08}{\cs{FamilyKeyState} wird von Optionen genutzt}^^A
-% \changes{v2.05}{2015/07/06}{Bugfix für \pkg{multicol}}^^A
%
% \section{Verschiedenes für das \TUDScript-Bundle}
%
@@ -84,10 +89,6 @@
%
% \StopEventually{\PrintIndex\PrintChanges\PrintToDos}
%
-% \iffalse
-%<*!xindy>
-% \fi
-%
% \subsection{Sukkzessives Abarbeiten von Layoutoptionen im Dokument}
%
% Werden mit \cs{TUDoptions} nach \cs{begin\{document\}} mehrere Layoutoptionen
@@ -100,6 +101,7 @@
% Befehl \cs{tud@atdocument@process}, welcher für die Abarbeitung der einzelnen
% Makros in der richtigen Reihenfolge verantwortlich ist, lediglich einmal über
% \cs{AtEndOfFamilyOptions} ausgeführt wird.
+% \ToDo{Evtl. in \file{tudscr-layout.dtx} verschieben?}[v2.06]
% \ToDo{%
% Problem bei \cs{TUDoptions} mit \cs{AtEndOfFamilyOptions} beheben
% }[v2.06]
@@ -229,6 +231,7 @@
%
% Die nachfolgend definierten Optionen und Befehle orientieren sich dabei stark
% an internen \KOMAScript-Makros.
+% \ToDo{Evtl. in \file{tudscr-area.dtx} verschieben?}[v2.06]
% \ToDo{%
% Wie mit \opt{layout} von \pkg{geometry} umgehen? Wann Papierformat prüfen?
% Vielleicht mit \cs{KOMAoptionOf\{paper\}} prüfen? Oder ganz raus?
@@ -384,9 +387,9 @@
%
% \begin{macro}{\tudbookmark}
% \begin{macro}{\tud@x@hyperref@realfootnotes}
-% Die Befehle zum Eintragen der Sprungmarken. Im Dokument kann auch der Befehl
-% \cs{tudbookmark} vom Anwender genutzt werden, um manuell weitere Lesezeichen
-% zu erzeugen.
+% Die Befehle zum Eintragen der Sprungmarken. Im Dokument kann \cs{tudbookmark}
+% auch vom Anwender genutzt werden, um weitere Lesezeichen abhängig von der
+% Option \opt{tudbookmarks} manuell zu erzeugen.
%
% Für die Titelseite werden~-- wie auch durch das Paket \pkg{hyperref}~-- die
% Fußnoten mit dem Befehl \cs{tud@x@hyperref@realfootnotes} auf den originalen
@@ -504,7 +507,7 @@
% \end{macro}^^A \listoffigures
% \end{macro}^^A \tableofcontents
%
-% \subsection{Bugfixing für das Paket \pkg{tocloft}}
+% \subsection{Warnung bei der Nutzung des Paketes \pkg{tocloft}}
%
% Das Paket \pkg{tocloft} verursacht allerlei Probleme. Wird es geladen, so
% erscheint eine entsprechende Warnung.
@@ -657,549 +660,6 @@
%
% \iffalse
%</execute>
-%</!xindy>
-%<*xindy>
-% \fi
-%
-% \subsection{Stildateien für \texorpdfstring{\app{texindy}}{texindy}}
-%
-% Für die Dokumentationsklassen und -pakete wird zur Sortierung \app{texindy}
-% verwendet. Da das Programm die die Dateien nicht in einem \val{TEXPATH} nach
-% den Stildateien sucht, werden diese zur Laufzeit im Arbeitsverzeichnis
-% erstellt. Nachfolgend wird die zu erstellenden \app{texindy}-Stildatei kurz
-% beschrieben.
-% \begin{macro}{\@hashchar}
-% \changes{v2.05}{2016/04/25}{neu}^^A
-% Das Hash-Zeichen.
-% \begin{macrocode}
-%<*doc>
-\catcode`\#=12
-\newcommand*\@hashchar{#}
-\catcode`\#=6
-%</doc>
-% \end{macrocode}
-% \begin{macro}{\tud@lst@def}
-% \changes{v2.05}{2016/04/25}{neu}^^A
-% \begin{macro}{\tud@lst@values}
-% \changes{v2.05}{2016/04/25}{neu}^^A
-% \begin{macro}{\if@tud@lst@multi}
-% \changes{v2.05}{2016/04/25}{neu}^^A
-% \begin{macro}{\tud@lst@init}
-% \changes{v2.05}{2016/04/25}{neu}^^A
-% \begin{macro}{\tud@lst@add}
-% \changes{v2.05}{2016/04/25}{neu}^^A
-% \begin{macro}{\tud@lst@process}
-% \changes{v2.05}{2016/04/25}{neu}^^A
-% Für die Änderungsliste in \cls{tudscrdoc} wird bei der Beschreibung von
-% Einträgen nur dann eine dritte Ebene verwendet, wenn es einem Eintrag mehrere
-% Angaben existieren. Sollte nur eine Anmerkung vorhanden sein, wird diese
-% direkt in der zweiten Ebene nach dem Eintrag selbst ausgegeben.
-% \begin{macrocode}
-%<*doc>
-\newcommand*\tud@lst@def{%
- \newcommand*\tud@lst@values{}%
- \newif\if@tud@lst@multi%
- \newcommand*\tud@lst@init{%
- \let\tud@lst@values\relax%
- \@tud@lst@multifalse%
- }%
- \newcommand*\tud@lst@add[1]{%
- \ifx\tud@lst@values\relax\else%
- \@tud@lst@multitrue%
- \fi%
- \listadd\tud@lst@values{##1}%
- }%
- \newcommand*\tud@lst@process{%
- \def\tud@reserved{}%
- \if@tud@lst@multi%
- \def\tud@reserved{\subsubitem}%
- \efill%
- \fi%
- \forlistloop\tud@reserved{\tud@lst@values}%
- }%
-}
-%</doc>
-% \end{macrocode}
-% \end{macro}^^A \tud@lst@process
-% \end{macro}^^A \tud@lst@add
-% \end{macro}^^A \tud@lst@init
-% \end{macro}^^A \if@tud@lst@multi
-% \end{macro}^^A \tud@lst@values
-% \end{macro}^^A \tud@lst@def
-% \end{macro}^^A \@hashchar
-% \begin{macro}{\tud@xdy@create}
-% \changes{v2.05}{2016/04/24}{neu}^^A
-% \begin{macro}{\tud@write@xdy}
-% \changes{v2.05}{2016/04/24}{neu}^^A
-% \begin{macro}{\if@tud@xdy@glo}
-% \changes{v2.05}{2016/04/25}{neu}^^A
-% Dies sind die Hilfsmakros für die Erzeugung der notwendigen Dateien.
-% \begin{macrocode}
-\begingroup
-%<doc>\ifdef{\tudxdyflag}{%
-\newcommand*\tud@write@xdy{}
-\newwrite\tud@write@xdy
-\newif\if@tud@xdy@glo
-\newcommand*\tud@xdy@create[2][theindex]{%
- \IfFileExists{\@currname-#2.xdy}{}{%
- \ifstr{#1}{theglossary}{\@tud@xdy@glotrue}{\@tud@xdy@glofalse}%
- \openout\tud@write@xdy=\@currname-#2.xdy\relax%
-% \end{macrocode}
-% Als erstes wird Standard-\LaTeX-Modul geladen.
-% \begin{macrocode}
- \write\tud@write@xdy{(require "texindy.xdy")}%
-% \end{macrocode}
-%
-% \subsubsection{Defintion der verwendeten Umgebung}
-%
-% Für die Klasse \cls{tudscrdoc} sind zwei sehr ähnliche Stildateien notwendig.
-% Die beiden unterschieden sich lediglich in der verwendeten Umgebung.
-% \begingroup%
-% \makeatletter%
-% \@bsphack\scan@allowedfalse\@esphack%
-% \makeatother%
-% \begin{macrocode}
-%<*doc>
- \write\tud@write@xdy{%
- (markup-index^^J%
- \space\space:open^^J%
- "\string\begin{#1}^^J%
- \space\space%
- \string\providecommand*\string\lettergroupDefault[1]{\@percentchar^^J%
- \@spaces\string\par%
- \string\centerline{\string\textbf{\string\textsf{Symbole}}}%
- \string\par\@percentchar^^J%
- \@spaces\string\nopagebreak\@percentchar^^J%
- \space\space}\@percentchar^^J%
- \space\space%
- \string\providecommand*\string\lettergroup[1]{\@percentchar^^J%
- \@spaces\string\par%
- \string\centerline{\string\textbf{\string\textsf{\@hashchar1}}}%
- \string\par\@percentchar^^J%
- \@spaces\string\nopagebreak\@percentchar^^J%
- \space\space}\@percentchar^^J%
- \space\space\string\makeatletter\@percentchar^^J%
- \space\space\string\scan@allowedfalse\@percentchar%
- }%
-% \end{macrocode}
-% Für die Änderungsliste erfolgt die GRuppierung anhand der Versionsnummer. Da
-% diese auf der ersten Ebene angegeben ist (\cs{item}) muss das Ganze mit einem
-% terminierten Befehl erfolgen. Hierfür wird \cs{@lettergroup} definiert.
-% Außerdem werden mit \cs{tud@lst@def} die benötigten Befehle zur selektiven
-% Anzeige der Änderungseinträge definiert.
-% \begin{macrocode}
- \if@tud@xdy@glo%
- \write\tud@write@xdy{%
- \space\space\string\newcommand*\string\@lettergroup{}\@percentchar^^J%
- \space\space%
- \string\def\string\@lettergroup\@hashchar1\string\relax%
- {\string\lettergroup{\@hashchar1}}\@percentchar^^J%
- \space\space\string\tud@lst@def\@percentchar%
- }%
- \fi%
-% \end{macrocode}
-% Der Abschluss der Umgebungsdefinition.
-% \begin{macrocode}
- \write\tud@write@xdy{%
- "^^J%
- \space\space:close "\string~n\string~n\string\end{#1}\string~n"^^J%
- \space\space:hierdepth 3^^J%
- )%
- }%
-%</doc>
-% \end{macrocode}
-%
-% \subsubsection{Defintion und Markup der Seitenzahlen}
-%
-% Leider lässt sich für Seitenzahlbereiche via \val{:attr} (noch) kein Markup
-% für angehängte \enquote{f.} sowie \enquote{ff.} einstellen. Diese würden
-% deshalb bei kursiven oder fetten Seitenzahlen trotzdem in normaler Schrift
-% erscheinen, weshalb auf die Auszeichnung folgender Seiten verzichtet wird.
-% \begin{macrocode}
-%^^A \write\tud@write@xdy{(require "ff-ranges.xdy")}%
-% \end{macrocode}
-% Seitenbereiche werden sofort zusammengefasst, wobei als Trennzeichen ein
-% Halbgeviertstrich verwendet wird. Für \cls{tudscrdoc} werden die Seitenzahlen
-% beim Einbinden der einzelnen \file{dtx}-Dateien mit einem alphanumerischen
-% Präfix versehen, wofür eine eigene \val{location-class} erstellt wird.
-% \begin{macrocode}
- \write\tud@write@xdy{%
- (define-location-class^^J%
- \space\space"arabic-page-numbers" ("arabic-numbers")%
- \space:min-range-length 1^^J%
- )^^J%
-%<*doc>
- (define-alphabet "AlphaExtended"^^J%
- \space(^^J%
- \space\space"A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M"^^J%
- \space\space"N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z"^^J%
- \space\space"a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"^^J%
- \space\space"n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"^^J%
- \space\space"?"^^J%
- \space)^^J%
- )^^J%
- (define-location-class^^J%
- \space\space"part" ("AlphaExtended" :sep "-" "arabic-numbers")%
- \space:min-range-length 1^^J%
- )^^J%
-%</doc>
- (markup-range :sep "--")%
- }%
-% \end{macrocode}
-%
-% \subsubsection{Markup des Füllbereichs zwischen Eintrag und Seitenzahlen}
-%
-% Punkte zwischen Eintrag und Seitenzahl. Das schließende \cs{relax} wird für
-% die smarte Definition des Befehls \cs{cleversee} benötigt, welcher nach den
-% beiden obligatorischen Argument die nachfolgenden Seitenzahlen sucht und
-% dabei durch \cs{relax} begrenzt wird. Für die Klasse \cls{tudscrdoc} wird in
-% der Änderungsliste der Hyperlink für die Seitenzahl respektive die Codezeile
-% direkt erzeugt.
-% \begin{macrocode}
-%<*doc>
- \if@tud@xdy@glo%
- \write\tud@write@xdy{%
- (markup-locclass-list%
- \space:open "\string\pfill\string\hypersourceref{" :close "}\string\relax"%
- )%
- }%
- \else%
-%</doc>
- \write\tud@write@xdy{%
- (markup-locclass-list%
-%<!doc> \space:open "\string\,\string\dotfill\string\,"%
-%<doc> \space:open "\string\pfill\space"%
- \space:close "\string\relax"%
- )%
- }%
-%<doc> \fi%
-% \end{macrocode}
-%
-% \subsubsection{Ignorieren von bestimmten Anteilen bei der Sortierung}
-%
-% Alle Argumente in eckigen Klammern werden ignoriert. Dies wird bei einigen
-% Indexbefehlen genutzt, um die nicht beachteten RegExp-Regeln auszugleichen,
-% siehe den nächsten Absatz. In der Klasse \cls{tudscrdoc} werden außerdem ein
-% oder mehrere vorangestellte \val{@}-Zeichen ignoriert.
-% \begin{macrocode}
- \write\tud@write@xdy{%
- (merge-rule "\@backslashchar[(.*)\@backslashchar]" "" :eregexp)%
-%<*doc>
- ^^J%
- (merge-rule%
- \space"\string^(@+)([\string^@~n]*)"%
- \space"\string\2\string~e\string\1"%
- \space:eregexp :again%
- )^^J%
- (merge-rule%
- \space"(.*)(@@@@)([\string^@~n]*)"%
- \space"\string\1@@@\string\3\string~e"%
- \space:again :eregexp%
- )^^J%
- (merge-rule%
- \space"(.*)(@@@)([\string^@~n]*)"%
- \space"\string\1@@\string\3\string~e"%
- \space:again :eregexp%
- )^^J%
- (merge-rule%
- \space"(.*)(@@)([\string^@~n]*)"%
- \space"\string\1@\string\3\string~e"%
- \space:eregexp :again%
- )^^J%
- (merge-rule%
- \space"(.*?)(@)([\string^@~n]*)"%
- \space"\string\1\string~b\string\3"%
- \space:eregexp :again%
- )
-%</doc>
- }%
-% \end{macrocode}
-% Innerhalb ausgewählter Auszeichnungs- und Textbefehle sollten die Befehle
-% selbst, nicht jedoch die Argumente verworfen werden. Leider werden die
-% manuell erstellten RegExp-Regeln durch \app{texindy} zu spät genutzt
-% (\url{http://sourceforge.net/p/xindy/bugs/22/}).
-% \begin{macrocode}
-%<*!doc>
-%^^A \write\tud@write@xdy{%
-%^^A (merge-rule "\\hologo\{(.*)\}" "/1" :eregexp)^^J%
-%^^A (merge-rule "\\texttt\{(.*)\}" "/1" :eregexp)^^J%
-%^^A (merge-rule "\\textsbn\{(.*)\}" "/1" :eregexp)^^J%
-%^^A (merge-rule "\\textsbs\{(.*)\}" "/1" :eregexp)^^J%
-%^^A }%
-%</!doc>
-% \end{macrocode}
-%
-% \subsubsection{Markup der einzelnen Einträge}
-%
-% Für die Änderungsliste werden Untereinträge bis zur fünften Ebene unterstützt.
-% \begin{macrocode}
-%<*!doc&class>
- \write\tud@write@xdy{%
- (markup-indexentry :open "~n \string\subsubsubitem " :depth 3)%
- }%
-%</!doc&class>
-% \end{macrocode}
-% Für die Änderungsliste erfolgt die Gruppierung anhand der Versionsnummer. Das
-% bedeutet, das das Markup für die eigentliche \val{letter-group} unterdrückt
-% und die erste Ebene dafür verwendet wird.
-% \begin{macrocode}
-%<*doc>
- \if@tud@xdy@glo%
- \write\tud@write@xdy{%
- (markup-letter-group%
- \space:open-head "\string~n\space\space\string\@gobble{"%
- \space:close-head "}"%
- )^^J%
-% \end{macrocode}
-% Leider gibt es für die Eintragsebenen keine Schlüssel \val{open-head} und
-% \val{close-head}, weshalb für die Änderungsliste etwas getrickst werden muss.
-% Zwischen Einträgen der ersten Ebene soll äquivalent zu \val{letter-group}
-% etwas Abstand eingefügt werden.
-% \begin{macrocode}
- (markup-indexentry-list%
- \space:sep "\string~n\string~n\space\space\string\indexspace\string~n"%
- \space:depth 0%
- )^^J%
-% \end{macrocode}
-% Da jeder Eintrag in der Änderungsliste aus mindestens drei Ebenen besteht,
-% wird vor der ersten Ebene der Beginn des Markupbefehls gesetzt\dots
-% \begin{macrocode}
- (markup-indexentry\@spaces\space\space%
- :open "\string~n\space\space\string\@lettergroup\space"\space:depth 0%
- )^^J%
-% \end{macrocode}
-% \dots und vor Beginn der zweiten Ebene mit \cs{relax} terminiert.
-% \begin{macrocode}
- (markup-indexentry-list :open "\string\relax" :depth 1)^^J%
-% \end{macrocode}
-% Anschließend werden die zweite sowie die dritte Ebene mit \cs{item} und
-% \cs{subitem} ausgezeichnet.
-% \begin{macrocode}
- (markup-indexentry\@spaces\space\space%
- :open "\string~n\space\space\string\item\space" :depth 1%
- )^^J%
- (markup-indexentry-list :open "\string\efill" :depth 2)^^J%
- (markup-indexentry\@spaces\space\space%
- :open "\string~n\@spaces\string\subitem\space" :depth 2%
- )^^J%
-% \end{macrocode}
-% Im Implemetierungsteil soll eine einzelne Änderungsnotiz für einen Eintrag
-% direkt danach ausgegeben werden. Exisitieren für diesen jedoch mehrere
-% Anmerkungen, so sollen diese in der nächsten Ebene ausgegeben werden. Da die
-% Anzahl aller Anmerkungen zu einem einzelnen Eintrag zu Beginn noch unbekannt
-% ist, werden alle dazugehörigen Änderungsnotizen zunächst mit \cs{tud@lst@add}
-% in der~-- zuvor mit dem Makro \cs{tud@lst@init} initialisierten~-- Liste
-% \cs{tud@lst@values} gesammelt und diese am Ende des jeweiligen Eintrags durch
-% \cs{tud@lst@process} ausgewertet.
-% \begin{macrocode}
- (markup-indexentry-list^^J%
- \space\space:open \space"\string\tud@lst@init"^^J%
- \space\space:close "\string~n \@spaces\space\string\tud@lst@process"^^J%
- \space\space:depth 3^^J%
- )^^J%
- (markup-indexentry^^J%
- \space\space:open \space"\string~n\@spaces\space\string\tud@lst@add{"^^J%
- \space\space:close "}"^^J%
- \space\space:depth 3^^J%
- )%
- }%
-% \end{macrocode}
-% Für den Index aller Eintragstypen ist nur auf zu leere \cs{hbox} zu achten.
-% \begin{macrocode}
- \else%
- \write\tud@write@xdy{%
- (markup-indexentry-list :open "\string\efill" :depth 1)%
- }%
- \fi%
-%</doc>
-% \end{macrocode}
-%
-% \subsubsection{Attribute für Einträge}
-%
-% Es werden die Attribute \emph{declare} mit der Abkürzung \emph{!} sowie
-% \emph{important} mit der Abkürzung \emph{?} und \emph{default} definiert,
-% welche hierarchisch gleichgestellt sind.
-%
-% \iffalse
-%<*!doc>
-% \fi
-%
-% \begin{macrocode}
- \write\tud@write@xdy{%
- (define-attributes (("declare" "!" "important" "?" "default")))^^J%
-% \end{macrocode}
-% Eine Alternative wäre, diese in der Hierarchie zu unterscheiden, allerdings
-% war eine Bildung von zufriedenstellenden Seitenbereichen dabei nicht möglich
-% und wurde deshalb verworfen.
-% \begin{macrocode}
-%^^A (markup-attribute-group-list :sep ", ")^^J%
-%^^A (define-attributes (("declare" "!") ("important" "?")("default")))^^J%
-% \end{macrocode}
-% Einträge, die als wichtig oder als Deklaration festgelegt wurden, könnten
-% auch für normale Indexeinträge zur Bereichsbildung verwendet werden.
-% Allerdings führt dies auch zur Erzeugung redundanter Einträge, falls es sich
-% bei den Sondereinträgen bereits um einen Seitenbereich handelt.
-% \begin{macrocode}
-%^^A (merge-to "declare" "default")^^J%
-%^^A (merge-to "!" "default")^^J%
-%^^A (merge-to "important" "default")^^J%
-%^^A (merge-to "?" "default")^^J%
-% \end{macrocode}
-% Hier erfolgt die Definition der Auszeichnugen der Attribute. Deklarationen
-% werden fett gedruckt, wichtige Einträge erscheinen kursiv. Außerdem wird ein
-% entsprechnder Link auf die Seite eingefügt.
-% \begin{macrocode}
- (markup-locref%
- \space:attr "declare"\space\space%
- \space:open "\string\textbf{\string\hyperpage{"%
- \space:close "}}"%
- )^^J%
- (markup-locref%
- \space:attr "!"\@spaces\@spaces%
- \space:open "\string\textbf{\string\hyperpage{"%
- \space:close "}}"%
- )^^J%
- (markup-locref%
- \space:attr "important"%
- \space:open "\string\textsl{\string\hyperpage{"%
- \space:close "}}"%
- )^^J%
- (markup-locref%
- \space:attr "?"\@spaces\@spaces%
- \space:open "\string\textsl{\string\hyperpage{"%
- \space:close "}}"%
- )^^J%
- (markup-locref%
- \space:attr "default"\space\space%
- \space:open "\string\hyperpage{"\@spaces\@spaces%
- \space:close "}"%
- )%
- }%
-% \end{macrocode}
-%
-% \iffalse
-%</!doc>
-%<*doc>
-% \fi
-%
-% Für \cls{tudscrdoc} erfolgen die Auszeichnungen für den Index im Stile von
-% \pkg{doc} mit den Attribute \emph{main} und \emph{usage}.
-% \begin{macrocode}
- \if@tud@xdy@glo\else%
- \write\tud@write@xdy{%
- (define-attributes (("main" "usage" "default")))^^J%
- (markup-locref :attr "main"%
- \space\space:open "\string\main{"\space\space:close "}"%
- )^^J%
- (markup-locref :attr "usage"%
- \space:open "\string\usage{"\space:close "}"%
- )%
- }%
- \fi%
-% \end{macrocode}
-%
-% \iffalse
-%</doc>
-%<*!doc>
-% \fi
-%
-% \subsubsection{Querverweise im Index}
-%
-% Mit \val{see}\marg{Eintrag} erzeugte Querverweise im Index prüfen, ob
-% außerdem noch Seitenzahlangaben existent sind.
-% \begin{macrocode}
- \write\tud@write@xdy{%
- (markup-crossref-list :class "see"^^J%
- \space\space:open "\string\cleversee{" \@spaces:sep "; " :close "}"^^J%
- )^^J%
- (markup-crossref-list :class "seealso"^^J%
- \space\space:open "\string\cleverseealso{" :sep "; " :close "}"^^J%
- )%
- }%
-% \end{macrocode}
-%
-% \iffalse
-%<*class>
-% \fi
-%
-% Um Querverweise ohne Prüfung des Zieleintrags erzeugen zu können, wird der
-% Typ \val{seeunverified} definiert.
-% \begin{macrocode}
- \write\tud@write@xdy{%
- (define-crossref-class "seeunverified" :unverified)^^J%
- (markup-crossref-list :class "seeunverified"^^J%
- \space\space:open "\string\cleversee{" \@spaces:sep "; " :close "}"^^J%
- )%
- }%
-% \end{macrocode}
-% Dieser Querverweistyp wird speziell im allgemeinen Index verwendet, um auf
-% einen Spezialindex zu verweisen. Dabei dient \val{:unverified} zum
-% Unterdrücken von Warnungen durch \app{texindy} aufgrund eines fehlenden
-% Ziels für den Querverweis.
-% \begin{macrocode}
- \write\tud@write@xdy{%
- (define-crossref-class "seeidx" :unverified)^^J%
- (markup-crossref-list :class "seeidx"^^J%
- \space\space:open "\string\seeidx{"\@spaces\@spaces:sep "; "%
- \space:close "}{}"^^J%
- )%
- }%
-% \end{macrocode}
-% Damit die Makros \cs{cleversee} und \cs{cleverseealso} sowie \cs{seeidx} auf
-% nachfolgende Seitenzahlen suchen können, müssen diese vor selbigen im Index
-% aufgerufen werden.
-% \begin{macrocode}
- \write\tud@write@xdy{%
- (define-location-class-order^^J%
- \space\space(^^J%
- \@spaces"see" "seealso" "seeidx" "seeunverified"^^J%
- \@spaces"roman-page-numbers" "arabic-page-numbers" "alpha-page-numbers"^^J%
- \@spaces"Roman-page-numbers" "Alpha-page-numbers"^^J%
- \space\space)^^J%
- )%
- }%
-% \end{macrocode}
-%
-% \iffalse
-%</class>
-% \fi
-%
-% Werden mit \val{see}\marg{Eintrag!Untereintrag} gezielte Querverweise auf
-% Untereinträge im Index erstellt, so werden diese nicht standardmäßig mit
-% einem Komma sondern mit \enquote{\,\textbar\,} getrennt.
-% \begin{macrocode}
- \write\tud@write@xdy{%
- (markup-crossref-layer-list :class "see"%
- \@spaces\space:sep "\string\,\string\textbar\string\,"%
- )^^J%
- (markup-crossref-layer-list :class "seealso"%
- \space:sep "\string\,\string\textbar\string\,"%
- )%
- }%
-% \end{macrocode}
-%
-% \iffalse
-%</!doc>
-% \fi
-%
-% Damit ist die \app{texindy}-Stildatei fertig und kann mit \cs{tud@xdy@create}
-% erstellt werden.
-% \endgroup
-% \begin{macrocode}
- \closeout\tud@write@xdy%
- }%
-}
-\tud@xdy@create{ind}
-%<doc>\tud@xdy@create[theglossary]{gls}
-%<doc>}{}
-\endgroup
-% \end{macrocode}
-% \end{macro}^^A \if@tud@xdy@glo
-% \end{macro}^^A \tud@write@xdy
-% \end{macro}^^A \tud@xdy@create
-%
-% \iffalse
-%</xindy>
% \fi
%
% \Finale