From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.devel Subject: Re: Turning on/off tree-sitter modes Date: Thu, 28 Nov 2024 21:34:02 +0200 Organization: LINKOV.NET Message-ID: <87r06vw3th.fsf@mail.linkov.net> References: <86v7wgnxlz.fsf@gnu.org> <01d83ec8-c02b-4806-8764-38dc89a89125@gutov.dev> <86ttbzojho.fsf@gnu.org> <930f5c8e-1481-43a5-8f1d-2c13a98df74f@gutov.dev> <86r072krq5.fsf@gnu.org> <8b907a41-aa08-4b61-bced-7d4d3fcef4b2@gutov.dev> <87frnhsvp3.fsf@mail.linkov.net> <0d1e2770-0889-4862-8105-8a5f4631b11c@gutov.dev> <87ed31gku5.fsf@mail.linkov.net> <86plmljbsm.fsf@gnu.org> <8734jgftif.fsf@mail.linkov.net> <86ttbwihp6.fsf@gnu.org> <4f8f8b97-6650-4a6f-b121-82964fec49cf@gutov.dev> <86o723ikga.fsf@gnu.org> <41e2710f-d612-40e2-9037-d8d388c5edc7@gutov.dev> <86ldx6gjai.fsf@gnu.org> <878qt588qb.fsf@mail.linkov.net> <277bed39-bad3-4464-8ca8-506428a5ba2e@gutov.dev> <878qt36a69.fsf@mail.linkov.net> <771f99be-efb9-44b2-9f3a-726336f25889@gutov.dev> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="33289"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) Cc: Eli Zaretskii , johan.myreen@gmail.com, emacs-devel@gnu.org To: Dmitry Gutov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Nov 28 20:37:15 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 1tGkKB-0008ag-9d for ged-emacs-devel@m.gmane-mx.org; Thu, 28 Nov 2024 20:37:15 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tGkJG-0005EI-AG; Thu, 28 Nov 2024 14:36:18 -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 1tGkJE-0005E4-2e for emacs-devel@gnu.org; Thu, 28 Nov 2024 14:36:16 -0500 Original-Received: from relay8-d.mail.gandi.net ([217.70.183.201]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tGkJB-0000et-Vs; Thu, 28 Nov 2024 14:36:15 -0500 Original-Received: by mail.gandi.net (Postfix) with ESMTPSA id 14A901BF203; Thu, 28 Nov 2024 19:36:03 +0000 (UTC) In-Reply-To: <771f99be-efb9-44b2-9f3a-726336f25889@gutov.dev> (Dmitry Gutov's message of "Thu, 28 Nov 2024 20:50:27 +0200") X-GND-Sasl: juri@linkov.net Received-SPF: pass client-ip=217.70.183.201; envelope-from=juri@linkov.net; helo=relay8-d.mail.gandi.net X-Spam_score_int: -34 X-Spam_score: -3.5 X-Spam_bar: --- X-Spam_report: (-3.5 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.932, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action 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:325831 Archived-At: >>>>> Major Mode Remap Alist: >>>>> List of remappings: >>>>> INS DEL >>>>> Remap from major mode: js-mode >>>>> To mode (or function): js-ts-mode >>>> Here mode names are nicely aligned, >>>> so it's easier to read for users. >>> >> - :offset 12 >> + :offset 9 > > Maybe 10? With 9, it still doesn't line up on my display (the buttons' > margins drive the offset), but hangs over for like 0.5 character width. > > With 10, the result look more intentional, though I'm not sure if the > original plan (in Emacs 25?) was to have a different indentation or not. And can't be aligned with proportional fonts anyway. There is even a wishlist item in wid-edit.el: ;; * Make indentation work with glyphs and proportional fonts. >> + :options '((js-mode (function :value js-ts-mode)) >> + (ruby-mode (function :value ruby-ts-mode))) > > This :options hunk is a nice illustration, but if it's a serious proposal > I wonder which set of modes would be appropriate to have here. All or most > ts modes? Probably the list of all ts-modes would be too long. I can count 28 ts-modes in Emacs core. > Note we still won't be able to cover all tree-sitter modes this way because > a large part of them doesn't have any corresponding "traditional" modes and > so no existing auto-mode-alist entries. Such ts-modes can be associated with a non-ts placeholder like this wishlist item in lisp/progmodes/go-ts-mode.el: ;; FIXME: Should we instead put `go-mode' in `auto-mode-alist' ;; and then use `major-mode-remap-defaults' to map it to `go-ts-mode'? (add-to-list 'auto-mode-alist '("\\.go\\'" . go-ts-mode))