Ursprüngliches ProblemIn dem folgendem Minimalbeispiel ist der Eintrag für den Index „Drei Seiten“ falsch. Er liest sich an der Stelle wie „Seite 13“, statt „Seite 1–3“. Ausserdem liest sich der Index „Zwei Seiten“ ebenfalls nicht so wie ich es mir wünsche, das Komma suggeriert zwei unabhängige Erwähnungen statt eines zusammenhängenden Textes. Hier einmal wie es aussieht:
Nutze ich dagegen
Was mir bei MWE: Open in writeLaTeX
\documentclass{scrartcl} \usepackage{blindtext} \usepackage{makeidx} \makeindex \begin{document} \index{Eine Seite|(}\index{Drei Seiten|(} \blindtext \index{Eine Seite|)} \index{Zwei Seiten|(}\index{Zweimalig} \Blindtext[4] \index{Zwei Seiten|)}\index{Zweimalig} \Blindtext[5] \index{Drei Seiten|)} \printindex \end{document} Kompiliert wird mit
Gesucht wird nach einer Lösung die mir mit edit, Zusatz mit TeillösungAuf TSE bin ich auf folgende, teilweise funktionierende Lösung gestoßen:
Mit Variante 1 erhalte ich „Drei Seiten, 1–3“ (also OK) und „Zwei Seiten, 1, 2“ (also falsch nach meiner Auffassung), Variante 2 liefert mit „Zwei Seiten, 1f“ hier ein richtiges Ergebnis, aber für getrennte Erwähnungen wird auch „1f“ ausgegeben (was dann ja wieder Falsch ist, weil es zusammenhängenden Text suggeriert) und bei 1ff für mehrseitiges geht mir die Information verloren, wie lang der entsprechende Abschnitt nun wirklich ist. Variante 1 bringt folgendes:
Variante 2:
In beiden Fällen wieder das Problem, dass zwei unabhängige Nennungen gleichbehandelt werden zu einer großen zusammenhängenden Nennung. Changelog
gefragt 29 Jul '14, 23:42 NobbZ |
Nachdem ich auf der Mailingliste zu
Zu deutsch in etwa:
Ich habe mich dazu entschieden einen entsprechenden Feature-Request bei beantwortet 04 Aug '14, 13:45 NobbZ |
Ich bekomme das von Dir beschriebene erste Ergebnis nur, wenn ich beim Aufruf von Open in writeLaTeX
\begin{theindex} \providecommand*\lettergroupDefault[1]{} \providecommand*\lettergroup[1]{% \par\textbf{#1}\par \nopagebreak } \lettergroup{D} \item Drei Seiten, 1--3 \indexspace \lettergroup{E} \item Eine Seite, 1 \indexspace \lettergroup{Z} \item Zwei Seiten, 1, 2 \item Zweimalig, 1, 2 \end{theindex} Um auch die Bereiche aus nur zwei Seiten zusammenzufassen, kann man Open in writeLaTeX
\begin{filecontents*}{twopage-ranges.xdy} (define-location-class "arabic-page-numbers" ("arabic-numbers") :min-range-length 1) \end{filecontents*} \documentclass{scrartcl} \usepackage{blindtext} \usepackage{makeidx} \makeindex \begin{document} \index{Eine Seite|(}\index{Drei Seiten|(} \blindtext \index{Eine Seite|)} \index{Zwei Seiten|(}\index{Zweimalig} \Blindtext[4] \index{Zwei Seiten|)}\index{Zweimalig} \Blindtext[5] \index{Drei Seiten|)} \printindex \end{document} Nach dem Open in writeLaTeX
\begin{theindex} \providecommand*\lettergroupDefault[1]{} \providecommand*\lettergroup[1]{% \par\textbf{#1}\par \nopagebreak } \lettergroup{D} \item Drei Seiten, 1--3 \indexspace \lettergroup{E} \item Eine Seite, 1 \indexspace \lettergroup{Z} \item Zwei Seiten, 1--2 \item Zweimalig, 1--2 \end{theindex} Wie man allerdings sieht, bleibt es dabei, dass implizite und explizite Bereiche gleich behandelt werden. Wie man das ändern kann, weiß ich im Augenblick auch nicht. Alle Tests wurden mit xindy release: 2.5.0 xindy script version: 1.18 xindy kernel version: 3.0 CLISP version 2.49 (2010-07-07) (built on tug [130.225.2.178]) architecture: I686 von TeX Live 2014 unter Linux durchgeführt. Andere Versionen können eventuell durchaus Bugs haben, die die explizite Angabe von beantwortet 30 Jul '14, 08:06 gast3 |
Ich habe die Frage jetzt auch leicht abgeändert auf TSE gestellt: http://tex.stackexchange.com/questions/193949/xindy-and-indexentries-spanning-multiple-pages#193949