/erlls

Erlang language server

Primary LanguageRustApache License 2.0Apache-2.0

ErlLS

erlls vscode version Actions Status License

Erlang language server.

Supported LSP features

Editor integrations

ErlLS can be used with any LSP clients. Here are a few examples.

Visual Studio Code / Visual Studio Code for the Web

Please install erlls extension.

There is no need to install the erlls binary using the $ cargo install command as the extension already includes the WebAssembly build.

Settings (settings.json)

To include the Erlang/OTP applications in the search target, please specify the directory as follows:

{
    "erlls.erlLibs": "/usr/local/lib/erlang/lib/:_checkouts:_build/default/lib"
}

NOTE:

  • The actual path may vary depending on the environment.
  • In VSCode Web, it's not possible to search applications located outside of the workspace.

Emacs (lsp-mode)

  1. Install erlls command.
$ cargo install erlls
  1. Add the following code to your .emacs file.
(with-eval-after-load 'lsp-mode
  (add-to-list 'lsp-language-id-configuration
               '(erlang-mode . "erlang")))

(lsp-register-client
 (make-lsp-client :new-connection (lsp-stdio-connection "erlls")
                  :activation-fn (lsp-activate-on "erlang")
                  :priority -1
                  :server-id 'erlls))