Good IDE for Elixir

IdeElixir

Ide Problem Overview


I am looking for an IDE that does atleast some of the following

  • Code completion when typing variable names and possible functions after pressing .
  • Show a functions signature and docs
  • Navigate to the function/variable/module's definition

It would be nice if it could also

  • Warn about errors
  • Code generation
  • Scaffold basic projects

Ide Solutions


Solution 1 - Ide

There is a great Elixir extension support for Visual Studio Code and there are currently 2 extensions to add the language to the tool, my preference being vscode-elixir. You can add it by hitting ctrl+P then typing "ext install vscode-elixir".

This extension adds rich elixir language support to VS Code including:

  • Syntax Coloring
  • Snippets
  • Intellisense

enter image description here

There is also a sublime integration called ElixirSublime. It has most of the same features. However, it hasn't been updated in many years.

Solution 2 - Ide

The Alchemist Elixir Tooling integration Emacs package brings the following functionality so far:

  • Mix integration
  • Compile & Execution of Elixir code
  • Inline code evaluation
  • Inline macro expanding
  • Documentation lookup
  • Definition lookup
  • Powerful IEx integration
  • Smart code completion
  • Elixir project management
  • Phoenix support
  • Integration with company-mode

More infos available here: https://github.com/tonini/alchemist.el/blob/master/README.md

If you have questions you can find me on IRC channel #elixir and #emacs-elixir (nickname: tonini)

Solution 3 - Ide

Atom with atom-elixir. An excerpt from the current features (on top of the default Atom goodness, all working out of the box):

  • Autocomplete
  • Go to definition
  • Go to Documentation View
  • Quoted Code view
  • Expand Macro view
  • All features depending on aliases and imports are already supporting the new v1.2 notation.

atom-elixir autocomplete

I'm personally using it together with the vim-mode plugin and it seems like there's no conflicts.

I'm usually an IntelliJ person, but the IntelliJ plugin is still lacking in some of the autocomplete functionality that I'm used to.

Edit: after working with Atom and elixir for about 5 months now I wrote a blog post summarising how I tweaked it to work for me and referencing my entire config.

Solution 4 - Ide

I have tried all of well known text editors and corresponding elixir packages.

  • IntelliJ with plugin : No alchemist server integration so it is worse then others. Also IntelliJ is slower to start than other IDE-s and editors.
  • Visual Studio Code : Missing some shortcuts but generally you can Elixir code in this editor if you are already using it for other languages.
  • Sublime Text : Same as VS code, if you are using sublime now than you can use it for Elixir
  • Atom : Very good support for everything except code format (beautify) but that will be fixed soon.
  • Emacs : Best support and package but it is not for the feint of heart if you do not use emacs already.

So if you do not have hard preference for some of this editors choose between Emacs or Atom to code Elixir in.

Solution 5 - Ide

If you are a vim user, There is alchemist.vim plugin which has

  • Completion for Modules and functions
  • Documentation lookup for Modules and functions
  • Jump to the definition
  • Mix integration
  • IEx integration

Solution 6 - Ide

Atom has a great package for elixir and mostly any other language, you should go and give it a try.

Solution 7 - Ide

Now, there's also an Elixir plugin for IntelliJ: https://github.com/KronicDeth/intellij-elixir

The author also did a talk at ElixirConf 2015: https://m.youtube.com/watch?v=0Its8r5RBf0

Solution 8 - Ide

If you are from Java background then don't expect IDE like eclipse or IntelliJ. Though IntelliJ works fine with Elixir, but as of now, I was not able to make it work with Phoenix framework. Your best bet is Atom, or Emacs if you are a guru. VS Code is another cool tool very similar to Atom.

Solution 9 - Ide

I'll add that Emacs and Alchemist are a powerful combo for writing Elixir code. But I doubt there's anything available anywhere that has all the features you list above.

Solution 10 - Ide

Visual Studio Code with vscode-elixir extension.

This extension adds rich elixir language support to VS Code including:

  • Syntax Coloring
  • Snippets
  • Intellisense

Solution 11 - Ide

enter image description here elixir-tmbundle is great and highly lightweight package available for Sublime text support of Elixir Lang, you can simply add it to sublime text by simply running.

cd ~/.config/sublime-text-2/Packages # If you are on Linux using sublime text-2

cd ~/Library/Application\ Support/Sublime\ Text\ 2/Packages # If you are on OS X

cd %HOMEPATH%\AppData\Roaming\Sublime^ Text^ 2\Packages # If you are on Windows Vista or above

cd %HOMEPATH%\Application^ Data\Sublime^ Text^ 2\Packages # If you are on Windows XP

git clone git://github.com/elixir-lang/elixir-tmbundle Elixir

There is TextMate support for this package as well, you can follow this link for more info.

https://github.com/elixir-lang/elixir-tmbundle

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionCristian GarciaView Question on Stackoverflow
Solution 1 - IdeLetseatlunchView Answer on Stackoverflow
Solution 2 - IdetoniniView Answer on Stackoverflow
Solution 3 - IdenietakiView Answer on Stackoverflow
Solution 4 - IdeSaša ŠijakView Answer on Stackoverflow
Solution 5 - IdeslashmiliView Answer on Stackoverflow
Solution 6 - IdeOscar RoaView Answer on Stackoverflow
Solution 7 - IdePatrick OscityView Answer on Stackoverflow
Solution 8 - Ideuser4774371View Answer on Stackoverflow
Solution 9 - IdeOnorio CatenacciView Answer on Stackoverflow
Solution 10 - IdeEslam HamoudaView Answer on Stackoverflow
Solution 11 - IdeSubhash ChandraView Answer on Stackoverflow