eb269c7458
* add missing key bindings * add alchemist-refcard spacemacs version * update README |
||
---|---|---|
.. | ||
img | ||
alchemist-refcard.pdf | ||
alchemist-refcard.tex | ||
config.el | ||
packages.el | ||
README.md |
Erlang/Elixir contribution layer for Spacemacs
Table of Contents
Install
To use this contribution add it to your ~/.spacemacs
(setq-default dotspacemacs-configuration-layers '(erlang-elixir))
Erlang
Enable EDTS
EDTS is disabled by default, to enable it add the following snippet to
the dotspacemacs/init
function of your ~/.spacemacs
file.
(setq spacemacs-erlang-elixir-use-edts t)
Note that EDTS
is disable on Windows.
EDTS Key bindings
Key Binding | Description
--------------------|------------------------------------------------------------ SPC m d | show man page documentation SPC m e | go to next issue SPC m g | go to definition SPC m G | find a module in the current project SPC m h | open the header file under point SPC m l | find a function in the current module SPC m m | go to the macro definition under point SPC m r | go to the record definition under point
Elixir
Alchemist
Alchemist brings the Elixir toolings to Emacs and comes with a bunch of features like,
- Powerful IEx integration
- Mix integration
- Compile & Execution of Elixir code
- Inline code evaluation
- Documentation lookup
- Definition lookup
- Smart code completion
- Elixir project management
- Integration with company-mode
Refcard
You find and overview of all the key-bindings on the Alchemist-Refcard.
Key bindings
Help
Key Binding | Description
----------------------|------------------------------------------------------------ SPC m h : | Run custom search for help SPC m h h | Show help of the current expression SPC m h H | Toggle through search history SPC m h r | Show help for current region
Mix
Key Binding | Description
----------------------|------------------------------------------------------------
SPC m m : | Prompt for a mix
command
SPC m m c | Compile the whole application
SPC m m h | Show help for a specific mix
command
SPC m m x | Run the given expression in the Elixir application context
Project
Key Binding | Description
----------------------|------------------------------------------------------------ SPC m p t | Open project test directory and list all test files. SPC m g t | Toggle between a file and its tests in the current window. SPC m g T | Toggle between a file and its tests in other window.
Evaluation in place
Key Binding | Description
----------------------|------------------------------------------------------------ SPC m e b | Evaluate buffer SPC m e B | Evaluate buffer and insert result SPC m e l | Evaluate current line SPC m e L | Evaluate current line and insert result SPC m e r | Evaluate region SPC m e R | Evaluate region and insert result
REPL interactions
Key Binding | Description
----------------------|------------------------------------------------------------
SPC m s i | Start an iex
inferior process
SPC m s I | Start an IEx process with mix (iex -S mix
)
SPC m s l | Send current line to REPL buffer
SPC m s L | Send current line to REPL buffer and focus it in insert state
SPC m s r | Send region to REPL buffer
SPC m s R | Send region to REPL buffer and focus it in insert state
SPC m s c | Compiles the current buffer in the IEx process.
Tests
Key Binding | Description
----------------------|------------------------------------------------------------ SPC m g t | Open the test file for current buffer SPC m t a | Run all the tests SPC m t b | Run all the tests from current buffer SPC m t t | Run test under point
Compile
Key Binding | Description
----------------------|------------------------------------------------------------
SPC m c : | Run a custom compile command with elixirc
SPC m c b | Compile the current buffer with elixirc. elixirc
SPC m c f | Compile the given filename with elixirc
Execute
Key Binding | Description
----------------------|------------------------------------------------------------
SPC m x : | Run a custom execute command with elixir
SPC m x b | Run the current buffer through elixir
SPC m x f | Run elixir
with the given filename
Code Definition Jump
Key Binding | Description
--------------------|------------------------------------------------------------ SPC m g g | Jump to the elixir expression definition at point. SPC m , | Pop back to where SPC m g g was last invoked.