[NTG-context] Index

Duncan Hothersall dh at capdm.com
Mon Nov 14 14:13:17 CET 2005


Hans, many thanks for the recent fixes on index sorting in the new ruby
scripts. Can I offer another test file in which some errors still show
up, in the hope that these too can be ironed out?

The following shows two problems, culled from a much bigger project. It
should be clear from the output what the problems are, but basically

1. there are three separate spans (\startregister...\stopregister pairs)
with the same term content ("these three separate spans coalesce") which
get coalesced into one strange a-b-c-d span, despite having been given
different sort keys (I added numbers to the end of the sort keys to
differentiate them).

2. there are three refs and a span all with the same term content
("these mixed refs and spans are in the wrong order"), and they get
sorted into the wrong order in the output (the span comes before the
refs, despite coming after in page order).

So in my output, my index page at the back has the following content:

these mixed refs and spans are in the
wrong order 1/12–1/13, 1/2, 1/10,
1/14
these three separate spans coalesce
1/1–1/2–1/5–1/7

whereas what I'd hope to see is:

these mixed refs and spans are in the
wrong order 1/2, 1/10, 1/12–1/13,
1/14
these three separate spans coalesce
1/1–1/2, 1/3–1/5, 1/6–1/7

Really hope you can hammer out these two bugs, it would really help me!

Thanks,

Duncan

----
\defineregister[Index][Indices]
\setupregister[Index][2,balance=no,distance=1em,partnumber=no,chapternumber=yes,pagestyle=,separator=/,indicator=no]

\starttext
\startbodymatter
\setuppagenumbering[state=start,alternative={singlesided,doublesided},
	location=bottom,way=bychapter,partnumber=no,
	chapternumber=yes,numberseparator={/}]

\chapter{Economic Concepts, Issues and Tools}
\input knuth\par {\bf ttssc span 1 starts}
\startregister[Index][these three separate spans coalesce1]{these three
separate spans coalesce}%
\dorecurse{4}{\input knuth\par} {\bf ttssc span 1 stops}
\stopregister[Index][these three separate spans coalesce1]%
\input knuth {\bf tmrasaitwo ref 1}
\Index[these mixed refs and spans are in the wrong order1]{these mixed
refs and spans are in the wrong order}%
\dorecurse{4}{\input knuth\par} {\bf ttssc span 2 starts}
\startregister[Index][these three separate spans coalesce2]{these three
separate spans coalesce}%
\dorecurse{8}{\input knuth\par} {\bf ttssc span 2 stops}
\stopregister[Index][these three separate spans coalesce2]%
\dorecurse{4}{\input knuth\par} {\bf ttssc span 3 starts}
\startregister[Index][these three separate spans coalesce3]{these three
separate spans coalesce}%
\dorecurse{5}{\input knuth\par} {\bf ttssc span 3 stops}
\stopregister[Index][these three separate spans coalesce3]%
\dorecurse{8}{\input knuth\par}
\input knuth {\bf tmrasaitwo ref 2}
\Index[these mixed refs and spans are in the wrong order2]{these mixed
refs and spans are in the wrong order}%
\dorecurse{8}{\input knuth\par} {\bf tmrasaitwo span 1 starts}
\startregister[Index][these mixed refs and spans are in the wrong
order3]{these mixed refs and spans are in the wrong order}%
\dorecurse{4}{\input knuth\par} {\bf tmrasaitwo span 1 stops}
\stopregister[Index][these mixed refs and spans are in the wrong order3]%
\dorecurse{4}{\input knuth\par}
\input knuth {\bf tmrasaitwo ref 3}
\Index[these mixed refs and spans are in the wrong order4]{these mixed
refs and spans are in the wrong order}%
\dorecurse{3}{\input knuth\par}
\stopbodymatter
\startbackmatter
\chapter{Index}
\setuppagenumbering[numberseparator=/]\placeIndex\page[yes]
\stopbackmatter
\stoptext

----


More information about the ntg-context mailing list