#+TITLE: lang/elixir #+DATE: June 24, 2019 #+SINCE: v2.0.9 * Table of Contents :TOC_3:noexport: - [[#description][Description]] - [[#plugins][Plugins]] - [[#prerequisites][Prerequisites]] - [[#install-elixir][Install Elixir]] - [[#with-asdf][With ~asdf~]] - [[#arch-linux][Arch Linux]] - [[#gentoo-linux][Gentoo Linux]] - [[#features][Features]] * Description This module provides support for [[https://elixir-lang.org/][Elixir programming language]] via [[https://github.com/tonini/alchemist.el][alchemist.el]] or [[https://github.com/JakeBecker/elixir-ls/][elixir-ls]]. ** Plugins + [[https://github.com/rust-lang/rust-mode][elixir-mode]] + [[https://github.com/tonini/alchemist.el][alchemist.el]] + [[https://github.com/aaronjensen/flycheck-credo][flycheck-credo]] * Prerequisites You should have Elixir installed, for example, via your distribution's package manager or a version management tool such as [[https://github.com/asdf-vm/asdf-elixir][asdf]]. If you want to add support for LSP ([[modules/tools/lsp][:tools lsp]]), be sure to install [[https://github.com/JakeBecker/elixir-ls/][elixir-ls]] and enable ~:tools lsp~ in your ~init.el~. To support linting with [[https://github.com/rrrene/credo][credo]], add ~:tools flycheck~ to your ~init.el~ ** Install Elixir *** With ~asdf~ #+BEGIN_SRC sh asdf plugin-add elixir asdf install elixir 1.9.1 #+END_SRC *** Arch Linux #+BEGIN_SRC sh :dir /sudo:: sudo pacman -S elixir #+END_SRC *** Gentoo Linux #+BEGIN_SRC sh :dir /sudo:: sudo emerge -v dev-lang/elixir #+END_SRC * Features - Code completion (~:completion company~) - Documentation lookup (~:tools lookup~) - Mix integration - Phoenix support - ~iex~ integration (~:tools eval~) - Syntax checking (~:tools flycheck~, using [[https://github.com/aaronjensen/flycheck-credo][flycheck-credo]]~)