Helix editor for Elixir Development

Hey Helix users :slight_smile: I am trying Helix, but I miss shortcuts to run the tests for one of these:

  • the line my cursor is currently on (mix test path/to/the/file.exs:line_number)
  • the file I have currently open and active (mix test path/to/file.exs)
  • everything (mix test)

Do you have an idea if this is even possible in Helix?

1 Like

It looks like it could be done with an approach like this: Helix and tmux integration - DEV Community

Are you guys enjoying Helix?

To me, it served me as a stepping stone into neovim.

Having total control of your IDE is amazing. There’s nothing in particular that would make someone jump from vscode, but it’s just the volume of tiny optimizations that makes it awesome.

I’ve actually switched over from neovim. I like the movement patterns better and not having to have to configure everything is great as well.
I’m using it in combination with https://zellij.dev/ and use similar things like that for testing.

For elixir most things work great. The only issue is that I haven’t got the tailwind integration with elixir working.

1 Like

I once took a class on Korean and the teacher said we were lucky in Spanish because we could start saying to the waitress

I want aaaaaa

And then, after thinking about it, say “coke”. The needed (I guess they still do), start with the subject.

That’s something I think helix got right. Start with the subject, you can visualize it, and then perform the action.

da” is an act of faith in vim, but once you truly believe in it, you can see the light


Did anyone figured out how to configure Helix to run ElixirLS debug adapter? Helix added support and looking at Helix editor for Elixir Development - #32 by darnahsan hx --health checks if DAP is working

Hi, have you got it working with tailwind ? If yes, could you share the config. thanks in advance

Not yet. I haven’t really looked further to it. I think the best way to debug would be to compare what other editors send to the tailwind lap and see what the difference is.

1 Like

There is a solution that works :tada:

you can find the discussion here:

command = "tailwindcss-language-server"
args = ["--stdio"]

name = "elixir"
language-id = "phoenix-heex"
language-servers = ["tailwind-heex", "elixir-ls"]
auto-format = true

name = "heex"
language-id = "phoenix-heex"
language-servers = ["tailwind-heex", "elixir-ls"]
auto-format = true