Let jit-lock-after-change.el have:
(add-hook 'jit-lock-after-change-extend-region-functions
(lambda (_start _end _old-len)
(condition-case nil
(backward-up-list)
(scan-error nil)))
nil
t)
Start today's trunk by:
emacs -Q --load /tmp/jit-lock-after-change.el
Insert parentheses:
M-(
Inserted into *scratch* buffer:
) (
But expected:
()
I'm on RHEL 5.