From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.bugs Subject: bug#66732: tree-sitter fontification doesn't update multi-line syntax reliably Date: Tue, 19 Dec 2023 14:44:17 +0200 Message-ID: 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> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="40721"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Cc: casouri@gmail.com, 66732@debbugs.gnu.org, dominik@honnef.co To: Eli Zaretskii , Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Dec 19 13:45:26 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 1rFZTQ-000AFQ-IF for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 19 Dec 2023 13:45:25 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rFZT5-0006aW-2l; Tue, 19 Dec 2023 07:45:04 -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 1rFZT3-0006YP-03 for bug-gnu-emacs@gnu.org; Tue, 19 Dec 2023 07:45:01 -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 1rFZT1-00051B-PL for bug-gnu-emacs@gnu.org; Tue, 19 Dec 2023 07:45:00 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rFZT4-0002xA-9P for bug-gnu-emacs@gnu.org; Tue, 19 Dec 2023 07:45:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 19 Dec 2023 12:45: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.170298987311287 (code B ref 66732); Tue, 19 Dec 2023 12:45:02 +0000 Original-Received: (at 66732) by debbugs.gnu.org; 19 Dec 2023 12:44:33 +0000 Original-Received: from localhost ([127.0.0.1]:34563 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rFZSa-0002vz-Ig for submit@debbugs.gnu.org; Tue, 19 Dec 2023 07:44:32 -0500 Original-Received: from out4-smtp.messagingengine.com ([66.111.4.28]:55257) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rFZSY-0002vj-GF for 66732@debbugs.gnu.org; Tue, 19 Dec 2023 07:44:30 -0500 Original-Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 9B6FB5C01D4; Tue, 19 Dec 2023 07:44:22 -0500 (EST) Original-Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Tue, 19 Dec 2023 07:44:22 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm3; t=1702989862; x=1703076262; bh=vIwfqrC/Ndc7/oFpB43vf2S/NcIKQwtLTiOSUNFJJLE=; b= O4K8DrpjsUAnK4sdz4uVTSklRDK4dEKe/KW8GyYJ45bfnktFXEdejpz8OI66Suio hij0ldADw2GG/bK6rccJlsRNcTWH/p3vmX508PvOQiv1+BVLmnBwB9l6JVvJ4UPx gV8/WH+9/EAEr5dSlUOjovYsfdbd+KbKkFHy2D89lzsD1diwpJ+qDtUqeUQldWhJ SGmUa6/CiEL4jnR6Wgtscn+PL06iWzdmtFhCpwmn/Q7YmEvoEJrmck767CMqpUZK YgcySfdjwKiqWKKHK3S3oTHTzXEwRDHNVM9xrgKyn/XMH1X8WGOrTMrrtjnBBHSj HrhS0daZHVB5B8RohHVNsQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1702989862; x= 1703076262; bh=vIwfqrC/Ndc7/oFpB43vf2S/NcIKQwtLTiOSUNFJJLE=; b=H cOT48ux3z22m1BVDCvCFzo/ntZY8SGAv9waxImvTS5iAtG2Iv1Grb2RvoCDE7ROl HcNnH99b1bVI+QWzIkVm8hzNOZZQxRMMffVGZj1w2J19RAiXom8XFTfqJeu0tq5W NE3aTc/o1HZWfG+s/TwttGERkFvSxC5RUhSPFXCcfpEROQrKe4Wh/R3zfIUx5Sjf kOnFsRg7xB6NAiQmoBd0VDxzccYCtmaBacEhBTcsuOaDMaRF1wLHOmjWIiBO38zN YhBa983frmLTEpCeGzqmsS6M6XWZW5EfS6bERkB3WzPj/NtyifVUGiIMfNwhXYMV huUU4XCBCaOsMLEJa5Wxw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvddutddggeegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth htvghrnhepiefgteevheevveffheeltdeukeeiieekueefgedugfefgefhudelgfefveel vdevnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hmihhtrhihsehguhhtohhvrdguvghv X-ME-Proxy: Feedback-ID: i0e71465a:Fastmail Original-Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 19 Dec 2023 07:44:20 -0500 (EST) Content-Language: en-US In-Reply-To: <83il4uicux.fsf@gnu.org> 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:276508 Archived-At: On 19/12/2023 14:41, Eli Zaretskii wrote: >> From: Stefan Monnier >> Cc: Dmitry Gutov,66732@debbugs.gnu.org, >> dominik@honnef.co,casouri@gmail.com >> Date: Mon, 18 Dec 2023 22:40:59 -0500 >> >>>> It seems like in our scenario the region does not get re-rendered even >>>> when some of the faces changed in there. >>> Can't happen. >> 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? We have a protocol: font-lock-extend-region-functions, but it's not working well enough due to the aforementioned problem. > Because otherwise the > modified region would have been re-rendered on the next redisplay > cycle at the latest. That does indeed happen, but seems too late from the user's POV.