The "register" macros in Context only provide for a single level index AFAIK so I have been looking at the use of either makeindex or Xindy in a Context project. I have slightly modified the index.tex file from the Texsis distribution and renamed it indexx.tex. Instructions for use are included in the file. The command sequence is: texexec test.tex makeindex test.idx -o test.ind texexec test.tex. The test.tex file is as follows: \input indexx.tex \markindextrue \starttext Hello \page[yes] \idx{Frisbee} \idx{Saucer} \indexx{foo} \indexx{foo!bar} \page[yes] \input test.ind \stoptext The indexx.tex file can be found at: http://wexfordpress.com/tex/indexx.tex Most parties seem to prefer the more capable Xindy to the old standby makeindex. However The Xindy distribution has a program for translating makeindex raw index files to Xindy raw index files. So the indexx.tex macros can be used as a stopgap method now. I will work on another version that will emit Xindy raw files natively. Questions, comments, suggestions welcome :-) -- John Culleton Able Indexers and Typesetters Rowse Reviews Culleton Editorial Services http://wexfordpress.com