unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Nested display strings
@ 2011-04-23 16:44 Eli Zaretskii
  2011-04-23 19:42 ` Andreas Röhler
                   ` (3 more replies)
  0 siblings, 4 replies; 34+ messages in thread
From: Eli Zaretskii @ 2011-04-23 16:44 UTC (permalink / raw)
  To: emacs-devel

The following 4 lines define two overlays with display strings, with
the second overlay "nested" inside the first one:

(defvar myov1 (make-overlay 16 51))
(overlay-put myov1 'display "STRING1")
(defvar myov2 (make-overlay 29 43))
(overlay-put myov2 'display "STRING2")

If you evaluate this in the *scratch* buffer, the result is this:

;; This buffer STRING1STRING2STRING1, and for Lisp evaluation.

That is, STRING1 is displayed twice!  Is this a bug or a feature?

I asked Gerd Möllmann, and he told me that this is an accident: what
he really meant was, once STRING1 is displayed, to skip to the end of
its overlay, so that the nested overlay myov2 would not be displayed
at all.

However, after so many years (this is how Emacs behaves since v21.1),
perhaps we should keep this behavior.  Does anyone know any real-life
use cases where this "feature" is needed or would be beneficial?

The reason I'm asking is that whether we keep or remove this feature
affects the detailed design of how bidirectional text should be
reordered in the presence of display properties and overlay strings.




^ permalink raw reply	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2011-04-28 18:42 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-04-23 16:44 Nested display strings Eli Zaretskii
2011-04-23 19:42 ` Andreas Röhler
2011-04-23 20:07   ` Eli Zaretskii
2011-04-23 20:31 ` Drew Adams
2011-04-23 22:16   ` Eli Zaretskii
2011-04-23 23:20     ` Drew Adams
2011-04-24  6:25       ` Eli Zaretskii
2011-04-24  5:01 ` Stefan Monnier
2011-04-24 17:37   ` Eli Zaretskii
2011-04-25 12:47     ` Stefan Monnier
2011-04-25 13:29       ` Eli Zaretskii
2011-04-25 14:57         ` Stefan Monnier
2011-04-25 19:03           ` Juanma Barranquero
2011-04-25 19:41       ` Chong Yidong
2011-04-25 19:56         ` Eli Zaretskii
2011-04-26 18:04           ` Chong Yidong
2011-04-26 18:28             ` Eli Zaretskii
2011-04-26 12:53         ` Stefan Monnier
2011-04-26 17:51           ` Eli Zaretskii
2011-04-26 18:13             ` Ted Zlatanov
2011-04-26 18:25               ` Eli Zaretskii
2011-04-26 18:35                 ` chad
2011-04-26 18:50                   ` Ted Zlatanov
2011-04-26 19:19                   ` Drew Adams
2011-04-28  0:45             ` Stefan Monnier
2011-04-28 16:48               ` Eli Zaretskii
2011-04-28 18:42                 ` Stefan Monnier
2011-04-26 20:51           ` Chong Yidong
2011-04-27  0:59             ` Stefan Monnier
2011-04-26 14:46       ` Richard Stallman
2011-04-24  5:19 ` Michael Welsh Duggan
2011-04-24  6:17   ` Eli Zaretskii
2011-04-24  6:22     ` Michael Welsh Duggan
2011-04-24  6:31   ` Andreas Röhler

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).