From: Eli Zaretskii <eliz@gnu.org>
To: Juri Linkov <juri@linkov.net>
Cc: dmitry@gutov.dev, johan.myreen@gmail.com, emacs-devel@gnu.org
Subject: Re: Turning on/off tree-sitter modes
Date: Fri, 29 Nov 2024 09:05:05 +0200 [thread overview]
Message-ID: <864j3qcyfy.fsf@gnu.org> (raw)
In-Reply-To: <87r06vw3th.fsf@mail.linkov.net> (message from Juri Linkov on Thu, 28 Nov 2024 21:34:02 +0200)
> From: Juri Linkov <juri@linkov.net>
> Cc: Eli Zaretskii <eliz@gnu.org>, johan.myreen@gmail.com, emacs-devel@gnu.org
> Date: Thu, 28 Nov 2024 21:34:02 +0200
>
> >>>>> 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.
This should be solvable by using :align-to or :width 'display' space
properties.
>
> >> + :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.
If the list starts with "All" and "None", the length of the rest is of
secondary importance.
But more generally, this clearly shows limitations of Customize for
large or complex data structures. We should perhaps consider a user
command that shows a dialog box or a child frame with checkbox for
each remapping, letting users just click or press RET on those they
want.
> > 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))
Alternatively, we could use a command that allows to activate one or
more tree-sitter modes, regardless of whether there are alternative
modes. For modes which have no alternatives, such a command will just
set up auto-mode-alist.
next prev parent reply other threads:[~2024-11-29 7:05 UTC|newest]
Thread overview: 182+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-06 7:32 An anonymous IRC user's opinion Abraham S.A.H. via Emacs development discussions.
2024-10-06 8:10 ` Emanuel Berg
2024-10-06 8:44 ` Dr. Arne Babenhauserheide
2024-10-06 9:01 ` Emanuel Berg
2024-10-06 9:09 ` Emanuel Berg
2024-10-06 9:32 ` Abraham S.A.H. via Emacs development discussions.
2024-10-06 11:28 ` Dr. Arne Babenhauserheide
2024-10-06 13:10 ` Emanuel Berg
2024-10-06 12:55 ` Emanuel Berg
2024-10-09 3:29 ` Richard Stallman
2024-10-09 20:20 ` Emanuel Berg
2024-10-10 8:57 ` Dr. Arne Babenhauserheide
2024-10-09 3:30 ` Richard Stallman
2024-10-09 6:48 ` Dr. Arne Babenhauserheide
2024-10-09 20:22 ` Emanuel Berg
2024-10-09 11:09 ` Johan Myréen
2024-10-09 13:13 ` Eli Zaretskii
2024-10-09 13:38 ` tomas
2024-10-09 16:02 ` Dr. Arne Babenhauserheide
2024-10-09 16:22 ` Eli Zaretskii
2024-10-09 21:55 ` Emanuel Berg
2024-10-10 7:25 ` Eli Zaretskii
2024-10-10 9:35 ` Dr. Arne Babenhauserheide
2024-10-10 10:42 ` Eli Zaretskii
2024-10-13 3:29 ` Richard Stallman
2024-10-10 6:07 ` Emanuel Berg
2024-10-09 16:06 ` Johan Myréen
2024-10-09 16:12 ` Ship Mints
2024-10-09 16:25 ` Eli Zaretskii
2024-10-09 21:25 ` Dmitry Gutov
2024-10-10 4:56 ` Eli Zaretskii
2024-10-10 5:14 ` Xiyue Deng
2024-10-10 6:36 ` Eli Zaretskii
2024-10-10 6:59 ` Xiyue Deng
2024-10-11 20:30 ` Dmitry Gutov
2024-10-12 7:34 ` Eli Zaretskii
2024-10-12 20:27 ` Dmitry Gutov
2024-10-12 21:00 ` Dr. Arne Babenhauserheide
2024-10-13 4:53 ` Eli Zaretskii
2024-10-13 6:28 ` Dr. Arne Babenhauserheide
2024-10-13 4:41 ` Eli Zaretskii
2024-10-13 9:37 ` Dmitry Gutov
2024-10-13 10:39 ` Eli Zaretskii
2024-10-13 15:31 ` Dmitry Gutov
2024-10-13 15:53 ` Eli Zaretskii
2024-10-14 9:32 ` Dmitry Gutov
2024-10-14 11:09 ` Alan Mackenzie
2024-10-15 1:41 ` Dmitry Gutov
2024-10-14 14:16 ` Eli Zaretskii
2024-10-15 1:36 ` Dmitry Gutov
2024-10-15 12:03 ` Eli Zaretskii
2024-11-03 3:10 ` Dmitry Gutov
2024-11-03 6:37 ` Eli Zaretskii
2024-11-03 19:24 ` Dmitry Gutov
2024-11-04 12:04 ` Eli Zaretskii
2024-11-04 12:11 ` Eli Zaretskii
2024-11-04 17:41 ` Dmitry Gutov
2024-11-04 19:18 ` Eli Zaretskii
2024-11-04 20:59 ` Dmitry Gutov
2024-11-05 12:11 ` Eli Zaretskii
2024-11-05 17:05 ` Dmitry Gutov
2024-11-05 17:28 ` Eli Zaretskii
2024-11-05 19:40 ` Dmitry Gutov
2024-11-05 19:53 ` Eli Zaretskii
2024-11-05 20:59 ` Dmitry Gutov
2024-11-06 12:15 ` Eli Zaretskii
2024-11-06 12:46 ` Dmitry Gutov
2024-11-06 13:25 ` Eli Zaretskii
2024-11-06 16:07 ` Dmitry Gutov
2024-11-06 17:14 ` Eli Zaretskii
2024-11-19 2:44 ` Dmitry Gutov
2024-11-19 15:41 ` Eli Zaretskii
2024-11-19 16:13 ` Dmitry Gutov
2024-11-19 17:10 ` Eli Zaretskii
2024-11-19 17:40 ` Dmitry Gutov
2024-11-19 17:47 ` Eli Zaretskii
2024-11-19 17:56 ` Dmitry Gutov
2024-11-19 19:01 ` Eli Zaretskii
2024-11-19 20:12 ` Dmitry Gutov
2024-11-20 12:59 ` Eli Zaretskii
2024-11-20 18:38 ` Dmitry Gutov
2024-11-20 19:01 ` Eli Zaretskii
2024-11-20 19:23 ` Dmitry Gutov
2024-11-20 19:55 ` Eli Zaretskii
2024-11-20 19:57 ` Dmitry Gutov
2024-11-21 5:46 ` Eli Zaretskii
2024-11-21 19:47 ` Dmitry Gutov
2024-11-21 20:03 ` Eli Zaretskii
2024-11-21 20:11 ` Dmitry Gutov
2024-11-21 20:24 ` Eli Zaretskii
2024-11-21 20:56 ` Dmitry Gutov
2024-11-22 6:44 ` Eli Zaretskii
2024-11-22 15:08 ` Dmitry Gutov
2024-11-23 13:24 ` Turning on/off tree-sitter modes (was: An anonymous IRC user's opinion) Eli Zaretskii
2024-11-23 16:26 ` Turning on/off tree-sitter modes Dmitry Gutov
2024-11-23 16:36 ` Eli Zaretskii
2024-11-24 2:40 ` Dmitry Gutov
2024-11-24 13:59 ` Steinar Bang
2024-11-23 17:51 ` Juri Linkov
2024-11-23 18:50 ` Eli Zaretskii
2024-11-23 19:23 ` Juri Linkov
2024-11-24 2:21 ` Dmitry Gutov
2024-11-24 15:28 ` Stefan Monnier
2024-11-24 5:32 ` Commands that change user options? [was: Turning on/off tree-sitter modes] Drew Adams
2024-11-24 10:23 ` Turning on/off tree-sitter modes Stephen Berman
2024-11-24 2:29 ` Dmitry Gutov
2024-11-24 7:29 ` Juri Linkov
2024-11-24 8:06 ` Eli Zaretskii
2024-11-24 17:29 ` Juri Linkov
2024-11-24 18:56 ` Eli Zaretskii
2024-11-25 0:44 ` Dmitry Gutov
2024-11-25 7:24 ` Juri Linkov
2024-11-25 12:09 ` Eli Zaretskii
2024-11-26 0:35 ` Dmitry Gutov
2024-11-26 0:40 ` Dmitry Gutov
2024-11-26 14:30 ` Eli Zaretskii
2024-11-26 14:29 ` Eli Zaretskii
2024-11-26 18:42 ` Dmitry Gutov
2024-11-26 18:45 ` Dmitry Gutov
2024-11-26 20:16 ` Eli Zaretskii
2024-11-26 21:36 ` Dmitry Gutov
2024-11-26 20:16 ` Eli Zaretskii
2024-11-26 20:32 ` Dmitry Gutov
2024-11-27 7:27 ` Juri Linkov
2024-11-27 12:36 ` Dmitry Gutov
2024-11-28 7:58 ` Juri Linkov
2024-11-28 18:50 ` Dmitry Gutov
2024-11-28 19:34 ` Juri Linkov
2024-11-28 19:51 ` Dmitry Gutov
2024-11-29 7:17 ` Juri Linkov
2024-11-29 7:05 ` Eli Zaretskii [this message]
2024-11-26 4:54 ` Turning on/off tree-sitter modes (was: An anonymous IRC user's opinion) Richard Stallman
2024-11-26 15:17 ` Eli Zaretskii
2024-11-29 18:09 ` Turning on/off tree-sitter modes Stefan Monnier via Emacs development discussions.
2024-11-30 3:26 ` Dmitry Gutov
2024-11-30 7:38 ` Eli Zaretskii
2024-11-30 18:49 ` Stefan Monnier
2024-12-02 2:04 ` Dmitry Gutov
2024-12-02 2:58 ` Stefan Monnier
2024-12-02 12:46 ` Eli Zaretskii
2024-12-02 12:41 ` Eli Zaretskii
2024-12-03 3:30 ` Stefan Monnier
2024-12-03 12:45 ` Eli Zaretskii
2024-12-03 13:26 ` Stefan Monnier
2024-12-03 14:14 ` Eli Zaretskii
2024-12-03 14:55 ` Stefan Monnier
2024-12-03 16:45 ` Eli Zaretskii
2024-12-03 17:10 ` Stefan Monnier
2024-12-03 17:14 ` Eli Zaretskii
2024-12-04 1:47 ` Dmitry Gutov
2024-12-04 2:14 ` Stefan Monnier
2024-12-04 12:56 ` Eli Zaretskii
2024-12-04 13:12 ` Dmitry Gutov
2024-11-30 18:24 ` Juri Linkov
2024-11-19 17:59 ` An anonymous IRC user's opinion Juri Linkov
2024-11-19 19:52 ` Dmitry Gutov
2024-11-20 16:47 ` Philip Kaludercic
2024-11-20 17:36 ` Juri Linkov
2024-11-20 18:07 ` Dmitry Gutov
2024-11-05 13:21 ` Dr. Arne Babenhauserheide
2024-11-05 13:47 ` Eli Zaretskii
2024-11-05 16:52 ` Dr. Arne Babenhauserheide
2024-11-05 17:22 ` Eli Zaretskii
2024-11-05 17:49 ` Philip Kaludercic
2024-11-05 19:23 ` Dr. Arne Babenhauserheide
2024-11-06 0:09 ` Philip Kaludercic
2024-11-06 9:35 ` Dr. Arne Babenhauserheide
2024-11-06 9:59 ` Philip Kaludercic
2024-11-07 14:16 ` Automatic Suggestion of Packages Philip Kaludercic
2024-11-07 16:07 ` Visuwesh
2024-11-07 21:50 ` Philip Kaludercic
2024-11-08 4:15 ` Visuwesh
2024-11-08 4:29 ` Visuwesh
2024-11-08 14:02 ` Philip Kaludercic
2024-11-08 15:44 ` Visuwesh
2024-11-08 16:23 ` Philip Kaludercic
2024-11-11 20:07 ` Mekeor Melire
2024-11-12 3:00 ` Philip Kaludercic
2024-10-13 10:52 ` An anonymous IRC user's opinion Dr. Arne Babenhauserheide
2024-10-10 13:58 ` Richard Stallman
2024-10-10 14:45 ` Dr. Arne Babenhauserheide
2024-10-12 3:19 ` Richard Stallman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=864j3qcyfy.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=dmitry@gutov.dev \
--cc=emacs-devel@gnu.org \
--cc=johan.myreen@gmail.com \
--cc=juri@linkov.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.