I'm doing my first mkiv index (it took me a long time to upgrade from mkii!) and I really like the processor feature to format elements differently. But there are a couple of things I would really like to achieve that I'm struggling with:
  1. Elided numbers in an index range entry. For example if I have a \startregister - \stopregister pair resulting in an index entry like

    entry 354--356

    I would like to be able to make this read

    entry 354--6

    There are different conventions for number span elision but usually teens aren't elided so

    entry 314--316

    would become

    entry 314-16.

    It strikes me that if I could set up a processor specifically for page number ranges I could possibly write a macro to do elision; but I don't think that's currently possible? Maybe it's possible in lua to write code which both identifies range page numbers and carries out the elision. I'm not quite sure where to start.

  2. Fine tuning column and page breaking in an index. This is tricky, because there are usually very few "good" places to break an index, and automatic breaking seems to alter slightly depending on whether interactions are set up or not, but is there a way to manually insert a column or page break into the register before or after a certain entry, the way there is for a table of contents?
Sorry for no MWE, for obvious reasons. Any pointers to what might be able to be done on these would be much appreciated.

Thanks.

Duncan