aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYasuhiro Matsumoto <mattn.jp@gmail.com>2019-12-28 23:48:14 +0900
committerYasuhiro Matsumoto <mattn.jp@gmail.com>2019-12-28 23:48:14 +0900
commit7acb14c3bc9ae10181ef03e86f704ff4e5a06051 (patch)
tree03216a961382878d2c54985b3e0fa4c8270a2802
parent2db366c8b5e401afac50831282b82e0f5faa9d61 (diff)
downloadvim-lsp-settings-7acb14c3bc9ae10181ef03e86f704ff4e5a06051.tar.gz
vim-lsp-settings-7acb14c3bc9ae10181ef03e86f704ff4e5a06051.tar.bz2
vim-lsp-settings-7acb14c3bc9ae10181ef03e86f704ff4e5a06051.zip
Add elixir-ls
-rw-r--r--installer/install-elixir-ls.cmd22
-rw-r--r--installer/install-elixir-ls.sh24
-rw-r--r--settings.json8
-rw-r--r--settings/elixir-ls.vim14
4 files changed, 68 insertions, 0 deletions
diff --git a/installer/install-elixir-ls.cmd b/installer/install-elixir-ls.cmd
new file mode 100644
index 0000000..a92a9cf
--- /dev/null
+++ b/installer/install-elixir-ls.cmd
@@ -0,0 +1,22 @@
+@echo off
+
+setlocal
+
+cd /d %~dp0
+
+set installer_dir=%cd%
+set server_dir=..\servers\elixir-ls
+if exist %server_dir% rd /Q /S "%server_dir%"
+md "%server_dir%"
+cd /d "%server_dir%"
+
+curl -L -o elixir-ls.zip "https://github.com/JakeBecker/elixir-ls/releases/download/v0.2.25/elixir-ls.zip"
+call %installer_dir%\run_unzip elixir-ls.zip
+del elixir-ls.zip
+
+echo @echo off ^
+
+call language_server.bat ^
+
+> elixir-ls.cmd
+
diff --git a/installer/install-elixir-ls.sh b/installer/install-elixir-ls.sh
new file mode 100644
index 0000000..b1497b6
--- /dev/null
+++ b/installer/install-elixir-ls.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+set -e
+
+cd $(dirname $0)
+
+server_dir="../servers/elixir-ls"
+[ -d $server_dir ] && rm -rf $server_dir
+mkdir $server_dir && cd $server_dir
+
+version="v0.2.25"
+url="https://github.com/JakeBecker/elixir-ls/releases/download/$version/elixir-ls.zip"
+curl -LO "$url"
+unzip elixir-ls.zip
+rm elixir-ls.zip
+
+cat <<EOF > elixir-ls
+#!/bin/sh
+
+DIR=\$(cd \$(dirname \$0); pwd)
+\$DIR/language_server.sh \$*
+EOF
+
+chmod +x elixir-ls
diff --git a/settings.json b/settings.json
index 6ccdd8b..1c01e72 100644
--- a/settings.json
+++ b/settings.json
@@ -57,6 +57,14 @@
]
}
],
+ "elixir": [
+ {
+ "command": "elixir-ls",
+ "requires": [
+ "elixir"
+ ]
+ }
+ ],
"elm": [
{
"command": "elm-language-server",
diff --git a/settings/elixir-ls.vim b/settings/elixir-ls.vim
new file mode 100644
index 0000000..6695e0c
--- /dev/null
+++ b/settings/elixir-ls.vim
@@ -0,0 +1,14 @@
+augroup vimlsp_settings_elixir_ls
+ au!
+ LspRegisterServer {
+ \ 'name': 'elixir-ls',
+ \ 'cmd': {server_info->lsp_settings#get('elixir-ls', 'cmd', [lsp_settings#exec_path('elixir-ls')])},
+ \ 'root_uri':{server_info->lsp_settings#get('elixir-ls', 'root_uri', lsp_settings#root_uri(['.git/']))},
+ \ 'initialization_options': lsp_settings#get('elixir-ls', 'initialization_options', v:null),
+ \ 'whitelist': lsp_settings#get('elixir-ls', 'whitelist', ['elixir']),
+ \ 'blacklist': lsp_settings#get('elixir-ls', 'blacklist', []),
+ \ 'config': lsp_settings#get('elixir-ls', 'config', {}),
+ \ 'workspace_config': lsp_settings#get('elixir-ls', 'workspace_config', {}),
+ \ }
+augroup END
+