bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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


From: Juri Linkov
Subject: bug#59141: 28.1.90; Face :extend when all the line but trailing \n is invisible
Date: Thu, 10 Nov 2022 09:45:11 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (x86_64-pc-linux-gnu)

>> 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?

Then ellipsis could be added to (overlay-put o 'display "...\n").

Alternatively, maybe it would be sufficient to put the 'display "\n" property
only on the final newline, thus hiding its face properties.
The drawback is that it requires more overlays.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]