[gnu.emacs.bug] overlay-arrow-string

grunwald@flute.cs.uiuc.edu (Dirk Grunwald) (07/19/89)

when the overarrow is displayed, the value of overlay-arrow-string
is used to display the arrow.

however, if overlay-arrow-string is buffer-local, you notice that
the value used is the one of the *current buffer*, not the buffer
that the overlay-arrow is in.

Is this the intended behaviour, and, if so, why?

One could argue the case either way, but I think the more sensical
behaviour would be to display it using the overlay-arrow-string of the
buffer that the arrow resides in. Then, if you switch between e.g,
`vm' and `gdb-mode', you don't get trash for your arrows.
--
Dirk Grunwald -- Univ. of Illinois 		  (grunwald@flute.cs.uiuc.edu)

kjones@talos.uucp (Kyle Jones) (07/20/89)

Dirk Grunwald writes:
 > [...]
 > If overlay-arrow-string is buffer-local, you notice that
 > the value used is the one of the *current buffer*, not the buffer
 > that the overlay-arrow is in.
 > [...]
 > I think the more sensical behaviour would be to display it using the
 > overlay-arrow-string of the buffer that the arrow resides in.

This buffer the arrow resides is easily determined:

  (marker-buffer overlay-arrow-position)

But from what buffer do we get the value of overlay-arrow-position?
We need the value of overlay-arrow-position to figure out which buffer-local
value of overlay-arrow-position (and overlay-arrow-string) we should use.
In other words, which comes first, the chicken or the egg?

kyle jones   <kyle@cs.odu.edu>   ...!uunet!talos!kjones
"Death!" Mrs. Carmody screamed.  "Death to go out there!  Now do you see?"