unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Theodor Thornhill <theo@thornhill.no>
To: Eli Zaretskii <eliz@gnu.org>, rms@gnu.org
Cc: emacs-devel@gnu.org
Subject: Re: Renaming eglot -- or at least add an alias?
Date: Tue, 11 Oct 2022 11:44:24 +0200	[thread overview]
Message-ID: <87ilkqbsp3.fsf@thornhill.no> (raw)
In-Reply-To: <835ygqg1bh.fsf@gnu.org>

Eli Zaretskii <eliz@gnu.org> writes:


[...]

>>   > > If they are intersubstitutable, in principle, maybe they ought to have
>>   > > the same user interface so that most users would not notice or care
>>   > > which one is doing the job.
>> 
>>   > You are basically asking the same questions I did.
>> 
>> Good that we are following the same line of thinking.
>> Could you show me the answers you got?
>
> I don't have any answers yet, which is why I posted the questions.

One major difference is that tree sitter does just parsing, and provides
interface to access the returned tree.  It works on _one_ file, and does
not care of project semantics, package managers, dependency fetching etc
etc etc.  That's LSPs job.  Going to references, opening files in
directories outside of the project is also for LSP, thus Eglot.
Returning completions etc etc etc.

Tree-sitter _cannot_ do these things. However, it is fast, which is the
major selling point.  That is why you'd want to use that for
indentation, font locking and the simpler things.  You can also hack on
tree-sitter.  When provided with a proper api it is easy to extend
yourself and add utilities in your own config.  Not so much for LSP.
Whatever is to be done must be supported by said server.

They look similar, but in reality they are not.  Yes, both can
font-lock, but that's almost where the similarities end.

Because all of the interaction between server and client in lsp is json
there's a huge overhead with parsing and shipping things into the emacs
user interface.  So IMO what tree-sitter is good at should be left to
tree-sitter.

(font locking in the server is often just a wrapper of tree-sitter
shipped over json anyways).

Theo



  reply	other threads:[~2022-10-11  9:44 UTC|newest]

Thread overview: 199+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-30  8:04 Renaming eglot -- or at least add an alias? Stefan Kangas
2022-09-30  8:27 ` Philip Kaludercic
2022-09-30  8:59   ` Theodor Thornhill
2022-09-30 12:30     ` Rudolf Adamkovič
2022-09-30 11:33   ` Basil L. Contovounesios
2022-09-30 11:38     ` João Távora
2022-09-30 12:18       ` Basil L. Contovounesios
2022-09-30 12:24         ` João Távora
2022-10-02  1:09         ` Richard Stallman
2022-09-30 13:26     ` Robert Pluim
2022-09-30 16:21       ` Basil L. Contovounesios
2022-09-30 10:30 ` Eli Zaretskii
2022-10-01  9:28   ` Richard Stallman
2022-10-01  9:53     ` Eli Zaretskii
2022-10-01 15:33       ` Philip Kaludercic
2022-10-01 15:39         ` Eli Zaretskii
2022-10-03  1:06           ` Richard Stallman
2022-10-03 16:28             ` Eli Zaretskii
2022-10-01 14:51     ` Stefan Monnier
2022-10-01 18:16       ` Stefan Monnier
2022-10-02  1:11       ` Richard Stallman
2022-10-02  1:31         ` Tim Cross
2022-10-02  2:45           ` Yilkal Argaw
2022-10-02 11:34           ` Philip Kaludercic
2022-10-02 12:44             ` João Távora
2022-10-02 14:05               ` Philip Kaludercic
2022-10-02 14:42                 ` João Távora
2022-10-02 15:03                   ` Manuel Uberti
2022-10-02 15:08                     ` Lars Ingebrigtsen
2022-10-12 11:32                       ` Robert Weiner
2022-10-12 11:55                         ` Po Lu
2022-10-12 13:25                           ` Eli Zaretskii
2022-10-12 13:42                             ` Po Lu
2022-10-12 14:03                               ` Eli Zaretskii
2022-10-02 19:54                     ` Jose A. Ortega Ruiz
2022-10-02 22:17                       ` Tim Cross
2022-10-04  1:00                       ` Richard Stallman
2022-10-02 15:52                   ` Philip Kaludercic
2022-10-02 20:07                     ` João Távora
2022-10-03 11:21                       ` Philip Kaludercic
2022-10-02 21:30                 ` Tim Cross
2022-10-03 11:06                   ` Philip Kaludercic
2022-10-03 12:34                     ` João Távora
2022-10-03 13:18                       ` Stefan Monnier
2022-10-03 16:35                         ` João Távora
2022-10-03 17:06                           ` Stefan Monnier
2022-10-04  1:01             ` Richard Stallman
2022-10-04  7:02               ` Philip Kaludercic
2022-10-04 11:27                 ` Tim Cross
2022-10-06 10:24             ` Philip Kaludercic
2022-10-06 14:11               ` [External] : " Drew Adams
2022-10-06 22:09               ` Dmitry Gutov
2022-10-01 21:57     ` Tim Cross
2022-10-03  1:07       ` Richard Stallman
2022-10-03  1:13         ` Tim Cross
2022-10-04  1:01           ` Richard Stallman
2022-10-04  1:01           ` Richard Stallman
2022-10-04  2:43             ` Po Lu
2022-10-04  7:06             ` Eli Zaretskii
2022-10-04 17:39               ` Richard Stallman
2022-10-04 18:12                 ` Eli Zaretskii
2022-10-05 21:35                   ` Richard Stallman
2022-10-05 23:21                     ` Dmitry Gutov
2022-10-07 22:49                       ` Richard Stallman
2022-10-06  0:13                     ` Tim Cross
2022-10-06  0:38                       ` Po Lu
2022-10-06  1:18                         ` Tim Cross
2022-10-06  6:17                       ` Eli Zaretskii
2022-10-07 22:50                       ` Richard Stallman
2022-10-08 18:18                         ` chad
2022-10-09  0:35                           ` Po Lu
2022-10-09 14:21                             ` chad
2022-10-07 22:50                       ` Richard Stallman
2022-10-06  0:13                     ` Tim Cross
2022-10-06  0:36                     ` Po Lu
2022-10-06  5:57                     ` Eli Zaretskii
2022-10-07 22:49                   ` Richard Stallman
2022-10-07 23:20                     ` Dmitry Gutov
2022-10-04 22:01                 ` Tim Cross
2022-10-05 10:57                   ` Alfred M. Szmidt
2022-10-05 13:17                     ` Eli Zaretskii
2022-10-05 14:46                       ` Alfred M. Szmidt
2022-10-05 15:55                         ` Alexander Adolf
2022-10-06 22:06                         ` Richard Stallman
2022-10-06 22:08                       ` Richard Stallman
2022-10-06 22:30                         ` Tim Cross
2022-10-06 23:42                           ` Jose A. Ortega Ruiz
2022-10-07 22:49                   ` Richard Stallman
2022-10-05  3:01                 ` Po Lu
2022-10-07 22:48                   ` Richard Stallman
2022-10-05 10:43             ` Alfred M. Szmidt
2022-10-06 22:09               ` Richard Stallman
2022-10-07  6:34                 ` Eli Zaretskii
2022-10-07 10:12                   ` Dmitry Gutov
2022-10-07 11:27                     ` Eli Zaretskii
2022-10-07 11:38                       ` Dmitry Gutov
2022-10-07 11:48                         ` Eli Zaretskii
2022-10-07 12:03                           ` Dmitry Gutov
2022-10-07 12:09                             ` Eli Zaretskii
2022-10-07 12:34                               ` Dmitry Gutov
2022-10-07 15:03                                 ` Emanuel Berg
2022-10-07 22:03                                   ` Tim Cross
2022-10-08  5:32                                     ` tomas
2022-10-08  6:52                                       ` Eli Zaretskii
2022-10-08  7:20                                         ` tomas
2022-10-08 16:10                                       ` [External] : " Drew Adams
2022-10-08 22:17                                 ` Alexander Adolf
2022-10-09  3:32                                   ` Stefan Monnier
2022-10-11 21:15                                     ` Richard Stallman
2022-10-11 21:54                                       ` Stefan Monnier
2022-10-12 13:21                                         ` Alexander Adolf
2022-10-12 22:02                                         ` Richard Stallman
2022-10-08 22:34                               ` Richard Stallman
2022-10-09  4:38                                 ` Eli Zaretskii
2022-10-09  4:57                                   ` Eli Zaretskii
2022-10-09  6:07                                     ` Theodor Thornhill
2022-10-09  7:56                                     ` Tim Cross
2022-10-10 22:03                                       ` Richard Stallman
2022-10-09 12:44                                     ` Dmitry Gutov
2022-10-09 13:30                                       ` Eli Zaretskii
2022-10-09 14:09                                       ` Felician Nemeth
2022-10-09 14:15                                         ` Dmitry Gutov
2022-10-09 14:45                                           ` Felician Nemeth
2022-10-09 15:25                                             ` Dmitry Gutov
2022-10-14  9:55                                               ` João Távora
2022-10-11 21:15                                     ` Richard Stallman
2022-10-12  6:04                                       ` Eli Zaretskii
2022-10-12  6:37                                         ` Yuan Fu
2022-10-12  7:15                                           ` Eli Zaretskii
2022-10-12  9:24                                             ` Tim Cross
2022-10-12 23:19                                               ` Yuan Fu
2022-10-13  0:17                                                 ` Tim Cross
2022-10-13  0:26                                                 ` Stephen Leake
2022-10-12 23:05                                             ` Yuan Fu
2022-10-12 10:50                                           ` Dmitry Gutov
2022-10-12 22:58                                             ` Yuan Fu
2022-10-14  9:59                                             ` João Távora
2022-10-13  0:41                                           ` Stephen Leake
2022-10-13  6:03                                             ` Stephen Leake
2022-10-12 13:34                                       ` Michael Albinus
2022-10-10 22:05                                   ` Richard Stallman
2022-10-11  9:24                                     ` Eli Zaretskii
2022-10-11  9:44                                       ` Theodor Thornhill [this message]
2022-10-11 17:19                                         ` Dmitry Gutov
2022-10-12 22:01                                           ` Richard Stallman
2022-10-13  0:47                                             ` Stephen Leake
2022-10-13  6:59                                               ` Theodor Thornhill
2022-10-13  8:59                                                 ` Philip Kaludercic
2022-10-13 10:37                                                   ` Eli Zaretskii
2022-10-13 10:20                                                 ` Stephen Leake
2022-10-13 10:35                                                   ` Dmitry Gutov
2022-10-13 16:11                                                   ` Theodor Thornhill
2022-10-14  3:56                                                     ` Akib Azmain Turja
2022-10-13 22:25                                                   ` Tim Cross
2022-10-03  1:55         ` Po Lu
2022-10-03  3:28           ` Tim Cross
2022-10-03 16:30         ` Eli Zaretskii
2022-10-04  1:02           ` Richard Stallman
2022-10-04  7:00             ` Eli Zaretskii
2022-10-04 17:39               ` Richard Stallman
2022-10-04 18:05                 ` Eli Zaretskii
2022-10-07 22:50                   ` Richard Stallman
2022-10-08  6:42                     ` Eli Zaretskii
2022-10-14  9:45                       ` João Távora
2022-10-03 19:57         ` Rudolf Adamkovič
2022-10-04  1:03           ` Richard Stallman
2022-10-04  1:40             ` Yuri Khan
2022-09-30 10:31 ` Po Lu
2022-09-30 10:52   ` Eglot manual (Was: Renaming eglot -- or at least add an alias?) João Távora
2022-09-30 10:32 ` Renaming eglot -- or at least add an alias? João Távora
2022-09-30 10:46 ` Daniel Martín
2022-09-30 10:50   ` Daniel Martín
2022-09-30 13:19     ` Po Lu
2022-09-30 13:18   ` Po Lu
2022-09-30 13:15 ` Lars Ingebrigtsen
2022-09-30 14:48   ` [External] : " Drew Adams
2022-10-02  7:21 ` Christopher M. Miles
     [not found] ` <m28rlywurw.fsf@numbchild>
2022-10-04  2:08   ` Christopher M. Miles
     [not found]   ` <m28rlwjpx3.fsf@numbchild@gmail.com>
2022-10-04  5:25     ` Akib Azmain Turja
2022-10-04 17:39       ` Richard Stallman
2022-10-04 21:30         ` Tim Cross
2022-10-04 22:06           ` Philip Kaludercic
2022-10-04 22:31             ` Tim Cross
2022-10-05 23:25               ` Dmitry Gutov
2022-10-07 22:47             ` Richard Stallman
2022-10-05  2:59           ` Po Lu
2022-10-05  8:41         ` Simon Leinen
2022-10-05 13:21           ` Gerd Möllmann
2022-10-05 10:09         ` Akib Azmain Turja
2022-10-04  5:25 ` Gerd Möllmann
2022-10-04  7:43   ` Eli Zaretskii
2022-10-04  8:54     ` Gerd Möllmann
2022-10-04  9:57     ` João Távora
2022-10-04 11:15       ` Gerd Möllmann
2022-10-04 15:19   ` [External] : " Drew Adams
2022-10-06 23:29 ` Stefan Kangas
  -- strict thread matches above, loose matches on Subject: below --
2022-09-30  8:54 Payas Relekar
2022-10-04 10:10 xenodasein--- via Emacs development discussions.
2022-10-08  9:33 xenodasein--- via Emacs development discussions.

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

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87ilkqbsp3.fsf@thornhill.no \
    --to=theo@thornhill.no \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=rms@gnu.org \
    /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 public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).