doomemacs/modules/lang/elixir
Henrik Lissner c7a1e2d70c
bump: :lang
JuliaEditorSupport/julia-emacs@5c940c4ba3 -> JuliaEditorSupport/julia-emacs@aadf29523a
ProofGeneral/PG@d60382db08 -> ProofGeneral/PG@75c13f91b6
agda/agda@bb9e13d970 -> agda/agda@5cf984c3d2
ananthakumaran/exunit.el@12a1efd003 -> ananthakumaran/exunit.el@bef971bde5
ardumont/markdown-toc@29e5c0f33e -> ardumont/markdown-toc@d22633b654
babashka/neil@8d5ccdbd81 -> babashka/neil@74cc79e4b9
clojure-emacs/cider@15bd3b0265 -> clojure-emacs/cider@ae247d8845
clojure-emacs/clojure-mode@4679222109 -> clojure-emacs/clojure-mode@bddba12e96
emacs-ess/ESS@f8c464dc1b -> emacs-ess/ESS@bfe892db15
emacs-rustic/rustic@e77f62facc -> emacs-rustic/rustic@cb013cd217
emacs-straight/auctex@077874d25a -> emacs-straight/auctex@1939acb54b
erlang/otp@2b2b39797f -> erlang/otp@f80e9c1c4a
godotengine/emacs-gdscript-mode@248b73b1bd -> godotengine/emacs-gdscript-mode@dd44f1dfa5
greghendershott/racket-mode@150b057953 -> greghendershott/racket-mode@71f27c643d
hakimel/reveal.js@33bfe3b233 -> hakimel/reveal.js@5abf24c1d8
haskell/haskell-mode@383b4b7775 -> haskell/haskell-mode@2dd755a5fa
hhvm/hack-mode@86a981bd7b -> hhvm/hack-mode@0b117e7f25
hvesalai/emacs-scala-mode@661337d8aa -> hvesalai/emacs-scala-mode@50bcafa181
idris-hackers/idris-mode@85928dc4cc -> idris-hackers/idris-mode@d32b2396a8
jrblevin/markdown-mode@92802fae9e -> jrblevin/markdown-mode@9de2df5a9f
mekeor/nael@9711443449 -> mekeor/nael@3ee1cf286d
meow_king/zig-ts-mode@89b52c865c -> meow_king/zig-ts-mode@64611c6d51
minad/org-modern@9bbc44cc7e -> minad/org-modern@b4b5b1c864
nim-lang/nim-mode@625cc023bd -> nim-lang/nim-mode@4502f83fbb
nix-community/nix-ts-mode@706bbfaf7f -> nix-community/nix-ts-mode@625306cf9c
ocaml/dune@14df34d30d -> ocaml/dune@7a7d49206f
ocaml/merlin@a0b096c243 -> ocaml/merlin@1c4148af05
org-roam/org-roam@c72702cf27 -> org-roam/org-roam@b4857fd7a1
rust-lang/rust-mode@ae161dca23 -> rust-lang/rust-mode@f68ddca5c2
seagle0128/grip-mode@26bdadf604 -> seagle0128/grip-mode@b8b9e603ed
sogaiu/janet-ts-mode@0e4d04d648 -> sogaiu/janet-ts-mode@aba932a1a1
szermatt/emacs-bash-completion@762f28fefb -> szermatt/emacs-bash-completion@5b621db96e
technomancy/fennel-mode@c1bccdec9e -> technomancy/fennel-mode@9c1dac3c39
tpapp/julia-repl@681efc14a7 -> tpapp/julia-repl@0173237a43
weijiangan/flycheck-golangci-lint@f7e36e19d6 -> weijiangan/flycheck-golangci-lint@51aede797d
2026-02-13 16:31:15 -05:00
..
.doommodule feat: add .doommodule files 2024-09-14 20:47:39 -04:00
config.el tweak(elixir): remove ligatures 2025-12-24 18:22:19 -05:00
doctor.el feat(elixir): add treesit support 2025-05-22 18:32:03 +02:00
packages.el bump: :lang 2026-02-13 16:31:15 -05:00
README.org feat(elixir): add treesit support 2025-05-22 18:32:03 +02:00

:lang elixir

Description   unfold

This module provides support for Elixir programming language via elixir-ls.

Maintainers

This module has no dedicated maintainers. Become a maintainer?

Module flags

+lsp
Enable LSP support for elixir-mode. Requires doom-module::tools lsp and a langserver (supports elixir-ls).
+tree-sitter
Leverages tree-sitter for better syntax highlighting and structural text editing. Requires Emacs 30.1+ and doom-module::tools tree-sitter.

Hacks

No hacks documented for this module.

TODO Changelog

This module does not have a changelog yet.

Installation

Enable this module in your doom! block.

This module requires Elixir. Install it via your distribution's package manager or a version management tool such as asdf.

To add LSP support, install elixir-ls and enable doom-module::tools lsp.

To support linting with credo, add :checkers syntax to $DOOMDIR/init.el.

Install Elixir

(See https://elixir-lang.org/install.html for other operating systems)

With asdf

asdf plugin-add elixir
asdf install elixir 1.9.1

Arch Linux

pacman -S elixir

Gentoo Linux

emerge -v dev-lang/elixir

openSUSE

zypper install elixir

TODO Usage

󱌣 This module's usage documentation is incomplete. Complete it?

  • Code completion (doom-module::completion company)
  • Documentation lookup (doom-module::tools lookup)
  • Mix integration
  • Phoenix support
  • iex integration (doom-module::tools eval)
  • Syntax checking (doom-module::checkers syntax, using doom-package:flycheck-credo)
  • Formatting for elixir files provided by doom-module::editor format.

exunit-mode

The exunit-mode prefix is <localleader> t. Here is some examples:

command key / ex command description
exunit-verify-all <localleader> t a Runs exunit on all files
exunit-rerun <localleader> t r Re-runs last exunit command
exunit-verify <localleader> t v Runs exunit on current file
exunit-verify-single <localleader> t s Runs exunit for the item on cursor
exunit-toggle-file-and-test <localleader> t t Switch between implementation and test
exunit-toggle-file-and-test-other-window <localleader> t T Switch between implementation and test in other window

TODO Configuration

󱌣 This module has no configuration documentation yet. Write some?

Troubleshooting

There are no known problems with this module. Report one?

Frequently asked questions

This module has no FAQs yet. Ask one?

TODO Appendix

󱌣 This module has no appendix yet. Write one?