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