all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "João Távora" <joaotavora@gmail.com>
To: emacs-devel@gnu.org
Subject: [ELPA] New package: eglot
Date: Thu, 10 May 2018 23:34:40 +0100	[thread overview]
Message-ID: <87lgcrqgvz.fsf@gmail.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 1733 bytes --]

Hello,

I'd like to add Eglot, my new package, to GNU ELPA.

Eglot, for Emacs Polyglot, is an Emacs client for the LSP, or Language
Server Protocol (https://microsoft.github.io/language-server-protocol/).

For those unfamilar with LSP, here's a quick primer. M-x eglot connects
to LSP subprocesses locally or through the network. Thereafter, via a
JSON-based RPC protocol, information about the source code is exchanged
with the server: the client tells is about the (unsaved) buffer's
contents, and the server provides information to feed xref.el,
flymake.el, eldoc.el, auto-completion, and other IDE-like functionality.

Because Eglot is language-agnostic, the big idea is that this gives
Emacs an uniform IDE UI for any language one can find a suitable server
for.

There is a prominent existing Emacs package, emacs-lsp, that shares
largely the same goals. I have contacted its author and explained why I
started from scratch. This is summarized in a list of user-visible and
under-the-hood differences between the two projects in Eglot's home
page:

    https://github.com/joaotavora/eglot#differences-to-lsp-modeel

emacs-lsp and its many plugins live at:

    https://github.com/emacs-lsp

One notable difference is that Eglot requires Emacs 26 and integrates
with the new flymake.el redesign, whereas emacs-lsp uses
flycheck.el for that. Another design goal is a single M-x eglot entry
point, instead of different eglot-<language>.el and M-x eglot-<language>
commands for each language.

If the package is accepted, I think I already have commit rights to the
GNU ELPA repo and would like to develop this as a Git subtree, just like
yasnippet.

Thank you for your attention,
João


[-- Attachment #2: Eglot, Emacs Polyglot --]
[-- Type: application/emacs-lisp, Size: 65837 bytes --]

             reply	other threads:[~2018-05-10 22:34 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-10 22:34 João Távora [this message]
2018-05-11  6:19 ` [ELPA] New package: eglot Eli Zaretskii
2018-05-11 11:29   ` João Távora
2018-05-11 12:15     ` Eli Zaretskii
2018-05-18 16:27   ` New jrpc.el JSONRPC library (Was: [ELPA] New package: eglot) João Távora
2018-05-19  8:46     ` Eli Zaretskii
2018-05-20 15:54       ` New jrpc.el JSONRPC library João Távora
2018-05-20 16:02         ` Eli Zaretskii
2018-05-29  1:08           ` João Távora
2018-06-28 12:13           ` [PATCH] jsonrpc.el João Távora
2018-06-28 13:18             ` Eli Zaretskii
2018-06-28 13:23               ` João Távora
2018-06-28 13:40                 ` Eli Zaretskii
2018-05-20 19:13         ` New jrpc.el JSONRPC library Clément Pit-Claudel
2018-05-20 20:35           ` Josh Elsasser
2018-05-20 23:22             ` João Távora
2018-05-21  3:32               ` Josh Elsasser
2018-05-20 23:11           ` João Távora
2018-05-21  0:14             ` Clément Pit-Claudel
2018-05-19 11:34     ` New jrpc.el JSONRPC library (Was: [ELPA] New package: eglot) Philipp Stephani
2018-05-19 14:11       ` Eli Zaretskii
2018-05-20 15:43       ` New jrpc.el JSONRPC library João Távora
2018-05-20 16:06         ` Eli Zaretskii
2018-05-20 16:18           ` João Távora
2018-05-21 13:30         ` Aaron Ecay
2018-05-21 13:43           ` João Távora
2018-05-21 14:37             ` Aaron Ecay
2018-05-21 19:06               ` João Távora
2018-05-23 17:57                 ` Aaron Ecay
2018-05-23 18:02                   ` Stefan Monnier
2018-05-23 20:40                   ` João Távora
2018-05-24  2:07                     ` Stefan Monnier
2018-05-21 14:42             ` Stefan Monnier
2018-05-24 10:02         ` Philipp Stephani
2018-05-24 17:25           ` João Távora
2018-05-12 15:47 ` [ELPA] New package: eglot Stefan Monnier
2018-05-14 10:55   ` Bozhidar Batsov
2018-05-14 14:14   ` João Távora

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=87lgcrqgvz.fsf@gmail.com \
    --to=joaotavora@gmail.com \
    --cc=emacs-devel@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 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.