Provides font-locking, indentation and navigation support for the Elixir programming language.
- Elixir Tooling Integration
package.el is the built-in package manager in Emacs.
You can install
elixir-mode with the following command:
M-x package-install [RET] elixir-mode [RET]
or by adding this bit of Emacs Lisp code to your Emacs initialization file
(unless (package-installed-p 'elixir-mode) (package-install 'elixir-mode))
If the installation doesn't work try refreshing the package list:
M-x package-refresh-contents [RET]
Keep in mind that MELPA packages are built automatically from
master branch, meaning bugs might creep in there from time to
time. Never-the-less, installing from MELPA is the recommended way of
Elixir-Mode, as the
master branch is normally quite stable and
"stable" (tagged) builds are released somewhat infrequently.
With the most recent builds of Emacs, you can pin
Elixir-Mode to always
use MELPA Stable by adding this to your Emacs initialization:
(add-to-list 'package-pinned-packages '(elixir-mode . "melpa-stable") t)
el-get is another popular package manager for Emacs. If you're an el-get user just do M-x el-get-install [RET] elixir-mode [RET].
You can install
Elixir-Mode manually by placing
Elixir-Mode on your
require ing it. Many people favour the folder
(add-to-list 'load-path "~/.emacs.d/vendor") (require 'elixir-mode)
|Command (For the
||Switches to elixir-mode.|
||Open the GitHub page for Elixir.|
||Go to Elixir README in the browser.|
||Open the Elixir documentation for the master.|
||Open the Elixir documentation for the latest stable release.|
||Print version info for elixir-mode.|
Any file that matches the glob
automatically opened in elixir-mode, but you can change this
;; Highlights *.elixir2 as well (add-to-list 'auto-mode-alist '("\\.elixir2\\'" . elixir-mode))
Keymaps can be added to the
If you want to use
ruby-end-mode for a more comfortable editing
experience, you can add the following to your
(add-to-list 'elixir-mode-hook (defun auto-activate-ruby-end-mode-for-elixir-mode () (set (make-variable-buffer-local 'ruby-end-expand-keywords-before-re) "\\(?:^\\|\\s-+\\)\\(?:do\\)") (set (make-variable-buffer-local 'ruby-end-check-statement-modifiers) nil) (ruby-end-mode +1)))
Also, if you use smartparens you can
piggyback on some of its functionality for dealing with Ruby's
do .. end
blocks. A sample configuration would be:
(sp-with-modes '(elixir-mode) (sp-local-pair "fn" "end" :when '(("SPC" "RET")) :actions '(insert navigate)) (sp-local-pair "do" "end" :when '(("SPC" "RET")) :post-handlers '(sp-ruby-def-post-handler) :actions '(insert navigate)))
Elixir Tooling Integration
If you looking for elixir tooling integration for Emacs, check: alchemist.el
You can use web-mode.el to edit elixir templates (eex files).
This mode is based on the Emacs mode by secondplanet.
Please read CONTRIBUTING.md for guidelines on how to contribute to this project.
Copyright © 2011-2015 Samuel Tonini, Matt DeBoard, Andreas Fuchs, secondplanet and contributors.
Distributed under the GNU General Public License, version 3