From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#66732: tree-sitter fontification doesn't update multi-line syntax reliably Date: Sat, 23 Dec 2023 12:17:41 +0200 Message-ID: <838r5ldxyy.fsf@gnu.org> References: <878r7s5cdf.fsf@honnef.co> <83fs1tbou1.fsf@gnu.org> <835y1zo3rw.fsf@gnu.org> <2ce274aa-6d01-4d0a-b10c-07f821343fed@gmail.com> <50920549-006c-0153-2471-02e41a3dada7@gutov.dev> <8c7cd429-bdc3-4fac-ad1c-fbad793bf1a0@gmail.com> <231ebcd1-ec30-0432-82e7-d63e11cd65f7@gutov.dev> <765D713E-9923-4F66-9044-9D69C104C9B0@gmail.com> <33fe5d61-5022-67c5-6a65-babde4fb7f91@gutov.dev> <92CACD38-9534-4A07-8DE3-CE8408272FB6@gmail.com> <59CC46F7-867E-4C74-83EC-49B41DF0FAB8@gmail.com> <8fa0e506-6efc-57d4-6034-e938f97b1fb0@gutov.dev> <83plz3i9vv.fsf@gnu.org> <83o7emj2qd.fsf@gnu.org> <83il4uicux.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="3226"; mail-complaints-to="usenet@ciao.gmane.io" Cc: dmitry@gutov.dev, casouri@gmail.com, 66732@debbugs.gnu.org, dominik@honnef.co To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Dec 23 11:19:05 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rGz5z-0000c7-OI for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 23 Dec 2023 11:19:03 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rGz5v-0005dB-I2; Sat, 23 Dec 2023 05:18:59 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rGz5t-0005cd-98 for bug-gnu-emacs@gnu.org; Sat, 23 Dec 2023 05:18:57 -0500 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rGz5t-0002Gj-0M for bug-gnu-emacs@gnu.org; Sat, 23 Dec 2023 05:18:57 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rGz5y-0003X8-3b for bug-gnu-emacs@gnu.org; Sat, 23 Dec 2023 05:19:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 23 Dec 2023 10:19:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66732 X-GNU-PR-Package: emacs Original-Received: via spool by 66732-submit@debbugs.gnu.org id=B66732.170332669913529 (code B ref 66732); Sat, 23 Dec 2023 10:19:02 +0000 Original-Received: (at 66732) by debbugs.gnu.org; 23 Dec 2023 10:18:19 +0000 Original-Received: from localhost ([127.0.0.1]:48666 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rGz5H-0003W8-6T for submit@debbugs.gnu.org; Sat, 23 Dec 2023 05:18:19 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:60810) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rGz5F-0003Vu-Ap for 66732@debbugs.gnu.org; Sat, 23 Dec 2023 05:18:18 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rGz4y-0002AF-1Y; Sat, 23 Dec 2023 05:18:00 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=237uOv7vc0cJNgNpEtPhaKUOzDPMcbMrL4JDs/nejsM=; b=fo3mLueH4v1Q 0xunH6mr0LS2VivxjTjc8ZagH2At2T8HyPEmGLQ9fgAEOASg4AEMyRanoIrZYQVqlx1TLD+ms/3SZ kiocTF7vaxxNbm6xzc1n+NItWWyeu/HIgeRw1THlG0ok7kv4u7V8SGzgqnGpD2H0SZLAKJIiWDQoi XigAh4wDFkytUP6D3NodsSN1iMskx7TCXiUpyjiIhkHsBPSB/EY4e0kcPe7Wtx0cCFLNpVE0MqcLE jw1UCdngokqL2ab3YVBka16C1TdRIWfRptzp/qY62PWSmmSGKC6861YqxasvJmFGae8Xqr0Fb7QPX 2xVupLX4k9XeYia/bARypA==; In-Reply-To: (message from Stefan Monnier on Wed, 20 Dec 2023 15:50:21 -0500) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:276728 Archived-At: > From: Stefan Monnier > Cc: dmitry@gutov.dev, 66732@debbugs.gnu.org, dominik@honnef.co, > casouri@gmail.com > Date: Wed, 20 Dec 2023 15:50:21 -0500 > > >> I think Dmitry is talking about the case where the faces were change > >> after the text was rendered (but before the end of the redisplay cycle). > >> > >> I.e. the redisplay starts, renders up to position POS, then calls > >> jit-lock because `fonfitied` is nil, and jit-lock modifies faces of text > >> *before* POS. > > > > This can only happen if a function called from jit-lock doesn't comply > > to the protocol wrt such changes, right? > > I'm talking about a problem in the interaction between the redisplay > a jit-lock itself. > > Jit-lock is aware of it and uses `jit-lock-force-redisplay` as needed to > account for it. > > > Because otherwise the modified region would have been re-rendered on > > the next redisplay cycle at the latest. > > Yes, if the jit-lock client (e.g. font-lock) follows the protocol, then > jit-lock should take care to re-render the regions when/where needed. > > *Except* that the implementation of `jit-lock-force-redisplay` is > not effective and needs a change like the one suggested by Dmitry. So can we install that change and close this bug, then?