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.devel Subject: Re: Tree-sitter maturity Date: Sun, 29 Dec 2024 09:44:19 +0200 Message-ID: <86ed1rq6gc.fsf@gnu.org> References: <1ed88fca-788a-fe9f-b6c8-edb2f49751c9@mavit.org.uk> <67428b3d.c80a0220.2f3036.adbdSMTPIN_ADDED_BROKEN@mx.google.com> <86ldwdm7xg.fsf@gnu.org> <6765355b.c80a0220.1a6b24.3117SMTPIN_ADDED_BROKEN@mx.google.com> <00554790-CACA-4233-8846-9E091CF1F7AA@gmail.com> <86msgl2red.fsf@gnu.org> <87o710sr7y.fsf@debian-hx90.lan> <8734i9tmze.fsf@posteo.net> <86plldwb7w.fsf@gnu.org> <87ttapryxr.fsf@posteo.net> <0883EB00-3BB2-4BC8-95D1-45F4497C0526@dancol.org> <87plldrx6a.fsf@posteo.net> <87ikr5rwx0.fsf@posteo.net> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="34585"; mail-complaints-to="usenet@ciao.gmane.io" Cc: rms@gnu.org, rms@gnu.org, philipk@posteo.net, emacs-devel@gnu.org, manphiz@gmail.com To: Daniel Colascione Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Dec 29 08:45:11 2024 Return-path: Envelope-to: ged-emacs-devel@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 1tRnz5-0008p3-Eg for ged-emacs-devel@m.gmane-mx.org; Sun, 29 Dec 2024 08:45:11 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tRnyT-00055D-1s; Sun, 29 Dec 2024 02:44:33 -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 1tRnyQ-00054y-7q for emacs-devel@gnu.org; Sun, 29 Dec 2024 02:44:30 -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 1tRnyP-0005SH-CA; Sun, 29 Dec 2024 02:44:29 -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=hb9yynCYt3bh2PTcnlxWufXYFPsYVkPRpV4+tJaRIJY=; b=MZDoSp5RdOeJ vAtPpEZk9EZZ02GdBYQNdlUj4pyWBYQhvU/DIFH5YtlA56zz+9y/I2coVkaVZMs3U0Z712BWrHzcj zAX8NIHyjj8FvvFgIJow2p6fnThMgWoJIBzEW2cJdcun41sm1gCfxiuVG4z8lT6nJGUniq4iAx/6+ GLsfsSey4VmUPQ8SYefGkKsEny8ylMfEY/wjg+YzcTtnUwZfWTmIt5bda/Zt+j9GuX9AFlsANjh8e bQVfGulXiuiDdUEuToBafKAT+E1AkvEX9/Vi6B7WSF414IwkBbX0bMynhBbgs8OzptqDboTS7Sw0Z d8ATmLgOj/EhJHt7gv3CBQ==; In-Reply-To: (message from Daniel Colascione on Sat, 28 Dec 2024 23:23:55 -0500) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:327319 Archived-At: > Date: Sat, 28 Dec 2024 23:23:55 -0500 > From: Daniel Colascione > CC: emacs-devel@gnu.org, manphiz@gmail.com > > >In general, Emacs should not have a FOO-ts-mode without a correspnding > >FOO-mode. Otherwise users will get surprised. I'm not talking about > >_how_ they work, just that the commands should exist. > > Enforcing this policy will just mean that Emacs doesn't support *at all* some languages out of the box and will put even more wind in the sails of soft forks like Doom. Tree sitter language descriptions are free software. There's no reason not to rely on them. We started with this concept of adding tree-sitter based modes to auto-mode-alist by default, but found that people who don't have the grammar installed didn't appreciate seeing the warnings about the missing grammars. So Emacs 29 made these modes optional, activated only by an explicit user action. Emacs 30 still does that. We are currently discussing how to improve this (see the thread Re: Turning on/off tree-sitter modes, which seems to have stalled lately). But until the grammar libraries are ubiquitous, and we can rely on them being present on most systems, I think we will still need some user say-so before enabling tree-sitter based modes.