The memoir document class has \specialindex that allows
to output a location reference that's not a page number.
If the hyperref package is used, a hyperlink shall be
added to the page for PDF readers. For that, a
parameter must be associated to the location reference
that labels the link target. xindy has no method to
associate arbitrary information to location references.
Add a :locrefinfo parameter to the indexentry clause.
Add a possibility to output that location reference
info to markup-locref, probably placement before/after
the open/close text.
Document that new structural element in the reference
documentation. Add a marker to the technical report
that a new concept has been added.
Logged In: YES
user_id=70318
On reread, it's not clear what the problem is: A hyperlink
shall link to the page where the index entry was on. To
create such a link, one needs the page number. But if the
location reference is not a page number itself, this
information is missing -- to get it, one needs to associate
that location reference with a page number. If we generalize
that association of information, we come to the term
:locrefinfo
There are more design difficulties involved: If we have two
equal location references that differ in their :locrefinfo
(e.g., that would give two different hyperlinks), do we drop
one of them? Yet another configuration option is probably
needed to handle that situation.
Logged In: YES
user_id=70318
Originator: YES
The same problem occurs with tex4ht.
There index entries are created that look like
\indexentry{aa|LNK{test.html}{x1-2}{}}{1}
The output shall be
\item aa, \LNK{test.html}{x1-2}{}{1}
I.e., this is not a cross reference, but a locref info. (Maybe one can add another brace around the args of LNK, that enables parsing by tex2xindy, until we get more flexible TeX input parsing in Lisp.)
That locref info is identified with a class name, "LNK". One problem is also that tex2xindy will create :xref clauses in the raw index, but this ain't no xref. Since tex2xindy has no access to the xindy style file, it won't know the difference between these two semantic categories that are syntactically the same. But that example is actually nearer to a locref attribute than to a cross reference; since it is used to change the markup for the locref, it doesn't add a new locref.
Logged In: YES
user_id=70318
Originator: YES
Please note that this does not solve the seealso support, where locrefs and crossrefs are merged. See the rejected (closed) RFE ticket 1007657 why that mix will not be implemented.