all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* lsp-mode in GNU ELPA?
@ 2018-02-16 16:01 Stefan Monnier
  2018-02-17 20:13 ` Vibhav Pant
  0 siblings, 1 reply; 3+ messages in thread
From: Stefan Monnier @ 2018-02-16 16:01 UTC (permalink / raw)
  To: Vibhav Pant; +Cc: emacs-devel

Hi,

I think lsp-mode is the kind of functionality that should come part of
the base infrastructure supported by Emacs.

Would you be interested in trying to include it into GNU ELPA (with
a longer-term goal of bundling it with Emacs)?

I see you've already signed the necessary paperwork, but I also see that
the project has many other contributors, so the main part of getting
lsp-mode into GNU ELPA will be to collect paperwork for it.  Of course,
I can help with that work.

More generally, I'd also be interested about your experience with
lsp-mode, especially in terms of what changes in Emacs could help.


        Stefan



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: lsp-mode in GNU ELPA?
  2018-02-16 16:01 lsp-mode in GNU ELPA? Stefan Monnier
@ 2018-02-17 20:13 ` Vibhav Pant
  2018-02-18 20:33   ` Philipp Stephani
  0 siblings, 1 reply; 3+ messages in thread
From: Vibhav Pant @ 2018-02-17 20:13 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: emacs-devel

Hi Stefan,

On Fri, Feb 16, 2018 at 9:31 PM, Stefan Monnier
<monnier@iro.umontreal.ca> wrote:
> Would you be interested in trying to include it into GNU ELPA (with
> a longer-term goal of bundling it with Emacs)?
>

Inclusion into Emacs has been one of the goals of lsp-mode, indeed. Other than
lsp-flycheck, which is going to be moved to another package and ert-runner,
which we use for running tests, lsp-mode doesn't depend on any non-ELPA or
external packages.

> I see you've already signed the necessary paperwork, but I also see that
> the project has many other contributors, so the main part of getting
> lsp-mode into GNU ELPA will be to collect paperwork for it.  Of course,
> I can help with that work.

We had discussed this on the project github earlier, but never got to actually
collecting paperwork for all of the contributors. Getting all paperwork done
would obviously be a major step towards inclusion.

> More generally, I'd also be interested about your experience with
> lsp-mode, especially in terms of what changes in Emacs could help.

IMO, lsp-mode has achieved a reasonable level of stability over the last few
months. I have been able to accomplish all LSP functionality in elisp without
digging into internal Emacs code (eldoc, imenu, etc). There are still a few
kinks that have to be ironed out for a smoother experience:

1. completing-read/completion-at-point is pretty limited in what completion
candidates can do. LSP allows completion candidates to be linked to certain
command that can be executed when they are chosen. Completion candidates can
also be text snippets, which aren't natively supported in Emacs, AFAIK.

2. thing-at-point doesn't seem to work correctly with syntax like "#include",
which it recognizes as two words/symbols (this might be an issue with the
c-mode syntax table). This can lead to duplicate characters while completing
certain

3. Because after and before change-hooks aren't guaranteed to be bracketed,
the current mechanism for sending changes to the server have to do extra
bookkeeping to ensure that the sent changes are correct. A reliable way
to get the buffer state after and before a single textual change would help
here.

4. There has been a plan to use the native JSON functions in the upcoming
Emacs release for encoding JSON-RPC messages used by the procotol. However,
that is been on hold as `json-serialize` and `json-parse-string` use
:false and :null for representing JSON false and null respectively, which
makes it awkward to work with parsed JSON data. I had submitted a patch
which would allow users to choose alternate objects for representing falsy
values: https://lists.gnu.org/archive/html/emacs-devel/2017-12/msg00916.html.

Thanks,
Vibhav

-- 
Vibhav Pant
vibhavp@gmail.com



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: lsp-mode in GNU ELPA?
  2018-02-17 20:13 ` Vibhav Pant
@ 2018-02-18 20:33   ` Philipp Stephani
  0 siblings, 0 replies; 3+ messages in thread
From: Philipp Stephani @ 2018-02-18 20:33 UTC (permalink / raw)
  To: Vibhav Pant; +Cc: Stefan Monnier, emacs-devel

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

Vibhav Pant <vibhavp@gmail.com> schrieb am Sa., 17. Feb. 2018 um 21:14 Uhr:

>
> 4. There has been a plan to use the native JSON functions in the upcoming
> Emacs release for encoding JSON-RPC messages used by the procotol. However,
> that is been on hold as `json-serialize` and `json-parse-string` use
> :false and :null for representing JSON false and null respectively, which
> makes it awkward to work with parsed JSON data.


How so? Why can't `lsp-mode` work with :null and :false?

[-- Attachment #2: Type: text/html, Size: 777 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-02-18 20:33 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-16 16:01 lsp-mode in GNU ELPA? Stefan Monnier
2018-02-17 20:13 ` Vibhav Pant
2018-02-18 20:33   ` Philipp Stephani

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.