Entschuldigt bitte, dass ich das Thema nochmal nach oben schiebe. Nachdem ich mich nun längere Zeit auf xindy.org rumgetrieben habe, ist mir aufgefallen, dass der Ansatz mit einer crossref-class wohl nicht funktionieren kann. Die scheinen nämlich grundsätzlich nicht mit Seitenangaben kompatibel zu sein, wenn ich die Anmerkung in der Dokumentation ganz unten richtig verstehe.
Nun habe ich die Idee, ein attribute "seealso" zu definieren. Idealerweise kann ich dann am Anfang des Dokuments, wo ich auch die ganzen Querverweise mit see definiere, etwas der folgenden Form schreiben:
Code:
\index{Eintrag!Querverweis|seealso}
Damit, so hoffe ich zumindest, würde dann zu Eintrag ein Untereintrag Querverweis erzeugt, der irgendwie auch noch nach allen anderen Untereinträgen gelistet werden soll.
Hier ein Minimalbeispiel, wieder mit dem xindy-Style:
Code:
% foo.tex
\documentclass{scrbook}
\usepackage{index}
\makeindex
\begin{document}
\index{A!B|seealso}
A\index{A}
Ac\index{A!c}
B\index{B}
\printindex
\end{document}
Code:
;; vordefinierte Sprachen von texindy
(require "tex/inputenc/latin.xdy")
;; Module
(require "word-order.xdy")
(require "numeric-sort.xdy")
(require "tex.xdy")
(require "latex-loc-fmts.xdy")
(require "latex.xdy")
(require "makeindex.xdy")
(require "german-sty.xdy")
(define-attributes ("seealso"))
(markup-locref :attr "seealso"
:open "\emph{siehe auch} ")
Der relevante Teil des Ergebnisses sieht bei mir folgendermaßen aus:
Code:
A, 1
B, siehe auch 1
c, 1
Gibt es hier die Möglichkeit, das "siehe auch" mit dem "B" zu vertauschen und die Seitenangabe zu entfernen? Meine Befürchtung ist, dass es nicht geht, da, wenn ich das richtig verstehe, Attribute nur zu locref-Einträgen vergeben werden und nicht zu crossref. Und außerdem scheint es nur mit einem crossref-Eintrag möglich zu sein, "siehe auch" vor "B" zu setzen und die Seitenangabe zu unterdrücken. Außerdem wäre es schick, wenn der Querverweis in spe am Ende der Untereinträge einsortiert würde. Ich dachte, das ginge mit \index{Eintrag!ZZZZ@Querverweis|seealso}, aber da scheine ich mich geirrt zu haben.
Ich bin in diesen Dingen ziemlich unbewandert. Wenn Ihr seht, dass ich da aus oben genannten Gründen in eine Sackgasse renne, reicht mir ein einfaches "Sackgasse" als Antwort schon aus.
Entschuldigt bitte meine Aufdringlichkeit.
Vielen Dank
Marius
Lesezeichen