Subject: Re: bug#4854: 23.1.50; before-string overlay and show-paren-mode

From: Stephen Berman <[email-masked]>
Date: Mon, 04 Jul 2016 00:23:18 +0200

On Sun, 03 Jul 2016 11:58:16 -0400 [email-masked] wrote:

> Eli Zaretskii <[email-masked]> writes:
>
>>> From: [email-masked]
>>> Date: Sun, 03 Jul 2016 11:36:01 -0400
>>> Cc: [email-masked]
>>> 
>>> Well, it's possible to avoid moving overlays to minibuffer, but then
>>> show-paren-mode stops working in the minibuffer, which I don't think is
>>> so great.
>>
>> To say the least.  Please don't, I edit expressions in the minibuffer
>> quite a lot, and find show-paren invaluable in general and there in
>> particular.
>
> Don't worry, I wasn't intending to.  That patch was just for
> demonstration.  

I completely agree that preventing show-paren-mode from working in the
minibuffer is out of the question.

>                 I suppose it might be possible to have paren overlay
> per-buffer, so that the overlay doesn't disappear and reappear all the
> time, but I don't think it's worth the complication.  I'm pretty sure it
> would remain possible to write a command that's able to observe some
> inconsistencies regardless: since show-paren-mode relies on idle-timers,
> the behaviour is affected by the timing of the user's keystrokes.  

It's probably not worth putting much effort into trying to change it,
though I still think it's surprising, and not unlikely an unintended
consequence of the implementation of show-paren-mode, that the effect of
invoking a command that interacts with it differs depending on how it's
invoked (self-insert-command is really a special case, I think).

>                                                                    It's
> best to write commands that are oblivious to what show-paren-mode does
> (e.g., the (cl-some ...) condition I posted in that same message).

This is certainly sound advice, and indeed I applied it long ago in
dealing with the issue (in todo-mode.el) that prompted this bug report.

Again, thanks for the feedback and clarifying the issue.  I'm closing
this bug now.

Steve Berman