Nezteb

Nezteb

Comparing Elixir language servers: ElixirLS, Lexical, and Next LS

I frequently switch between ElixirLS, Lexical, and Next LS in order to test each out and compare/contrast. I decided to create a brief feature comparison matrix with some of my findings: Elixir Language Server Comparisons · GitHub

I reached out to some authors and devs familiar with each tool in order to be as fair as possible. Each of these tools is a large undertaking and takes tons of time and effort from the maintainers. A simple 2D comparison table can’t tell the whole story, so take it with a grain of salt. I’ll be doing my best to maintain and update the list as tooling evolves and adds/changes functionality. :smile:

Most Liked

tcoopman

tcoopman

That’s really cool. One thing I think none of the language servers support right now is working inside liveview sigils, things like go to definition, hover,…

That’s something that might be useful to track as well?

mhanberg

mhanberg

Creator of elixir-tools

Thanks for putting that together!

kwando

kwando

Oh yes, go to definition on HEEX components would be magical :star_struck:

mhanberg

mhanberg

Creator of elixir-tools

That works, but it starts up an Elixir LS instance for each project.

With “workspace folders” support (which is what is meant by “monorepo support”), the editor will boot up a single language server instance to handle all of the projects.

lukaszsamson

lukaszsamson

ElixirLS Core Team

ElixirLS works with VSCode multi-root workspaces but the support for that is implemented in VSCode extension. It currently starts separate language server processes in each workspace directory. I’m not aware if multi-root workspaces are supported in other editor extensions wrapping ElixirLS

Where Next?

Popular in Dev Env & Tools Top

BartOtten
How do you all enter the pipe operator |> on your keyboard? I keep having troubles with it :frowning:
New
dimitarvp
Yeah, feels the same here. :confused: And I made a much bigger investment, the iMac Pro I got was $8000 at the time I bought it (2019). ...
New
ricksonoliveira
Hey folks, I have been looking for an alternative to good old VsCode for a while. Have tried some vim and emacs editors with their plugi...
New
AstonJ
If you use a VPN or are interested in any please vote in the poll - you can select as many options as you want :icon_biggrin: I’ve added...
New
SyntaxSorcerer
I found Elixir after a friend recommended looking into it for developing a multi-agent orchestration and task management system. Soon aft...
New
AstonJ
Welcome to our new Dev Environment & Tools section! We had originally pencilled this in for inclusion later in the year (closer to o...
New
AstonJ
Do we have any frequent travellers or digital nomads here? If so where have you been and do you have any tips to share? (Particularly in...
New
evnp
How do you all feel about the use of AI tools for building Elixir/Phoenix projects, with respect to these topics? Longform context below....
New
SpaceVim
I am author of SpaceVim, As you know SpaceVim is a vim config which provide layer feature. I want to improve the elixir layer in Space...
New
bitboxer
In the last couple of months I only played a little bit with elixir, haven’t had much time to actually build something with it. But now t...
New

Other popular topics Top

chrismccord
Phoenix 1.4.0 released Phoenix 1.4 is out! This release ships with exciting new features, most notably with HTTP2 support, improved deve...
688 30048 115
New
yurko
Here are few pieces of (common) Linux knowledge that we use for reasonably small one server apps. We use Ubuntu but this should work for ...
New
senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New
William
I would like to know that is there any online source for learning Phoenix Framework for building E-Commerce Store? Any advantage on build...
New
myronmarston
The Elixir Typespec docs show the following syntax for keyword lists in typespecs: # ... | [key: type] # keyword lis...
New
danschultzer
None of the current solutions worked well for me, so I went ahead and built a user management system from scratch. This project took far...
548 27727 240
New
stefanluptak
Hello everybody, usually, I use a 29" ultra-wide monitor for VSCode which can easily accomodate explorer (files panel) + file with code ...
New
TunkShif
This post is an instruction guide to help you setup your Neovim for Elixir development from scratch. It includes general information on h...
273 38985 115
New
aesmail
Hello guys, I have finally made it. I created an admin interface for a framework. It’s been on my todo list for years and with the curre...
New
vrod
I am using the Starship cross-shell prompt – it seems pretty nice, but I get some errors: [WARN] - (starship::utils): Executing command ...
New

We're in Beta

About us Mission Statement