* Re: before-string property has no effect if display property is empty string
[not found] <86k5qnfxgn.fsf@macs.hw.ac.uk>
@ 2007-09-19 15:48 ` Richard Stallman
2007-09-19 16:07 ` Joe Wells
0 siblings, 1 reply; 5+ messages in thread
From: Richard Stallman @ 2007-09-19 15:48 UTC (permalink / raw)
To: Joe Wells; +Cc: emacs-devel
The documentation leads me to believe that the before-string and
display properties of an overlay should be orthogonal. However, the
before-string is not displayed if the display property is the empty
string.
I think the thing to do is document this.
Does the same happen for the after-string?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: before-string property has no effect if display property is empty string
2007-09-19 15:48 ` before-string property has no effect if display property is empty string Richard Stallman
@ 2007-09-19 16:07 ` Joe Wells
2007-09-20 16:34 ` Richard Stallman
0 siblings, 1 reply; 5+ messages in thread
From: Joe Wells @ 2007-09-19 16:07 UTC (permalink / raw)
To: rms; +Cc: emacs-devel
Richard Stallman <rms@gnu.org> writes:
> The documentation leads me to believe that the before-string and
> display properties of an overlay should be orthogonal. However, the
> before-string is not displayed if the display property is the empty
> string.
>
> I think the thing to do is document this.
This is not clear. For example, linum.el makes empty overlays with
before-string properties and no display property at all. And this
works. So why shouldn't it work when there is a display property that
is the empty string?
> Does the same happen for the after-string?
It works fine with after-string. The following expression displays
“AXXXC” (correctly):
(let ((buf (get-buffer-create "foo")))
(with-current-buffer buf
(display-buffer buf)
(erase-buffer)
(dolist (o (overlays-in (point-min) (point-max)))
(delete-overlay o))
(insert "ABC")
(let ((o (make-overlay 2 3))
(s (make-string 3 ?X)))
(overlay-put o 'display "")
(overlay-put o 'after-string s))))
Given that it works with after-string, this is evidence for
interpreting the behavior with before-string as a bug.
--
Joe
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: before-string property has no effect if display property is empty string
2007-09-19 16:07 ` Joe Wells
@ 2007-09-20 16:34 ` Richard Stallman
2007-09-20 17:35 ` Joe Wells
0 siblings, 1 reply; 5+ messages in thread
From: Richard Stallman @ 2007-09-20 16:34 UTC (permalink / raw)
To: Joe Wells; +Cc: emacs-devel
> The documentation leads me to believe that the before-string and
> display properties of an overlay should be orthogonal. However, the
> before-string is not displayed if the display property is the empty
> string.
>
> I think the thing to do is document this.
This is not clear. For example, linum.el makes empty overlays with
before-string properties and no display property at all. And this
works. So why shouldn't it work when there is a display property that
is the empty string?
Logically it ought to work, but do we have anyone who can debug it and
fix it? Would you like to debug it?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: before-string property has no effect if display property is empty string
2007-09-20 16:34 ` Richard Stallman
@ 2007-09-20 17:35 ` Joe Wells
2007-09-23 9:07 ` Richard Stallman
0 siblings, 1 reply; 5+ messages in thread
From: Joe Wells @ 2007-09-20 17:35 UTC (permalink / raw)
To: rms; +Cc: emacs-devel
Richard Stallman <rms@gnu.org> writes:
> > The documentation leads me to believe that the
> > before-string and display properties of an overlay should
> > be orthogonal. However, the before-string is not
> > displayed if the display property is the empty string.
> >
> > I think the thing to do is document this.
>
> This is not clear. For example, linum.el makes empty overlays
> with before-string properties and no display property at all.
> And this works. So why shouldn't it work when there is a
> display property that is the empty string?
>
> Logically it ought to work, but do we have anyone who can debug it and
> fix it? Would you like to debug it?
I am too busy with my job to debug it.
I don't object to documenting it as a bug (hopefully to be fixed
someday). I think it is not the right choice to document it as the
correct behavior.
--
Joe
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: before-string property has no effect if display property is empty string
2007-09-20 17:35 ` Joe Wells
@ 2007-09-23 9:07 ` Richard Stallman
0 siblings, 0 replies; 5+ messages in thread
From: Richard Stallman @ 2007-09-23 9:07 UTC (permalink / raw)
To: Joe Wells; +Cc: emacs-devel
I don't believe in "documenting bugs". Bugs should be fixed,
not treated as permanent.
Would someone please debug this?
The documentation leads me to believe that the before-string and
display properties of an overlay should be orthogonal. However, the
before-string is not displayed if the display property is the empty
string.
Reproduce by evaluating this code:
(let ((buf (get-buffer-create "foo")))
(with-current-buffer buf
(display-buffer buf)
(erase-buffer)
(dolist (o (overlays-in (point-min) (point-max)))
(delete-overlay o))
(insert "ABC")
(let ((o (make-overlay 2 3))
(s (make-string 3 ?X)))
(overlay-put o 'display "")
(overlay-put o 'before-string s))))
You will see the foo window pop up and in the window you will see
AC. I expected that instead AXXXC would be shown.
> Does the same happen for the after-string?
It works fine with after-string.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-09-23 9:07 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <86k5qnfxgn.fsf@macs.hw.ac.uk>
2007-09-19 15:48 ` before-string property has no effect if display property is empty string Richard Stallman
2007-09-19 16:07 ` Joe Wells
2007-09-20 16:34 ` Richard Stallman
2007-09-20 17:35 ` Joe Wells
2007-09-23 9:07 ` Richard Stallman
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).