![](https://secure.gravatar.com/avatar/0d7c303452b11b8403ba1754990d559c.jpg?s=120&d=mm&r=g)
Hi all, is it possible to make \index{…} more robust, so that one could set a space between command an followed word? \startTEXpage[offset=1ex] test test\vl \crlf test \index{test}test\vl \crlf % OK test \index{test} test\vl % not OK \stopTEXpage But more important, even if there isn’t a space, the \index-command spoils the output. \setuplayout[width=middle,backspace=40mm] \starttext \showframe[text][text] \dorecurse{100}{test } \blank \dorecurse{100}{\index{test}test } \stoptext I hope this can be fixed soon … Greeting Andreas
![](https://secure.gravatar.com/avatar/565476157eb3895a9c928ffce26d988d.jpg?s=120&d=mm&r=g)
On 12/24/2010 11:48 AM, Andreas Harder wrote:
\startTEXpage[offset=1ex] test test\vl \crlf test \index{test}test\vl \crlf % OK test \index{test} test\vl % not OK \stopTEXpage
\ignorespaces could be possibly be added to \index in your case, but that does not solve this conceptual problem: what is actually being indexed in that second line? Not the word on the left (as that could be on a different page), neither the word on the right (as that could also be on a different page). So basically, you are indexing the spot between two spaces. Therefore it seems justified that ConTeXt conveniently keeps both spaces ... Best wishes, Taco
![](https://secure.gravatar.com/avatar/ac3fbaf0a287c4cffbc9f18fa931586c.jpg?s=120&d=mm&r=g)
On Friday 24 December 2010 11:54:17 Taco Hoekwater wrote:
On 12/24/2010 11:48 AM, Andreas Harder wrote: \index{test}test
\ignorespaces could be possibly be added to \index in your case, but that does not solve this conceptual problem: what is actually being indexed in that second line? Not the word on the left (as that could be on a different page), neither the word on the right (as that could also be on a different page).
I have understood that the correct use of \index{} is immediately following the word to be indexed, as in: test\index{test} In the case of indexing a multiple-word item, one should probably place \index{} immediately following the first word, as in: merry\index{merry christmas} christmas! (so that the reference points to the page featuring "merry", even if "christmas" wraps the the following page). Alan
![](https://secure.gravatar.com/avatar/0d7c303452b11b8403ba1754990d559c.jpg?s=120&d=mm&r=g)
Am 24.12.2010 um 12:53 schrieb Alan BRASLAU:
On Friday 24 December 2010 11:54:17 Taco Hoekwater wrote:
On 12/24/2010 11:48 AM, Andreas Harder wrote: \index{test}test
\ignorespaces could be possibly be added to \index in your case, but that does not solve this conceptual problem: what is actually being indexed in that second line? Not the word on the left (as that could be on a different page), neither the word on the right (as that could also be on a different page).
I have understood that the correct use of \index{} is immediately following the word to be indexed, as in: test\index{test}
The wiki (http://wiki.contextgarden.net/Registers#Example) suggests it the other way round …? Andreas
![](https://secure.gravatar.com/avatar/ac3fbaf0a287c4cffbc9f18fa931586c.jpg?s=120&d=mm&r=g)
On Friday 24 December 2010 12:57:26 Andreas Harder wrote:
Am 24.12.2010 um 12:53 schrieb Alan BRASLAU:
On Friday 24 December 2010 11:54:17 Taco Hoekwater wrote:
On 12/24/2010 11:48 AM, Andreas Harder wrote: \index{test}test
\ignorespaces could be possibly be added to \index in your case, but that does not solve this conceptual problem: what is actually being indexed in that second line? Not the word on the left (as that could be on a different page), neither the word on the right (as that could also be on a different page).
I have understood that the correct use of \index{}
is immediately following the word to be indexed, as in: test\index{test}
The wiki (http://wiki.contextgarden.net/Registers#Example) suggests it the other way round …?
I don't know about the wiki. Maybe it is correct, maybe not. I suppose that I should be able to figure this out looking at the source code. As Taco points out (see below): test \index{test} is no good, as the page can possibly be broken before the index entry; \index{test}test is no good either, as "test" may appear on the page following the index entry. I had always understood the correct usage to be: test\index{test} On Friday 24 December 2010 11:54:17 Taco Hoekwater wrote:
On 12/24/2010 11:48 AM, Andreas Harder wrote:
\startTEXpage[offset=1ex] test test\vl \crlf test \index{test}test\vl \crlf % OK test \index{test} test\vl % not OK \stopTEXpage
\ignorespaces could be possibly be added to \index in your case, but that does not solve this conceptual problem: what is actually being indexed in that second line? Not the word on the left (as that could be on a different page), neither the word on the right (as that could also be on a different page).
participants (3)
-
Alan BRASLAU
-
Andreas Harder
-
Taco Hoekwater