Subject: bug#5809: 23.1.94; cross-reference by anchor yields in accurate position

From: Juri Linkov <[email-masked]>
Date: Fri, 02 Apr 2010 00:10:03 +0300

>> For the trunk, isn't it true that the function which actually goes to
>> a location is Info-find-node-2, and that all the others call it?  If
>> so, this is the main place to account for the inserted breadcrumbs.
>> We could maintain in some data structure the buffer positions and
>> length of each breadcrumbs line we insert, and then use that data
>> structure in Info-find-node-2 to compute the summary offset to be
>> applied in the current node.
>
> Here's another, perhaps better idea: how about if, instead of
> inserting breadcrumbs as text into the buffer, we put an overlay there
> with a display property whose value is the breadcrumbs as a string?
> This way, buffer positions are not affected at all.

I already tried this and some other kludges that showed their disadvantages.

In bug#4147 we concluded that the best solution would be to put
breadcrumbs to the header line where breadcrumb navigation links
belong to along with the links to the up/next/previous nodes.

Currently the header line has the limitation in only one glyph row.
But this is a general problem that should be solved one way or the other,
so different modes like Info, proced, ruler-mode could have their
own header window.  There is a successful prototype implementation
in bug#4147 that you also helped to develop.

-- 
Juri Linkov
http://www.jurta.org/emacs/