How does the attached patch look?

I did not clear the syntax patch for the entire buffer because I was worried of the performance impact.
We assume that we won't be touching the part of the buffer before the specified start.
IIUC there is no issue keeping the cached state from before start using the original table,
as we only want to consider the text succeeding start as text.

On Mon, Jun 27, 2022 at 5:39 AM Stefan Monnier <monnier@iro.umontreal.ca> wrote:
> FIrst, changing `syntax-propertize-function` from nil to `ignore` was wrong
> IIUC.  If the function is set, then it is wholly responsible for applying
> syntax table.  When set to nil the default behavior is used, but when set
> to `ignore`, that should mean that no syntax is applied at all.  In
> practice, I don't know what behavior that causes.

The two behave identically (IOW the "default behavior" is the same as
that of `ignore`).

> Second, since `electric-pair--with-uncached-syntax` appears to be used for
> doing text-mode matching (as you've also observed), maybe we should
> de-generalize it to do only that.  I think that allows us to make some
> simplifying assumptions about the state of the world.

Sounds good.


        Stefan