Install ale
and use elm_ls
linter. See elm-language-server README and ale README for usage instructions.
- Note: This will likely be merged into ALE itself at some point, this repo is mainly for testing before that happens.
This plugin adds support for linting through ALE with elm-language-server.
Package Manager | Command |
---|---|
Vim-Plug | Plug 'antew/vim-elm-language-server' |
Vundle | Plugin 'antew/vim-elm-language-server' |
Pathogen | cd ~/.vim/bundle |
elm-language-server is not currently published as an npm package, to install it you can run:
$ git clone https://github.com/elm-tooling/elm-language-server.git
$ cd elm-language-server
$ npm install
$ npm run compile
$ npm link
You can allow ALE to use a globally installed versions of elm-language-server
with
let g:ale_elm_ls_use_global = 1
Or, you can configure ALE to use a globally installed version for all executables.
let g:ale_use_global_executables = 1
You can set the path to elm
, elm-format
, elm-test
and elm-language-server
if desired, it defaults to assuming executables are avilable on the $PATH
.
let g:ale_elm_ls_elm_path = "/path/to/elm"
let g:ale_elm_ls_elm_format_path = "/path/to/elm-format"
let g:ale_elm_ls_elm_test_path = "/path/to/elm-test"
let g:ale_elm_ls_executable = "/path/to/elm-language-server"
Disable ale's elm
linter to avoid duplicate compile error messages:
let g:ale_linters_ignore = { 'elm': ['make'] }