elixir-ls icon indicating copy to clipboard operation
elixir-ls copied to clipboard

eex/heex file specific suggestions for if, case, cond etc.

Open benonymus opened this issue 3 years ago • 1 comments

Hey,

I have been using the atom https://github.com/elixir-editors/language-elixir package for years. Recently I have been looking at alternative editors,and using the language server.

I noticed that in the atom package there are "context" aware snippets, while in the language server based ones there aren't. In a .ex file you get regular if, else, case etc. and in .heex or other .eex files you get them with <%= =>. From here: https://github.com/elixir-editors/language-elixir/blob/dd18b5d712044edc0a6c68fadc5aaf2ef3ed7efc/snippets/language-elixir.cson#L162

I was wondering if that is omitted here on purpose? In every editor I tried the language server it offers the regular version in .eex files.

I looked around in the code here, and I see that we have special cases for |> for example.

Would it be possible to add the .eex variants where relevant?

Thank you

benonymus avatar Dec 11 '22 07:12 benonymus

Sure we can accept a PR adding some new snippets. But the problem is a bit deeper. elixir_sense and elixirLS has no support for eex/heex syntax trees and is not aware of template and elixir context

lukaszsamson avatar Apr 29 '23 06:04 lukaszsamson