Subject: Re: bug#59141: 28.1.90; Face :extend when all the line but trailing \n is invisible

From: Ihor Radchenko <[email-masked]>
Date: Thu, 10 Nov 2022 01:36:14 +0000

Juri Linkov <[email-masked]> writes:

> Here is an experimental patch for outline.el
> that demonstrates a possible way to fix this:
>
> diff --git a/lisp/outline.el b/lisp/outline.el
> index a646f71db8..73ae707821 100644
> --- a/lisp/outline.el
> +++ b/lisp/outline.el
> @@ -930,7 +930,8 @@ outline-flag-region
>      ;; We use `front-advance' here because the invisible text begins at the
>      ;; very end of the heading, before the newline, so text inserted at FROM
>      ;; belongs to the heading rather than to the entry.
> -    (let ((o (make-overlay from to nil 'front-advance)))
> +    (let ((o (make-overlay from (1+ to))))
> +      (overlay-put o 'display "\n")

Note that 'font-advance is there for a reason.

Also, what will happen with ellipsis when there is 'display property?

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>