🕵️ SicherheitslückenWhat continuous operational resilience looks like under DORA(09.09.2026 um 17:53 Uhr)
🔧 AI Nachrichten OpenAI seeks tougher AI rules. CIOs may feel the ripple effects(10.09.2026 um 12:11 Uhr)
🔧 AI Nachrichten Mistral valued at €21bn after €3bn Series D funding round(08.09.2026 um 10:19 Uhr)
🪟 Windows TippsWindows XP's Cursor Indicator Is Getting a Windows 11 Refresh(25.08.2026 um 13:00 Uhr)
🕵️ SicherheitslückenWhat continuous operational resilience looks like under DORA(09.09.2026 um 17:53 Uhr)
🔧 AI Nachrichten OpenAI seeks tougher AI rules. CIOs may feel the ripple effects(10.09.2026 um 12:11 Uhr)
🔧 AI Nachrichten Mistral valued at €21bn after €3bn Series D funding round(08.09.2026 um 10:19 Uhr)
🪟 Windows TippsWindows XP's Cursor Indicator Is Getting a Windows 11 Refresh(25.08.2026 um 13:00 Uhr)

🔧 Programmierung 🕛 vor 1 Jahr 4 Min Lesezeit
0

Setting up Zed for Elixir development 💧

↗ Quelle (dev.to)
🗣️ Stimme:

TL; DR: In this article, I describe how I setup zed to develop in elixir and phoenix framework, and .

To download by homebrew, you can use the following command:




CODE
$ brew install --cask zed  && zed






That's it; you have Zed installed; now let's configure it for Elixir development!

One of the most important tools, at least for me, is the language server, which helps with auto-complete, lint validations, and formatting. Currently, elixir has three options, elixir-ls, lexical, and next-ls. All three are great, and each one has your strength and weakness, I know that there are plans to have a new one that has the goal to be a join of those three to have a LS to rule them all, looking forward to it 😃.

But until this day doesn't come, I personally prefer ElixirLS, that comes as default on Zed; in my experience, it tends to be more stable when working with large projects, but that's me, you may find that prefers lexical or next-ls, this last one for example allows you to setup credo warnings to be shown in the code, which is pretty cool.

To setup a language server, use the shortcut cmd + shift + P and type and select the option zed: open settings, and add the following code:




CODE
"languages": {
"Elixir": {
"language_servers": ["elixir-ls"] // <- `next-ls` or `lexical`
}
}






Then, you can setup the specifics based on what language server you prefer, for ElixirLS, I like to turn off dialyzer when developing and let CIs like CircleCI or Github Actions to run that for me when I push the branch, to do so, you can add lsp config like below:




CODE
"lsp": {
"elixir-ls": {
"settings": {
"dialyzerEnabled": false
}
}
}






Pretty easy, right? Now, let's set up the second most important tool for me: code formatting. And here is where I think vscode is better, again, maybe is because I used to work on large projects, but the format on save on zed has some latency, which on vscode is inexistent, but maybe I'm doing something wrong, happy to chat with you guys about it on comments. But here is the snippet we need to add to enable auto format on zed:




CODE
"languages": {
"Elixir": {
"format_on_save": {
"external": {
"command": "mix",
"arguments": ["format", "--stdin-filename", "{buffer_path}", "-"]
}
}
}
}






At this stage, you have the minimum requirement to start developing in elixir on Zed; now let's go into specifics, HEEX:




CODE
"languages": {
"HEEX": {
"format_on_save": {
"external": {
"command": "mix",
"arguments": ["format", "--stdin-filename", "{buffer_path}", "-"]
}
},
"language_servers": [
"elixir-ls",
"tailwindcss-language-server",
"emmet-language-server"
]
}
}






In the snippet above, we're setting up heex to format using mix format, elixir-ls, for elixir code that may be inside of the heex files, tailwindcss-language-server, to have tailwind classes auto-complete, and emmet-language-server, to have auto-complete for HTML (i.e. div.flex to be converted to <div class="flex"></div>).

One caveat about Emmet, you may need to do a workaround to make it work as expected. First, use cmd + shift + P, and select option zed: extensions, and install Emmet extension. Once you install it, open and edit the file ~/Library/Application\ Support/Zed/extensions/installed/emmet/extension.toml to reference heex extension:




CODE
[language_servers.emmet-language-server]
language = "HTML"
languages = ["HTML", "PHP", "ERB", "JavaScript", "TSX", "CSS", "HEEX"]

[language_servers.emmet-language-server.language_ids]
HEEX = "heex"






Well, that's pretty much it; thank you for reading this! I hope this was useful for you. If you like it or have suggestions on how I can improve this post, please leave a comment; I'll be glad to know that this is being helpful 😄.

Here's the gist having my Zed config, where I'm going to keep updating when learning more about it.



Cheers!

Vollständiger Original-Bericht
Ausführliche Details, Code-Beispiele & Hersteller-Stellungnahme auf dev.to.
↗ Original-Artikel auf dev.to lesen
Wie bewertest du diesen Beitrag?
1 Klick Feedback
Teilen mit Netzwerk & Team:

Community-Analysen & Experten-Meinungen 0

Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum
🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Port 8095 Engine
1 Quelle
Sam Altman calls GPT-6 Astra rollout ‘messy’ as enterprise users wait for access
1 Quelle
Swiss government explores replacing Microsoft 365 with open-source software
1 Quelle
What continuous operational resilience looks like under DORA
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Setting up Zed for Elixir development 💧

Thematisch verwandte Begriffe: Setting, Elixir, development · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...