Key features
-
Intelligent Editor for Erlang with code completion, syntax and error highlighting and code inspections
-
Code Navigation: project and file structure views, quick jumping between files, modules, functions and usages
-
Tools and frameworks integration: support for Eunit and Rebar
-
VCS Integrations: out-of-the-box support for Subversion, Git and Mercurial
- Cross-platform: works on Windows, Mac OS X and Linux
Installation
- Download the latest IntelliJ IDEA build and install it
- Setup the latest version of Erlang plugin from Configure > Plugins > Browse Repositories... > Erlang
- Restart IntelliJ IDEA.
- Done! You can import your existing Erlang project or create the new one.
Donations
If you would like to make a donation you can use PayPal.
How-tos
User Interface
Very nice guide about IntelliJ user interface.
Erlang SDK setup
You need to specify a directory that contains bin directory with erl and erlc executables inside.
Also that directory should contains releases dir inside.
Some predefined paths:
Also that directory should contains releases dir inside.
Some predefined paths:
- /usr/lib/erlang (Linux)
- /opt/local/lib/erlang (Mac Ports on Mac OS X)
- /usr/local/Cellar/erlang/R*/lib/erlang (Homebrew on Mac OS X)
Rebar integration
First of all, you need to provide the right path to the Rebar executable (Settings > Erlang External Tools).

Note for Mac OS X users. Please, check that the PATH for IntelliJ contains rebar executable.
For further information see Stackoverflow answer and
#189 issue.
Note for Windows users. Please checkout how to install rebar for Windows.
After you have set your rebar path up you can create a new Rebar run configuration(Run > Edit run configurations...),
use a little green button on the top left corner:
use a little green button on the top left corner:

Or execute an existing one (Run > Run...)


You may create run configuration for every command which Rebar supports, e.g.
compile
or clean
, etc.

Skip dependencies checkbox adds
skip_deps=true
command for Rebar executable.
To run eunit tests with rebar you can either create a Rebar Eunit run configuration or use a right-click context menu item 'Run ...' or 'Create ...' having clicked on a module(s), a unit test or a generator function you want to run.

Rebar-based Eunit test runner:

To set rebar as a default build action make sure you have checked Compile project with rebar checkbox:

After that your project will be built with 'rebar compile' command when you run Build > Make Project.
Compilation result:

Project structure
In version 0.5 we've added additonal per-module configuration parameters(see Project Structure > Modules).
There you can setup your modules' include paths and global parse transformations.
There you can setup your modules' include paths and global parse transformations.

Debugger
Version 0.5 introduces experimental Erlang debugger support.
In order to use debugger you need to have debug_info checkbox under Settings > Compiler > Erlang Compiler checked.
You also need an Erlang Application run configuration which will be used by debugger. Such configuration can be created by right-clicking on entry point function.

Then you can use this configuration to debug your program:

The debugger requires Erlang Port Mapper Daemon (epmd) to be running. If it's not up, a warning will be issued. To start the daemon run any Erlang node on your machine, for example with erl -sname foo -s init stop -noshell command.
In order to use debugger you need to have debug_info checkbox under Settings > Compiler > Erlang Compiler checked.
You also need an Erlang Application run configuration which will be used by debugger. Such configuration can be created by right-clicking on entry point function.

Then you can use this configuration to debug your program:

The debugger requires Erlang Port Mapper Daemon (epmd) to be running. If it's not up, a warning will be issued. To start the daemon run any Erlang node on your machine, for example with erl -sname foo -s init stop -noshell command.