Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> egloty ... now comes with emacs so doesn't need any other packages (other than language servers themselves, of course).

One of the things I love about lsp-mode is how it automatically installs any language server I need, when I need it.

I would rather install one package and be done, than use one built-in package, and have to manually hunt, download, and manually maintain language-servers for all the different languages I'm using in my programs, on all the machines I do programming on.

If eglot wants to become the defacto standard, it will need to solve this sooner rather than later.

But I suspect RMS will be opposed to having Emacs automatically download "non-free" (not GPLed) code?



I understand where you are coming from, but in my case having anything be auto-installed is just a pain. My distro of choice is NixOS where installing stuff works fundamentally different from most other distros. When I tried it, lsp-mode just wasn't aware of it (not sure if it does now, but considering this space is vast, it is simply impossible to support every distro out there). Which means automated installation simply didn't work and I had to spend lot of time finding issues. For Emacs newbie it was a terrible pain.

Compared to that, I was done setting up Eglot + language server in 2 minutes flat, there was no config needed and it Just Worked!


The idea of my lsp mode installing servers for me fills me with dread. I'm fine with, like, `brew install whatever-server` or `go get golang.org/x/tools/gopls` or whatever. But if lsp-mode's deal for installing a new language server happens not to work on my machine, I'm in for 45 minutes of elisp debugging to figure out what the hell is going wrong. Most languages we work in have more tooling than just a language server; we don't expect Emacs to install our debugger or code generator. It's weird that we expect it to install the lsp server.


It has language servers for lots of things. Things you may not even consider languages! HTML, CSS, JSON (and all its different usages and schemas), etc.

What tooling would you install for that? What tooling does your system package-manager offer for that?

LSP-mode offering a “vertical” form of integration here (these major modes have been tested with these servers, and here’s how to install and invoke them) makes perfect sense to me as a user.


> "non-free" (not GPLed)

These two terms are not synonymous. Only proprietary software is "non-free". Software under free software licenses other than the GPL (whether copyleft or pushover/"permissive") is never considered "non-free".


Permissive licenses are considered non-free by the FSF, or at least RMS.

He is very concerned about this, as you can see every time such a topic arises on the emacs-devel mailing-list.


No, they are not considered "non-free". Not even by RMS. Please provide evidence.

Unsurprisingly RMS prefers GPL over pushover licenses, especially when it comes to Emacs and GCC, which he considers strategic tools in a fight against proprietary software. He has been opposed to depending on Clang when GCC is not suitable (again due to his fears that GCC would be used to build proprietary compilers), but this does not mean that he considers Clang to be non-free software.


On the other hand, "manually" installing LSP servers for me has consistently been running a single liner, with the huge benefit of being packaged in a predictable manner and updated alongside my system.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: