GNU bug report logs - #16760
Ellipses lose all decorative features when 'invisible' overlay starts at a point where underlying text changes its 'face' property.

Previous Next

Package: emacs;

Reported by: Pontus Michael <m.pontus <at> gmail.com>

Date: Sat, 15 Feb 2014 00:05:01 UTC

Severity: normal

Done: Marcin Borkowski <mbork <at> mbork.pl>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Pontus Michael <m.pontus <at> gmail.com>
Subject: bug#16760: closed (Re: bug#16760: Ellipses lose all decorative
 features when 'invisible' overlay starts at a point where underlying text
 changes its 'face' property.)
Date: Fri, 12 Feb 2016 20:16:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#16760: Ellipses lose all decorative features when 'invisible' overlay starts at a point where underlying text changes its 'face' property.

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 16760 <at> debbugs.gnu.org.

-- 
16760: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16760
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Marcin Borkowski <mbork <at> mbork.pl>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: m.pontus <at> gmail.com, 16760-done <at> debbugs.gnu.org
Subject: Re: bug#16760: Ellipses lose all decorative features when 'invisible'
 overlay starts at a point where underlying text changes its 'face' property.
Date: Fri, 12 Feb 2016 21:15:23 +0100
On 2016-02-08, at 04:29, Eli Zaretskii <eliz <at> gnu.org> wrote:

>> From: Marcin Borkowski <mbork <at> mbork.pl>
>> Cc: m.pontus <at> gmail.com, 16760 <at> debbugs.gnu.org
>> Date: Sun, 07 Feb 2016 23:24:37 +0100
>> 
>> >> The screenshot was taken with GNU Emacs 25.1.50.1, started as emacs -Q.
>> >
>> > Strange.  Is that current master?  I cannot reproduce this, neither on
>> > master nor on emacs-25.  Here, the dots on the 2nd line are of correct
>> > size and their color is red.
>> 
>> Magit says: eb0643c master.
>
> That's almost a month ago.  It's possible that the fix was merged to
> master later than that.  Can you try a more recent repository?  Or
> build the emacs-25 branch?
>
> Thanks.

Hi, Eli,

I finally checked this and it is indeed fixed in master.  Also, the
problem with ellipses not scaling together woth the text in Org-mode
(which I suspected was related to this) seems also to be fixed.  That is
really great, thank you!  I'm closing this bug.

Best

-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Faculty of Mathematics and Computer Science
Adam Mickiewicz University

[Message part 3 (message/rfc822, inline)]
From: Pontus Michael <m.pontus <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: Ellipses lose all decorative features when 'invisible' overlay starts
 at a point where underlying text changes its 'face' property.
Date: Sat, 15 Feb 2014 03:40:36 +0400
[Message part 4 (text/plain, inline)]
I am able to reproduce this issue running emacs -Q with "GNU Emacs
24.3.50.1 (i686-pc-linux-gnu, GTK+ Version 3.6.3)".
I've wrote a snippet that will allow me to demonstrate this issue:

    (let ((str (concat (propertize "red" 'face '((:foreground "red")))
                       (propertize "green" 'face '((:foreground "green")))
                       (propertize "blue" 'face '((:foreground "blue")))))
          (printer (lambda (offset)
                     (let* ((pos1 (+ offset (point)))
                            (pos2 (+ 1 (length str) pos1)))
                       (insert str ?\s str ?\n)
                       (overlay-put (make-overlay pos1 (+ 3 pos1))
                                    'face '((:inverse-video t)))
                       (overlay-put (make-overlay pos2 (+ 3 pos2))
                                    'invisible 'outline)))))
      (with-current-buffer (get-buffer-create "*test*")
        (setq buffer-invisibility-spec '((outline . t)))
        (text-scale-set 4)
        (display-buffer (current-buffer))
        (erase-buffer)
        (mapc printer '(2 3 4))))

After running this code you will be able to see, in a new buffer, 3 lines
of 2 words, all words are the same, each line features three-letter long
overlay over each of the words, highlighting letters underneath them on
left side, and hiding them behind ellipses on right side.

Whenever an overlay spans from a point where there's a change to 'face'
text-property, produced ellipsis doesn't adopt face decoration of neither
side. Furthermore, ellipsis part of the buffer appears to ignore current
text-scale setting, which is being set to 4 for temporary buffer in my
example.

Thank you for your attention.
All corrections that may help me improve my further reports are welcomed.
[Message part 5 (text/html, inline)]

This bug report was last modified 9 years and 159 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.