From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Yuan Fu Newsgroups: gmane.emacs.bugs Subject: bug#59415: 29.0.50; [feature/tree-sitter] c-ts-mode fails to fontify a portion of a large C file Date: Mon, 21 Nov 2022 08:53:25 -0800 Message-ID: References: <83v8n94ij9.fsf@gnu.org> <87k03pwgf6.fsf@thornhill.no> <83h6yt4c12.fsf@gnu.org> <87v8n9qscd.fsf@thornhill.no> <87pmdhqqni.fsf@thornhill.no> <87tu2tthmr.fsf@thornhill.no> <83k03o2vb2.fsf@gnu.org> Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.1\)) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="2089"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 59415@debbugs.gnu.org, Theodor Thornhill To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Nov 21 17:54:14 2022 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 1oxA3h-0000Ld-SN for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 21 Nov 2022 17:54:13 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oxA3X-0002oD-TW; Mon, 21 Nov 2022 11:54:03 -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 1oxA3W-0002mA-1v for bug-gnu-emacs@gnu.org; Mon, 21 Nov 2022 11:54:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oxA3V-0004eZ-MX for bug-gnu-emacs@gnu.org; Mon, 21 Nov 2022 11:54:01 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oxA3V-0005O7-Is for bug-gnu-emacs@gnu.org; Mon, 21 Nov 2022 11:54:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Yuan Fu Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 21 Nov 2022 16:54:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 59415 X-GNU-PR-Package: emacs Original-Received: via spool by 59415-submit@debbugs.gnu.org id=B59415.166904961520666 (code B ref 59415); Mon, 21 Nov 2022 16:54:01 +0000 Original-Received: (at 59415) by debbugs.gnu.org; 21 Nov 2022 16:53:35 +0000 Original-Received: from localhost ([127.0.0.1]:48634 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oxA34-0005NF-T1 for submit@debbugs.gnu.org; Mon, 21 Nov 2022 11:53:35 -0500 Original-Received: from mail-pg1-f172.google.com ([209.85.215.172]:33318) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oxA32-0005Mt-2W for 59415@debbugs.gnu.org; Mon, 21 Nov 2022 11:53:32 -0500 Original-Received: by mail-pg1-f172.google.com with SMTP id b62so11735559pgc.0 for <59415@debbugs.gnu.org>; Mon, 21 Nov 2022 08:53:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=wpfpI9sEMExB2FpHiQVGvr2Sa8u+aQIaDKmeFmjYQfE=; b=NK/AGBzp6kAKJMtHlubR7RkVO4ybQsrtjcB9yuseRgeCjECO8A1HXOHGdrsUsFh3jv a2+pLG23GzOOe8Q3LD0Um7Nx1A7URmZ8OXWr7MLmpqeAqs2hRzfzAsAovmfXwA0dL/5X 7W54U2X3ehFmq4l1AQAIfwdPsDOA0suYp331DhwBplS60HtfCEmtXpBW/kz6Ee4Id1Ab d9z/yDuXxFtDf1Mk6MQFyNJ/QcjdCg3N7bEzfBkJdfXwIrqrOG34iDsmajmd1T3iOdfi Zg3s7+rMfP/8r3ZNHip4S8tyct7WbEoF3Zhli9w2FNxxgshuuAEt0/F9Wq34eymHVAY7 O/5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=wpfpI9sEMExB2FpHiQVGvr2Sa8u+aQIaDKmeFmjYQfE=; b=1ScEy2RnsUVT2PDRMKXewWL34KgRdDAnOp0lj81VCn5Qic6FqPLFmHS4m+T2uBinW8 a9esSVjeJfN8+p3lk4r7kwf+qEsCDZeol1NnlAnVcU3ibHABBzmeZuEeUAu2iJexfEwN qUdMISAW3cnbDlcDKeY/9YauuH96FBQh7fJEubuhVqUD9MKzIhrS/QCm+yVBMq1AC6lb z8qp7t7XDssBDFxqim7xMxPrxKSwNJndgUl3WpwxiMCrSw7UKXwUUPZ6U4Vp+Hgxrn9W gfRQPSgkW9SN9YqiJfTodR+XF65CfMGIHIKwdt8wzskZuyVYI0Qc4YeEqawIkxIaMXd6 tLAA== X-Gm-Message-State: ANoB5pmMghrVYD1TuMvCSWDexDK5T/VEnGLeF7HIESd2EJuVBn4ihz+a RrY/jgrHujo3aF0VDAgsL/Y= X-Google-Smtp-Source: AA0mqf7qg4MYJdIl+BHHNDWIV5dLJtUH9GHETCW4Ppux8Iu6PmK0iqbApUAv9X843cccv1V/n8bNlw== X-Received: by 2002:a05:6a00:1893:b0:56b:8282:b165 with SMTP id x19-20020a056a00189300b0056b8282b165mr1519603pfh.69.1669049606458; Mon, 21 Nov 2022 08:53:26 -0800 (PST) Original-Received: from smtpclient.apple (cpe-172-117-161-177.socal.res.rr.com. [172.117.161.177]) by smtp.gmail.com with ESMTPSA id ix11-20020a170902f80b00b001788ccecbf5sm9992317plb.31.2022.11.21.08.53.25 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 21 Nov 2022 08:53:26 -0800 (PST) In-Reply-To: <83k03o2vb2.fsf@gnu.org> X-Mailer: Apple Mail (2.3696.120.41.1.1) 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:248548 Archived-At: > On Nov 21, 2022, at 7:15 AM, Eli Zaretskii wrote: >=20 >> From: Yuan Fu >> Date: Sun, 20 Nov 2022 17:27:16 -0800 >> Cc: Eli Zaretskii , >> 59415@debbugs.gnu.org >>=20 >> I pushed a change that uses treesit-node-on. Now scrolling in most = parts of the buffer is pretty fast. Scrolling around 194770 is still = laggy, because the node we get from treesit-node-on is still too large. = I tried some heuristics but they didn=E2=80=99t work very well, IMO = because tree-sitter couldn=E2=80=99t parse that part of the code very = well. The code should observe a structure like {{}, {}, {}, {}, {}, =E2=80= =A6} where there are tens thousands of inner brackets, so ideally we = only need to grab the {}=E2=80=99s in the region we want to fontify. But = tree-sitter seems to understand it in some weird structure and we still = end up with very large nodes, which is far larger than the region we = want to fontify and is slow to query. >>=20 >> I=E2=80=99ll try to improve it further in the future, but for now I = think it=E2=80=99s good enough (because in most cases fontification is = pretty fast). >=20 > Agreed. >=20 > Thanks, I think we can close the bug now. >=20 > What do you think about enlarging treesit-max-buffer-size as I = proposed > up-thread? Yeah we should do it, but to what value though? 40MB? Yuan