From: Vitalie Spinu <spinuvit@gmail.com>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: emacs-devel@gnu.org
Subject: Re: trunk r116426: * lisp/jit-lock.el (jit-lock-mode): Keep it disabled in indirect buffers.
Date: Sat, 24 May 2014 02:46:03 -0700 [thread overview]
Message-ID: <87d2f3y0f8.fsf@gmail.com> (raw)
In-Reply-To: <jwvsinz51qt.fsf-monnier+emacs@gnu.org> (Stefan Monnier's message of "Fri, 23 May 2014 23:10:43 -0400")
>>> Stefan Monnier on Fri, 23 May 2014 23:10:43 -0400 wrote:
[...]
> Why prohibit the hooks from the base buffer? If they're there it's
> presumably because they're needed.
I thought that foreign chunks should be completely invisible. Your
example disproves the point, indeed. Thanks.
[...]
> OK, let's say you chunks
> chunk 1 in mode A
> chunk 2 in mode B
> chunk 3 in mode A
> And let's say that mode A does some clever caching, so it sets up an
> after-change-functions hook to flush its cache. Now you go and delete
> a block of text in chunk 3, mode A is not warned about it and fails to
> flush its cache which now holds completely broken data about chunk 3.
> Of course, running the after-change-functions only in the base buffer
> won't directly help with that.
If the patch that you propose is ever implemented, local hooks will
still be run in current buffer, right?
Coming back to the original jit-lock problem. I still have no clue how
to fix it without copying the whole initialization part of jit-lock into
polymode.
> So when jit-lock is triggered it has to refontify in all buffers that
> share the same base buffer. And if font-lock is activated in several
> buffers which share the same base buffer, they'll fight over their
> shared `face' text-property.
I have just tried this in emacs 24.3.1 and font-lock is triggered only
once in indirect buffers. So it's either some corner case that you are
talking about, or font-lock was broken after 24.3.1 and then you "fixed"
it in:
commit 6e5d23387db48e9bdf116e59bf7ef717c61982a3
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Date: Wed Feb 12 22:29:47 2014 -0500
* lisp/jit-lock.el (jit-lock-mode): Keep it disabled in indirect buffers.
This patch doesn't affect cloning and jit-lock is still active in cloned
indirect buffers.
Vitalie
next prev parent reply other threads:[~2014-05-24 9:46 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-07 18:34 trunk r116426: * lisp/jit-lock.el (jit-lock-mode): Keep it disabled in indirect buffers João Távora
2014-04-07 20:37 ` Glenn Morris
2014-04-07 20:48 ` João Távora
2014-04-07 20:40 ` Stefan Monnier
2014-05-22 4:51 ` Vitalie Spinu
2014-05-23 13:27 ` Stefan Monnier
2014-05-23 17:58 ` Vitalie Spinu
2014-05-23 20:49 ` Stefan Monnier
2014-05-23 23:15 ` Vitalie Spinu
2014-05-24 3:10 ` Stefan Monnier
2014-05-24 9:46 ` Vitalie Spinu [this message]
2014-05-24 14:35 ` Stefan Monnier
2014-05-30 19:26 ` Vitalie Spinu
2014-05-30 19:54 ` Stefan Monnier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87d2f3y0f8.fsf@gmail.com \
--to=spinuvit@gmail.com \
--cc=emacs-devel@gnu.org \
--cc=monnier@iro.umontreal.ca \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.