lang/elixir: finish README.org

This commit is contained in:
Oleksii Filonenko 2019-07-26 21:23:32 +03:00
parent 70dfbccde9
commit 1fb5891f6d
No known key found for this signature in database
GPG key ID: F3510FE5691629A1

View file

@ -4,33 +4,36 @@
* Table of Contents :TOC_3:noexport: * Table of Contents :TOC_3:noexport:
- [[#description][Description]] - [[#description][Description]]
- [[#plugins][Plugins]]
- [[#prerequisites][Prerequisites]] - [[#prerequisites][Prerequisites]]
- [[#install][Install]] - [[#install-elixir][Install Elixir]]
- [[#with-asdf][With ~asdf~]] - [[#with-asdf][With ~asdf~]]
- [[#arch-linux][Arch Linux]] - [[#arch-linux][Arch Linux]]
- [[#gentoo-linux][Gentoo Linux]] - [[#gentoo-linux][Gentoo Linux]]
- [[#features][Features]] - [[#features][Features]]
- [[#configuration][Configuration]]
- [[#setup-for-lsp-with-elixir-ls][Setup for LSP with elixir-ls]]
- [[#troubleshooting][Troubleshooting]]
* Description * Description
This module provides support for [[https://elixir-lang.org/][Elixir programming language]] via [[https://github.com/tonini/alchemist.el][alchemist.el]]. 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]]
- Code completion (~:completion company~)
- Documentation lookup (~:tools lookup~)
- Mix integration
- Phoenix support
- IEx REPL integration (~:tools eval~)
- Syntax checking (~:tools flycheck~, using [[https://github.com/aaronjensen/flycheck-credo][flycheck-credo]]~)
* Prerequisites * Prerequisites
You shound have Elixir installed, for example, via your distribution's package 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]]. manager or a version management tool such as [[https://github.com/asdf-vm/asdf-elixir][asdf]].
** Install
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~ *** With ~asdf~
#+BEGIN_SRC sh #+BEGIN_SRC sh
asdf plugin-add elixir asdf plugin-add elixir
asdf install elixir 1.9.0 asdf install elixir 1.9.1
#+END_SRC #+END_SRC
*** Arch Linux *** Arch Linux
#+BEGIN_SRC sh :dir /sudo:: #+BEGIN_SRC sh :dir /sudo::
@ -40,7 +43,10 @@ sudo pacman -S elixir
#+BEGIN_SRC sh :dir /sudo:: #+BEGIN_SRC sh :dir /sudo::
sudo emerge -v dev-lang/elixir sudo emerge -v dev-lang/elixir
#+END_SRC #+END_SRC
* TODO Features * Features
* TODO Configuration - Code completion (~:completion company~)
** TODO Setup for LSP with [[https://github.com/JakeBecker/elixir-ls][elixir-ls]] - Documentation lookup (~:tools lookup~)
* TODO Troubleshooting - Mix integration
- Phoenix support
- ~iex~ integration (~:tools eval~)
- Syntax checking (~:tools flycheck~, using [[https://github.com/aaronjensen/flycheck-credo][flycheck-credo]]~)