Subject: Re: bug#64547: `show-paren-mode` thinks that a paren is offscreen in `M-:` when it isn't

From: Eli Zaretskii <[email-masked]>
Date: Sat, 15 Jul 2023 10:22:10 +0300

> Date: Sat, 15 Jul 2023 01:06:54 +0000
> From: [email-masked]
> Cc: [email-masked], [email-masked]
> 
> 1) Start `emacs -q` without the new change to paren.el.
> 
> 2) Set `show-paren-context-when-offscreen` to `overlay`.
> 
> 3) In a normal buffer (not the minibuffer), move to the end of a long 
> expression so that the starting parenthesis is no longer on the screen 
> and is not visible.
> 
> 4) See the overlay, as expected.
> 
> 5) Move inside the expression so that the overlay is no longer shown.
> 
> 6) Evaluate the new definition of `show-paren-function`.
> 
> 7) Move back to the end of the long expression.
> 
> 8) See that the overlay is no longer shown.
> 
> 
> I expected to see that the overlay would still be shown for the opening 
> parenthesis that is completely unseen.
> 
> I think that this happens because there is an expression `(not ... (or 
> (< (length part) 4) ...))` which resolves to `nil` when the parenthesis 
> is not visible and not partially visible, from what I can tell.
> 
> Does this make sense?

Thanks, now fixed as you suggested, and closing the bug.