From 7841d8439bfb7527964f74f245b9011cc3e46c5a Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 16:19:14 +0900 Subject: Use npm_install --- installer/install-bash-language-server.sh | 3 +-- installer/install-css-languageserver.sh | 3 +-- installer/install-docker-langserver.sh | 3 +-- installer/install-elm-language-server.sh | 3 +-- installer/install-html-languageserver.sh | 3 +-- installer/install-intelephense.sh | 3 +-- .../install-javascript-typescript-langserver.cmd | 2 +- .../install-javascript-typescript-langserver.sh | 3 +-- installer/install-json-languageserver.sh | 3 +-- installer/install-typescript-language-server.sh | 5 ++--- installer/install-vim-language-server.sh | 3 +-- installer/install-yaml-language-server.sh | 3 +-- installer/npm.sh | 25 ---------------------- installer/npm_install | 23 ++++++++++++++++++++ settings/typescript-language-server.vim | 2 +- 15 files changed, 37 insertions(+), 50 deletions(-) delete mode 100644 installer/npm.sh create mode 100755 installer/npm_install diff --git a/installer/install-bash-language-server.sh b/installer/install-bash-language-server.sh index c27d0d8..1b9417c 100755 --- a/installer/install-bash-language-server.sh +++ b/installer/install-bash-language-server.sh @@ -4,5 +4,4 @@ set -e cd $(dirname $0) -. ./npm.sh -npm_install bash-language-server bash-language-server +./npm_install bash-language-server bash-language-server diff --git a/installer/install-css-languageserver.sh b/installer/install-css-languageserver.sh index ae7c8a6..c34ad12 100755 --- a/installer/install-css-languageserver.sh +++ b/installer/install-css-languageserver.sh @@ -4,5 +4,4 @@ set -e cd $(dirname $0) -. ./npm.sh -npm_install css-languageserver vscode-css-languageserver-bin +./npm_install css-languageserver vscode-css-languageserver-bin diff --git a/installer/install-docker-langserver.sh b/installer/install-docker-langserver.sh index 28b433f..a756b31 100755 --- a/installer/install-docker-langserver.sh +++ b/installer/install-docker-langserver.sh @@ -4,5 +4,4 @@ set -e cd $(dirname $0) -. ./npm.sh -npm_install docker-langserver dockerfile-language-server-nodejs +./npm_install docker-langserver dockerfile-language-server-nodejs diff --git a/installer/install-elm-language-server.sh b/installer/install-elm-language-server.sh index e0a1b27..3b6b4df 100755 --- a/installer/install-elm-language-server.sh +++ b/installer/install-elm-language-server.sh @@ -4,5 +4,4 @@ set -e cd $(dirname $0) -. ./npm.sh -npm_install elm-languageserver "@elm-tooling/elm-language-server" +./npm_install elm-languageserver "@elm-tooling/elm-language-server" diff --git a/installer/install-html-languageserver.sh b/installer/install-html-languageserver.sh index 6838379..3a7f817 100755 --- a/installer/install-html-languageserver.sh +++ b/installer/install-html-languageserver.sh @@ -4,5 +4,4 @@ set -e cd $(dirname $0) -. ./npm.sh -npm_install html-languageserver vscode-html-languageserver-bin +./npm_install html-languageserver vscode-html-languageserver-bin diff --git a/installer/install-intelephense.sh b/installer/install-intelephense.sh index 4b24254..15c64d6 100755 --- a/installer/install-intelephense.sh +++ b/installer/install-intelephense.sh @@ -4,5 +4,4 @@ set -e cd $(dirname $0) -. ./npm.sh -npm_install intelephense intelephense +./npm_install intelephense intelephense diff --git a/installer/install-javascript-typescript-langserver.cmd b/installer/install-javascript-typescript-langserver.cmd index a653ada..ce74e11 100644 --- a/installer/install-javascript-typescript-langserver.cmd +++ b/installer/install-javascript-typescript-langserver.cmd @@ -2,4 +2,4 @@ cd /d %~dp0 -call npm_install javascript-typescript-langserver javascript-typescript-langserver +call npm_install javascript-typescript-stdio javascript-typescript-langserver diff --git a/installer/install-javascript-typescript-langserver.sh b/installer/install-javascript-typescript-langserver.sh index de35663..b083671 100755 --- a/installer/install-javascript-typescript-langserver.sh +++ b/installer/install-javascript-typescript-langserver.sh @@ -4,5 +4,4 @@ set -e cd $(dirname $0) -. ./npm.sh -npm_install javascript-typescript-langserver javascript-typescript-langserver +./npm_install javascript-typescript-stdio javascript-typescript-langserver diff --git a/installer/install-json-languageserver.sh b/installer/install-json-languageserver.sh index 8e5c2f2..74dd9e1 100755 --- a/installer/install-json-languageserver.sh +++ b/installer/install-json-languageserver.sh @@ -4,5 +4,4 @@ set -e cd $(dirname $0) -. ./npm.sh -npm_install json-languageserver vscode-json-languageserver-bin +./npm_install json-languageserver vscode-json-languageserver-bin diff --git a/installer/install-typescript-language-server.sh b/installer/install-typescript-language-server.sh index a34ea58..4a9a735 100755 --- a/installer/install-typescript-language-server.sh +++ b/installer/install-typescript-language-server.sh @@ -4,6 +4,5 @@ set -e cd $(dirname $0) -. ./npm.sh -npm_install tsserver typescript -npm_install typescript-language-server typescript-language-server +./npm_install tsserver typescript +./npm_install typescript-language-server typescript-language-server diff --git a/installer/install-vim-language-server.sh b/installer/install-vim-language-server.sh index 17b87df..974e315 100755 --- a/installer/install-vim-language-server.sh +++ b/installer/install-vim-language-server.sh @@ -4,5 +4,4 @@ set -e cd $(dirname $0) -. ./npm.sh -npm_install vim-language-server vim-language-server +./npm_install vim-language-server vim-language-server diff --git a/installer/install-yaml-language-server.sh b/installer/install-yaml-language-server.sh index d3f0e47..7e46d5d 100755 --- a/installer/install-yaml-language-server.sh +++ b/installer/install-yaml-language-server.sh @@ -4,5 +4,4 @@ set -e cd $(dirname $0) -. ./npm.sh -npm_install yaml-language-server yaml-language-server +./npm_install yaml-language-server yaml-language-server diff --git a/installer/npm.sh b/installer/npm.sh deleted file mode 100644 index 19e4e11..0000000 --- a/installer/npm.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash - -set -e - -# Usage -# $ . npm.sh -# $ npm_install [EXECUTABLE_NAME] [NPM_NAME] -npm_install() { - server_dir="../servers/$1" - [ -d "$server_dir" ] && rm -rf "$server_dir" - mkdir "$server_dir" && pushd . > /dev/null && cd "$server_dir" - - npm init -y - - # Avoid the problem of not being able to install the same package as name in package.json. - # Create an empty package.json. - cat <package.json - {"name": ""} -EOF - - npm install "$2" - ln -s "./node_modules/.bin/$1" . - - popd > /dev/null -} diff --git a/installer/npm_install b/installer/npm_install new file mode 100755 index 0000000..3fd41bd --- /dev/null +++ b/installer/npm_install @@ -0,0 +1,23 @@ +#!/bin/bash + +# Usage +# $ . npm.sh +# $ npm_install [EXECUTABLE_NAME] [NPM_NAME] + +set -e + +server_dir="../servers/$1" +[ -d "$server_dir" ] && rm -rf "$server_dir" +mkdir "$server_dir" +cd "$server_dir" + +npm init -y + +# Avoid the problem of not being able to install the same package as name in package.json. +# Create an empty package.json. +cat <package.json +{"name": ""} +EOF + +npm install "$2" +ln -s "./node_modules/.bin/$1" . diff --git a/settings/typescript-language-server.vim b/settings/typescript-language-server.vim index 8b62b67..438696c 100644 --- a/settings/typescript-language-server.vim +++ b/settings/typescript-language-server.vim @@ -5,7 +5,7 @@ augroup vimlsp_settings_typescript_language_server \ 'cmd': {server_info->lsp_settings#get('typescript-language-server', 'cmd', [lsp_settings#exec_path('typescript-language-server'), '--stdio', '--tsserver-path', lsp_settings#exec_path('tsserver')])}, \ 'root_uri':{server_info->lsp_settings#get('typescript-language-server', 'root_uri', lsp_settings#root_uri(['.git/', 'package.json']))}, \ 'initialization_options': lsp_settings#get('typescript-language-server', 'initialization_options', {"diagnostics": "true"}), - \ 'whitelist': lsp_settings#get('typescript-language-server', 'whitelist', ['typescript', 'typescriptreact']), + \ 'whitelist': lsp_settings#get('typescript-language-server', 'whitelist', ['javascript', 'typescript', 'typescriptreact']), \ 'blacklist': lsp_settings#get('typescript-language-server', 'blacklist', []), \ 'config': lsp_settings#get('typescript-language-server', 'config', {}), \ 'workspace_config': lsp_settings#get('typescript-language-server', 'workspace_config', {}), -- cgit v1.2.3-54-g00ecf From be79a792894750c9b7d55f43ea34d112637bc529 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 16:23:37 +0900 Subject: Use stdio version --- settings.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings.json b/settings.json index ea3a9e3..f0ba616 100644 --- a/settings.json +++ b/settings.json @@ -91,7 +91,7 @@ ], "javascript": [ { - "command": "javascript-typescript-langserver", + "command": "javascript-typescript-stdio", "requires": [ "npm" ] -- cgit v1.2.3-54-g00ecf From 2706a1daf7349870e086f08751f7a914808c7ee8 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 16:28:29 +0900 Subject: Rename files --- installer/install-javascript-typescript-langserver.cmd | 5 ----- installer/install-javascript-typescript-langserver.sh | 7 ------- installer/install-javascript-typescript-stdio.cmd | 5 +++++ installer/install-javascript-typescript-stdio.sh | 7 +++++++ settings/javascript-typescript-langserver.vim | 13 ------------- settings/javascript-typescript-stdio.vim | 13 +++++++++++++ 6 files changed, 25 insertions(+), 25 deletions(-) delete mode 100644 installer/install-javascript-typescript-langserver.cmd delete mode 100755 installer/install-javascript-typescript-langserver.sh create mode 100644 installer/install-javascript-typescript-stdio.cmd create mode 100755 installer/install-javascript-typescript-stdio.sh delete mode 100644 settings/javascript-typescript-langserver.vim create mode 100644 settings/javascript-typescript-stdio.vim diff --git a/installer/install-javascript-typescript-langserver.cmd b/installer/install-javascript-typescript-langserver.cmd deleted file mode 100644 index ce74e11..0000000 --- a/installer/install-javascript-typescript-langserver.cmd +++ /dev/null @@ -1,5 +0,0 @@ -@echo off - -cd /d %~dp0 - -call npm_install javascript-typescript-stdio javascript-typescript-langserver diff --git a/installer/install-javascript-typescript-langserver.sh b/installer/install-javascript-typescript-langserver.sh deleted file mode 100755 index b083671..0000000 --- a/installer/install-javascript-typescript-langserver.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash - -set -e - -cd $(dirname $0) - -./npm_install javascript-typescript-stdio javascript-typescript-langserver diff --git a/installer/install-javascript-typescript-stdio.cmd b/installer/install-javascript-typescript-stdio.cmd new file mode 100644 index 0000000..ce74e11 --- /dev/null +++ b/installer/install-javascript-typescript-stdio.cmd @@ -0,0 +1,5 @@ +@echo off + +cd /d %~dp0 + +call npm_install javascript-typescript-stdio javascript-typescript-langserver diff --git a/installer/install-javascript-typescript-stdio.sh b/installer/install-javascript-typescript-stdio.sh new file mode 100755 index 0000000..b083671 --- /dev/null +++ b/installer/install-javascript-typescript-stdio.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +set -e + +cd $(dirname $0) + +./npm_install javascript-typescript-stdio javascript-typescript-langserver diff --git a/settings/javascript-typescript-langserver.vim b/settings/javascript-typescript-langserver.vim deleted file mode 100644 index 72afeb0..0000000 --- a/settings/javascript-typescript-langserver.vim +++ /dev/null @@ -1,13 +0,0 @@ -augroup vimlsp_settings_javascript_typescript_langserver - au! - LspRegisterServer { - \ 'name': 'javascript-typescript-langserver', - \ 'cmd': {server_info->lsp_settings#get('javascript-typescript-langserver', 'cmd', [lsp_settings#exec_path('javascript-typescript-langserver')])}, - \ 'root_uri':{server_info->lsp_settings#get('javascript-typescript-langserver', 'root_uri', lsp_settings#root_uri(['.git/']))}, - \ 'initialization_options': lsp_settings#get('javascript-typescript-langserver', 'initialization_options', {"diagnostics": "true"}), - \ 'whitelist': lsp_settings#get('javascript-typescript-langserver', 'whitelist', ['javascript', 'javascriptreact']), - \ 'blacklist': lsp_settings#get('javascript-typescript-langserver', 'blacklist', []), - \ 'config': lsp_settings#get('javascript-typescript-langserver', 'config', {}), - \ 'workspace_config': lsp_settings#get('javascript-typescript-langserver', 'workspace_config', {}), - \ } -augroup END diff --git a/settings/javascript-typescript-stdio.vim b/settings/javascript-typescript-stdio.vim new file mode 100644 index 0000000..72afeb0 --- /dev/null +++ b/settings/javascript-typescript-stdio.vim @@ -0,0 +1,13 @@ +augroup vimlsp_settings_javascript_typescript_langserver + au! + LspRegisterServer { + \ 'name': 'javascript-typescript-langserver', + \ 'cmd': {server_info->lsp_settings#get('javascript-typescript-langserver', 'cmd', [lsp_settings#exec_path('javascript-typescript-langserver')])}, + \ 'root_uri':{server_info->lsp_settings#get('javascript-typescript-langserver', 'root_uri', lsp_settings#root_uri(['.git/']))}, + \ 'initialization_options': lsp_settings#get('javascript-typescript-langserver', 'initialization_options', {"diagnostics": "true"}), + \ 'whitelist': lsp_settings#get('javascript-typescript-langserver', 'whitelist', ['javascript', 'javascriptreact']), + \ 'blacklist': lsp_settings#get('javascript-typescript-langserver', 'blacklist', []), + \ 'config': lsp_settings#get('javascript-typescript-langserver', 'config', {}), + \ 'workspace_config': lsp_settings#get('javascript-typescript-langserver', 'workspace_config', {}), + \ } +augroup END -- cgit v1.2.3-54-g00ecf From 8a98e7a44196b40d238b77c8960774da0d758257 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 16:33:55 +0900 Subject: Prefer typescript-languageserver --- README.md | 56 ++++++++++++++++---------------- settings.json | 4 +-- settings/javascript-typescript-stdio.vim | 18 +++++----- 3 files changed, 39 insertions(+), 39 deletions(-) diff --git a/README.md b/README.md index 9126db5..7aa3bc5 100644 --- a/README.md +++ b/README.md @@ -60,34 +60,34 @@ Currently, no way to uninstall/update server. Run this command again, newer vers ## Supported Languages -| Language | Language Server | Local Install | -|------------|-------------------------------------------------------------|:-------------:| -| C/C++ | clangd | No | -| C# | omnisharp | Yes | -| Clojure | clojure-lsp | Yes | -| TypeScript | typescript-language-server | Yes | -| JavaScript | javascript-typescript-langserver/typescript-language-server | Yes | -| Python | pyls | Yes | -| Rust | rls | No | -| Go | gopls | Yes | -| Ruby | solargraph | Yes | -| PHP | intelephense | Yes | -| Java | eclipse-jdt-ls | Yes | -| Lua | emmylua-ls | Yes | -| Vim | vim-language-server | Yes | -| Bash | bash-language-server | Yes | -| Terraform | terraform-lsp | Yes | -| Dockerfile | dockerfile-language-server-nodejs | Yes | -| YAML | yaml-language-server | Yes | -| XML | lsp4xml | Yes | -| Fortran | fortls | Yes | -| Scala | Metals | Yes | -| Elm | elm-language-server | Yes | -| JSON | json-languageserver | Yes | -| Swift | sourcekit-lsp | No | -| COBOL | cobol-language-support | Yes | -| Reason | reason-language-server | Yes | -| TeX | digestif | No | +| Language | Language Server | Local Install | +|------------|--------------------------------------------------------|:-------------:| +| C/C++ | clangd | No | +| C# | omnisharp | Yes | +| Clojure | clojure-lsp | Yes | +| TypeScript | typescript-language-server | Yes | +| JavaScript | javascript-typescript-stdio/typescript-language-server | Yes | +| Python | pyls | Yes | +| Rust | rls | No | +| Go | gopls | Yes | +| Ruby | solargraph | Yes | +| PHP | intelephense | Yes | +| Java | eclipse-jdt-ls | Yes | +| Lua | emmylua-ls | Yes | +| Vim | vim-language-server | Yes | +| Bash | bash-language-server | Yes | +| Terraform | terraform-lsp | Yes | +| Dockerfile | dockerfile-language-server-nodejs | Yes | +| YAML | yaml-language-server | Yes | +| XML | lsp4xml | Yes | +| Fortran | fortls | Yes | +| Scala | Metals | Yes | +| Elm | elm-language-server | Yes | +| JSON | json-languageserver | Yes | +| Swift | sourcekit-lsp | No | +| COBOL | cobol-language-support | Yes | +| Reason | reason-language-server | Yes | +| TeX | digestif | No | ## License diff --git a/settings.json b/settings.json index f0ba616..822ffdb 100644 --- a/settings.json +++ b/settings.json @@ -91,13 +91,13 @@ ], "javascript": [ { - "command": "javascript-typescript-stdio", + "command": "typescript-language-server", "requires": [ "npm" ] }, { - "command": "typescript-language-server", + "command": "javascript-typescript-stdio", "requires": [ "npm" ] diff --git a/settings/javascript-typescript-stdio.vim b/settings/javascript-typescript-stdio.vim index 72afeb0..eb370d5 100644 --- a/settings/javascript-typescript-stdio.vim +++ b/settings/javascript-typescript-stdio.vim @@ -1,13 +1,13 @@ -augroup vimlsp_settings_javascript_typescript_langserver +augroup vimlsp_settings_javascript_typescript_stdio au! LspRegisterServer { - \ 'name': 'javascript-typescript-langserver', - \ 'cmd': {server_info->lsp_settings#get('javascript-typescript-langserver', 'cmd', [lsp_settings#exec_path('javascript-typescript-langserver')])}, - \ 'root_uri':{server_info->lsp_settings#get('javascript-typescript-langserver', 'root_uri', lsp_settings#root_uri(['.git/']))}, - \ 'initialization_options': lsp_settings#get('javascript-typescript-langserver', 'initialization_options', {"diagnostics": "true"}), - \ 'whitelist': lsp_settings#get('javascript-typescript-langserver', 'whitelist', ['javascript', 'javascriptreact']), - \ 'blacklist': lsp_settings#get('javascript-typescript-langserver', 'blacklist', []), - \ 'config': lsp_settings#get('javascript-typescript-langserver', 'config', {}), - \ 'workspace_config': lsp_settings#get('javascript-typescript-langserver', 'workspace_config', {}), + \ 'name': 'javascript-typescript-stdio', + \ 'cmd': {server_info->lsp_settings#get('javascript-typescript-stdio', 'cmd', [lsp_settings#exec_path('javascript-typescript-stdio')])}, + \ 'root_uri':{server_info->lsp_settings#get('javascript-typescript-stdio', 'root_uri', lsp_settings#root_uri(['.git/']))}, + \ 'initialization_options': lsp_settings#get('javascript-typescript-stdio', 'initialization_options', {"diagnostics": "true"}), + \ 'whitelist': lsp_settings#get('javascript-typescript-stdio', 'whitelist', ['javascript', 'javascriptreact']), + \ 'blacklist': lsp_settings#get('javascript-typescript-stdio', 'blacklist', []), + \ 'config': lsp_settings#get('javascript-typescript-stdio', 'config', {}), + \ 'workspace_config': lsp_settings#get('javascript-typescript-stdio', 'workspace_config', {}), \ } augroup END -- cgit v1.2.3-54-g00ecf From 0babb12a71814a74381a835cfc44acebc24141a4 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 16:35:20 +0900 Subject: Fix order --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7aa3bc5..44e1188 100644 --- a/README.md +++ b/README.md @@ -66,7 +66,7 @@ Currently, no way to uninstall/update server. Run this command again, newer vers | C# | omnisharp | Yes | | Clojure | clojure-lsp | Yes | | TypeScript | typescript-language-server | Yes | -| JavaScript | javascript-typescript-stdio/typescript-language-server | Yes | +| JavaScript | typescript-language-server/javascript-typescript-stdio | Yes | | Python | pyls | Yes | | Rust | rls | No | | Go | gopls | Yes | -- cgit v1.2.3-54-g00ecf From 49e3f4d50ad260d4b7d8e0914ae2a75bbbbfda20 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 17:24:21 +0900 Subject: Check first sub-type in filetype --- plugin/lsp_settings.vim | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/plugin/lsp_settings.vim b/plugin/lsp_settings.vim index 412b6f3..b54ec20 100644 --- a/plugin/lsp_settings.vim +++ b/plugin/lsp_settings.vim @@ -33,10 +33,11 @@ function! s:executable(cmd) abort endfunction function! s:vimlsp_installer() abort - if !has_key(s:settings, &filetype) + let l:ft = split(&filetype, '\.')[0] + if !has_key(s:settings, l:ft) return [] endif - let l:server = s:settings[&filetype] + let l:server = s:settings[l:ft] if empty(l:server) return [] endif -- cgit v1.2.3-54-g00ecf From e02e966ebd9240702893d42e9a6a5c662ad11ed5 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 17:51:56 +0900 Subject: Use pip_install.sh --- installer/install-bash-language-server.sh | 2 +- installer/install-css-languageserver.sh | 2 +- installer/install-docker-langserver.sh | 2 +- installer/install-elm-language-server.sh | 2 +- installer/install-fortls.sh | 3 +-- installer/install-html-languageserver.sh | 2 +- installer/install-intelephense.sh | 2 +- installer/install-javascript-typescript-stdio.sh | 2 +- installer/install-json-languageserver.sh | 2 +- installer/install-pyls.sh | 3 +-- installer/install-typescript-language-server.sh | 4 ++-- installer/install-vim-language-server.sh | 2 +- installer/install-yaml-language-server.sh | 2 +- installer/pip3.sh | 16 ---------------- installer/pip_install.sh | 15 +++++++++++++++ 15 files changed, 29 insertions(+), 32 deletions(-) delete mode 100644 installer/pip3.sh create mode 100755 installer/pip_install.sh diff --git a/installer/install-bash-language-server.sh b/installer/install-bash-language-server.sh index 1b9417c..2cffd6a 100755 --- a/installer/install-bash-language-server.sh +++ b/installer/install-bash-language-server.sh @@ -4,4 +4,4 @@ set -e cd $(dirname $0) -./npm_install bash-language-server bash-language-server +./npm_install.sh bash-language-server bash-language-server diff --git a/installer/install-css-languageserver.sh b/installer/install-css-languageserver.sh index c34ad12..93b29c3 100755 --- a/installer/install-css-languageserver.sh +++ b/installer/install-css-languageserver.sh @@ -4,4 +4,4 @@ set -e cd $(dirname $0) -./npm_install css-languageserver vscode-css-languageserver-bin +./npm_install.sh css-languageserver vscode-css-languageserver-bin diff --git a/installer/install-docker-langserver.sh b/installer/install-docker-langserver.sh index a756b31..4bfe96e 100755 --- a/installer/install-docker-langserver.sh +++ b/installer/install-docker-langserver.sh @@ -4,4 +4,4 @@ set -e cd $(dirname $0) -./npm_install docker-langserver dockerfile-language-server-nodejs +./npm_install.sh docker-langserver dockerfile-language-server-nodejs diff --git a/installer/install-elm-language-server.sh b/installer/install-elm-language-server.sh index 3b6b4df..516426b 100755 --- a/installer/install-elm-language-server.sh +++ b/installer/install-elm-language-server.sh @@ -4,4 +4,4 @@ set -e cd $(dirname $0) -./npm_install elm-languageserver "@elm-tooling/elm-language-server" +./npm_install.sh elm-languageserver "@elm-tooling/elm-language-server" diff --git a/installer/install-fortls.sh b/installer/install-fortls.sh index 9685151..b337f68 100755 --- a/installer/install-fortls.sh +++ b/installer/install-fortls.sh @@ -2,5 +2,4 @@ cd $(dirname $0) -. ./pip3.sh -pip_install fortls fortran-language-server +./pip_install.sh fortls fortran-language-server diff --git a/installer/install-html-languageserver.sh b/installer/install-html-languageserver.sh index 3a7f817..386fcb6 100755 --- a/installer/install-html-languageserver.sh +++ b/installer/install-html-languageserver.sh @@ -4,4 +4,4 @@ set -e cd $(dirname $0) -./npm_install html-languageserver vscode-html-languageserver-bin +./npm_install.sh html-languageserver vscode-html-languageserver-bin diff --git a/installer/install-intelephense.sh b/installer/install-intelephense.sh index 15c64d6..d26f7d5 100755 --- a/installer/install-intelephense.sh +++ b/installer/install-intelephense.sh @@ -4,4 +4,4 @@ set -e cd $(dirname $0) -./npm_install intelephense intelephense +./npm_install.sh intelephense intelephense diff --git a/installer/install-javascript-typescript-stdio.sh b/installer/install-javascript-typescript-stdio.sh index b083671..cbbf068 100755 --- a/installer/install-javascript-typescript-stdio.sh +++ b/installer/install-javascript-typescript-stdio.sh @@ -4,4 +4,4 @@ set -e cd $(dirname $0) -./npm_install javascript-typescript-stdio javascript-typescript-langserver +./npm_install.sh javascript-typescript-stdio javascript-typescript-langserver diff --git a/installer/install-json-languageserver.sh b/installer/install-json-languageserver.sh index 74dd9e1..600c3e2 100755 --- a/installer/install-json-languageserver.sh +++ b/installer/install-json-languageserver.sh @@ -4,4 +4,4 @@ set -e cd $(dirname $0) -./npm_install json-languageserver vscode-json-languageserver-bin +./npm_install.sh json-languageserver vscode-json-languageserver-bin diff --git a/installer/install-pyls.sh b/installer/install-pyls.sh index fa61803..0c45c37 100755 --- a/installer/install-pyls.sh +++ b/installer/install-pyls.sh @@ -4,5 +4,4 @@ set -e cd $(dirname $0) -. ./pip3.sh -pip_install pyls python-language-server +./pip_install.sh pyls python-language-server diff --git a/installer/install-typescript-language-server.sh b/installer/install-typescript-language-server.sh index 4a9a735..fbf7f59 100755 --- a/installer/install-typescript-language-server.sh +++ b/installer/install-typescript-language-server.sh @@ -4,5 +4,5 @@ set -e cd $(dirname $0) -./npm_install tsserver typescript -./npm_install typescript-language-server typescript-language-server +./npm_install.sh tsserver typescript +./npm_install.sh typescript-language-server typescript-language-server diff --git a/installer/install-vim-language-server.sh b/installer/install-vim-language-server.sh index 974e315..7f44c8d 100755 --- a/installer/install-vim-language-server.sh +++ b/installer/install-vim-language-server.sh @@ -4,4 +4,4 @@ set -e cd $(dirname $0) -./npm_install vim-language-server vim-language-server +./npm_install.sh vim-language-server vim-language-server diff --git a/installer/install-yaml-language-server.sh b/installer/install-yaml-language-server.sh index 7e46d5d..d62959f 100755 --- a/installer/install-yaml-language-server.sh +++ b/installer/install-yaml-language-server.sh @@ -4,4 +4,4 @@ set -e cd $(dirname $0) -./npm_install yaml-language-server yaml-language-server +./npm_install.sh yaml-language-server yaml-language-server diff --git a/installer/pip3.sh b/installer/pip3.sh deleted file mode 100644 index b309e88..0000000 --- a/installer/pip3.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -set -e - -# Usage -# $ . pip3.sh -# $ pip_install [EXECUTABLE_NAME] [PYPI_NAME] -pip_install() { - server_dir="../servers/$1" - [ -d "$server_dir" ] && rm -rf "$server_dir" - mkdir "$server_dir" && cd "$server_dir" - - python3 -m venv ./venv - ./venv/bin/pip3 install "$2" - ln -s "./venv/bin/$1" . -} diff --git a/installer/pip_install.sh b/installer/pip_install.sh new file mode 100755 index 0000000..60c4df6 --- /dev/null +++ b/installer/pip_install.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +# Usage +# $ . pip3.sh +# $ pip_install [EXECUTABLE_NAME] [PYPI_NAME] + +set -e + +server_dir="../servers/$1" +[ -d "$server_dir" ] && rm -rf "$server_dir" +mkdir "$server_dir" && cd "$server_dir" + +python3 -m venv ./venv +./venv/bin/pip3 install "$2" +ln -s "./venv/bin/$1" . -- cgit v1.2.3-54-g00ecf From 3e128f68a17da06b72ed501839b3533f3fd8b4c7 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 17:52:54 +0900 Subject: Rename --- installer/npm_install | 23 ----------------------- installer/npm_install.sh | 23 +++++++++++++++++++++++ 2 files changed, 23 insertions(+), 23 deletions(-) delete mode 100755 installer/npm_install create mode 100755 installer/npm_install.sh diff --git a/installer/npm_install b/installer/npm_install deleted file mode 100755 index 3fd41bd..0000000 --- a/installer/npm_install +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash - -# Usage -# $ . npm.sh -# $ npm_install [EXECUTABLE_NAME] [NPM_NAME] - -set -e - -server_dir="../servers/$1" -[ -d "$server_dir" ] && rm -rf "$server_dir" -mkdir "$server_dir" -cd "$server_dir" - -npm init -y - -# Avoid the problem of not being able to install the same package as name in package.json. -# Create an empty package.json. -cat <package.json -{"name": ""} -EOF - -npm install "$2" -ln -s "./node_modules/.bin/$1" . diff --git a/installer/npm_install.sh b/installer/npm_install.sh new file mode 100755 index 0000000..3fd41bd --- /dev/null +++ b/installer/npm_install.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +# Usage +# $ . npm.sh +# $ npm_install [EXECUTABLE_NAME] [NPM_NAME] + +set -e + +server_dir="../servers/$1" +[ -d "$server_dir" ] && rm -rf "$server_dir" +mkdir "$server_dir" +cd "$server_dir" + +npm init -y + +# Avoid the problem of not being able to install the same package as name in package.json. +# Create an empty package.json. +cat <package.json +{"name": ""} +EOF + +npm install "$2" +ln -s "./node_modules/.bin/$1" . -- cgit v1.2.3-54-g00ecf From 805fb1583f38174e87a0d45e1cc5ad761fabe07f Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 17:54:34 +0900 Subject: Fix comment --- installer/npm_install.sh | 1 - installer/pip_install.sh | 1 - 2 files changed, 2 deletions(-) diff --git a/installer/npm_install.sh b/installer/npm_install.sh index 3fd41bd..3c41838 100755 --- a/installer/npm_install.sh +++ b/installer/npm_install.sh @@ -1,7 +1,6 @@ #!/bin/bash # Usage -# $ . npm.sh # $ npm_install [EXECUTABLE_NAME] [NPM_NAME] set -e diff --git a/installer/pip_install.sh b/installer/pip_install.sh index 60c4df6..4ceecbe 100755 --- a/installer/pip_install.sh +++ b/installer/pip_install.sh @@ -1,7 +1,6 @@ #!/bin/bash # Usage -# $ . pip3.sh # $ pip_install [EXECUTABLE_NAME] [PYPI_NAME] set -e -- cgit v1.2.3-54-g00ecf From 9fd821cd8288d1f70cd064ce4a6c551dcc842125 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 21:01:46 +0900 Subject: Fix installer for omnisharp-lsp --- installer/install-omnisharp-lsp.sh | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/installer/install-omnisharp-lsp.sh b/installer/install-omnisharp-lsp.sh index f98f311..a30add3 100755 --- a/installer/install-omnisharp-lsp.sh +++ b/installer/install-omnisharp-lsp.sh @@ -3,12 +3,29 @@ set -e cd $(dirname $0) -[ -d ../servers/omnisharp-lsp ] && rm -rf ../servers/omnisharp-lsp -mkdir ../servers/omnisharp-lsp -cd ../servers/omnisharp-lsp -curl -L -o omnisharp-linux-x64.zip https://github.com/OmniSharp/omnisharp-roslyn/releases/download/v1.34.9/omnisharp-linux-x64.zip -unzip omnisharp-linux-x64.zip -rm omnisharp-linux-x64.zip + +server_dir="../servers/omnisharp-lsp" +[ -d $server_dir ] && rm -rf $server_dir +mkdir $server_dir && cd $server_dir + +os=$(uname -s | tr "[:upper:]" "[:lower:]") + +case $os in +linux) ;; +darwin) + os="osx" + ;; +*) + printf "%s doesn't supported by bash installer" "$os" + exit 1 + ;; +esac + +version="v1.34.9" +url="https://github.com/OmniSharp/omnisharp-roslyn/releases/download/$version/omnisharp-$os-x64.tar.gz" +curl -LO "$url" +tar xzvf omnisharp-$os-x64.tar.gz +rm omnisharp-$os-x64.tar.gz chmod +x run -- cgit v1.2.3-54-g00ecf From 3f2113c05c219460616a7cb2139d372693c08e09 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 21:02:02 +0900 Subject: Fix run_unzip.cmd --- installer/run_unzip.cmd | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/installer/run_unzip.cmd b/installer/run_unzip.cmd index 1815a90..b3175d7 100644 --- a/installer/run_unzip.cmd +++ b/installer/run_unzip.cmd @@ -3,7 +3,9 @@ if "x%1" equ "x" goto :EOF where unzip 2>NUL -if %ERRORLEVEL% neq 0 ( +if %ERRORLEVEL% equ 0 ( + unzip "%1" +) else ( curl -L -o %~dp0\unzip.exe https://github.com/mattn/vim-lsp-settings/releases/download/v0.0.1/unzip.exe + %~dp0\unzip "%1" ) -%~dp0\unzip "%1" -- cgit v1.2.3-54-g00ecf From bab2a078d67caf9e62ea2232b2581cb9197a2579 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 21:02:27 +0900 Subject: Add texlab --- installer/install-texlab.cmd | 15 +++++++++++++++ installer/install-texlab.sh | 26 ++++++++++++++++++++++++++ settings.json | 40 ++++++++++++++++++++++++---------------- settings/texlab.vim | 13 +++++++++++++ 4 files changed, 78 insertions(+), 16 deletions(-) create mode 100644 installer/install-texlab.cmd create mode 100644 installer/install-texlab.sh create mode 100644 settings/texlab.vim diff --git a/installer/install-texlab.cmd b/installer/install-texlab.cmd new file mode 100644 index 0000000..5d7cece --- /dev/null +++ b/installer/install-texlab.cmd @@ -0,0 +1,15 @@ +@echo off + +setlocal + +cd /d %~dp0 + +set installer_dir=%cd% +set server_dir=..\servers\texlab +if exist %server_dir% rd /Q /S "%server_dir%" +md "%server_dir%" +cd /d "%server_dir%" + +curl -L -o texlab-x86_64-windows.zip "https://github.com/latex-lsp/texlab/releases/download/v1.8.0/texlab-x86_64-windows.zip" +call %installer_dir%\run_unzip texlab-x86_64-windows.zip +del texlab-x86_64-windows.zip diff --git a/installer/install-texlab.sh b/installer/install-texlab.sh new file mode 100644 index 0000000..a619ea4 --- /dev/null +++ b/installer/install-texlab.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +set -e + +cd $(dirname $0) + +server_dir="../servers/texlab" +[ -d $server_dir ] && rm -rf $server_dir +mkdir $server_dir && cd $server_dir + +os=$(uname -s | tr "[:upper:]" "[:lower:]") + +case $os in +linux) ;; +darwin) + os="macos" + ;; +*) + printf "%s doesn't supported by bash installer" "$os" + exit 1 + ;; +esac + +url="https://github.com/latex-lsp/texlab/releases/download/v1.8.0/texlab-x86_64-$os.tar.gz" +curl -LO "$url" +tar xzvf texlab-x86_64-$os.tar.gz diff --git a/settings.json b/settings.json index 822ffdb..ccb83af 100644 --- a/settings.json +++ b/settings.json @@ -143,6 +143,18 @@ ] } ], + "plaintex": [ + { + "command": "texlab", + "requires": [] + }, + { + "command": "digestif", + "requires": [ + "luarocks" + ] + } + ], "python": [ { "command": "pyls", @@ -209,6 +221,18 @@ "requires": [] } ], + "tex": [ + { + "command": "texlab", + "requires": [] + }, + { + "command": "digestif", + "requires": [ + "luarocks" + ] + } + ], "typescript": [ { "command": "typescript-language-server", @@ -240,21 +264,5 @@ "npm" ] } - ], - "plaintex": [ - { - "command": "digestif", - "requires": [ - "luarocks" - ] - } - ], - "tex": [ - { - "command": "digestif", - "requires": [ - "luarocks" - ] - } ] } diff --git a/settings/texlab.vim b/settings/texlab.vim new file mode 100644 index 0000000..3cdee7d --- /dev/null +++ b/settings/texlab.vim @@ -0,0 +1,13 @@ +augroup vimlsp_settings_texlab + au! + LspRegisterServer { + \ 'name': 'texlab', + \ 'cmd': {server_info->lsp_settings#get('texlab', 'cmd', [lsp_settings#exec_path('texlab')])}, + \ 'root_uri':{server_info->lsp_settings#get('texlab', 'root_uri', lsp_settings#root_uri(['.git/']))}, + \ 'initialization_options': lsp_settings#get('texlab', 'initialization_options', {"diagnostics": "true"}), + \ 'whitelist': lsp_settings#get('texlab', 'whitelist', ['plaintex', 'tex']), + \ 'blacklist': lsp_settings#get('texlab', 'blacklist', []), + \ 'config': lsp_settings#get('texlab', 'config', {}), + \ 'workspace_config': lsp_settings#get('texlab', 'workspace_config', {}), + \ } +augroup END -- cgit v1.2.3-54-g00ecf From d0e074d5165e2b53c26ec299b1fe529732cc7542 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 21:04:15 +0900 Subject: Update README.md --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 44e1188..71f66ff 100644 --- a/README.md +++ b/README.md @@ -66,7 +66,8 @@ Currently, no way to uninstall/update server. Run this command again, newer vers | C# | omnisharp | Yes | | Clojure | clojure-lsp | Yes | | TypeScript | typescript-language-server | Yes | -| JavaScript | typescript-language-server/javascript-typescript-stdio | Yes | +| JavaScript | typescript-language-server | Yes | +| JavaScript | javascript-typescript-stdio | Yes | | Python | pyls | Yes | | Rust | rls | No | | Go | gopls | Yes | @@ -87,6 +88,7 @@ Currently, no way to uninstall/update server. Run this command again, newer vers | Swift | sourcekit-lsp | No | | COBOL | cobol-language-support | Yes | | Reason | reason-language-server | Yes | +| TeX | texlab | Yes | | TeX | digestif | No | ## License -- cgit v1.2.3-54-g00ecf From 552052d5fc29951fa5391e0409cfc9f2edb3a6ee Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 21:08:38 +0900 Subject: Show colored message --- plugin/lsp_settings.vim | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plugin/lsp_settings.vim b/plugin/lsp_settings.vim index b54ec20..5284203 100644 --- a/plugin/lsp_settings.vim +++ b/plugin/lsp_settings.vim @@ -109,7 +109,10 @@ function! s:vimlsp_settings_suggest() abort return endif if !exists(':LspInstallServer') + redraw + echohl Directory echomsg 'If you want to enable Language Server, please do :LspInstallServer' + echohl None command! -buffer LspInstallServer call s:vimlsp_install_server() endif endfunction -- cgit v1.2.3-54-g00ecf From 78ea37665065698f731ea7db90bad01d244cd264 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 21:42:29 +0900 Subject: Add nimlsp --- settings.json | 6 ++++++ settings/nimlsp.vim | 13 +++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 settings/nimlsp.vim diff --git a/settings.json b/settings.json index ccb83af..2171a3a 100644 --- a/settings.json +++ b/settings.json @@ -135,6 +135,12 @@ ] } ], + "nim": [ + { + "command": "nimlsp", + "requires": [] + } + ], "php": [ { "command": "intelephense", diff --git a/settings/nimlsp.vim b/settings/nimlsp.vim new file mode 100644 index 0000000..95c71e1 --- /dev/null +++ b/settings/nimlsp.vim @@ -0,0 +1,13 @@ +augroup vimlsp_settings_nimlsp + au! + LspRegisterServer { + \ 'name': 'nimlsp', + \ 'cmd': {server_info->lsp_settings#get('nimlsp', 'cmd', [lsp_settings#exec_path('nimlsp')])}, + \ 'root_uri':{server_info->lsp_settings#get('nimlsp', 'root_uri', lsp_settings#root_uri(['.git/']))}, + \ 'initialization_options': lsp_settings#get('nimlsp', 'initialization_options', {"diagnostics": "true"}), + \ 'whitelist': lsp_settings#get('nimlsp', 'whitelist', ['nim']), + \ 'blacklist': lsp_settings#get('nimlsp', 'blacklist', []), + \ 'config': lsp_settings#get('nimlsp', 'config', {}), + \ 'workspace_config': lsp_settings#get('nimlsp', 'workspace_config', {}), + \ } +augroup END -- cgit v1.2.3-54-g00ecf From 560e3d479ddf228b8ce0a41bbdd71ccafeccc1a8 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 22:11:57 +0900 Subject: Add dls --- settings.json | 8 ++++++++ settings/dls.vim | 13 +++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 settings/dls.vim diff --git a/settings.json b/settings.json index 2171a3a..6ccdd8b 100644 --- a/settings.json +++ b/settings.json @@ -41,6 +41,14 @@ ] } ], + "d": [ + { + "command": "dls", + "requires": [ + "npm" + ] + } + ], "dockerfile": [ { "command": "docker-langserver", diff --git a/settings/dls.vim b/settings/dls.vim new file mode 100644 index 0000000..fc7a9dd --- /dev/null +++ b/settings/dls.vim @@ -0,0 +1,13 @@ +augroup vimlsp_settings_dls + au! + LspRegisterServer { + \ 'name': 'dls', + \ 'cmd': {server_info->lsp_settings#get('dls', 'cmd', [lsp_settings#exec_path('dls')])}, + \ 'root_uri':{server_info->lsp_settings#get('dls', 'root_uri', lsp_settings#root_uri(['.git/']))}, + \ 'initialization_options': lsp_settings#get('dls', 'initialization_options', {"diagnostics": "true"}), + \ 'whitelist': lsp_settings#get('dls', 'whitelist', ['d']), + \ 'blacklist': lsp_settings#get('dls', 'blacklist', []), + \ 'config': lsp_settings#get('dls', 'config', {}), + \ 'workspace_config': lsp_settings#get('dls', 'workspace_config', {}), + \ } +augroup END -- cgit v1.2.3-54-g00ecf From b03ffa93817fbaf314ae64fb1d37526be17f2490 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 22:19:36 +0900 Subject: Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 71f66ff..ec37da7 100644 --- a/README.md +++ b/README.md @@ -90,6 +90,8 @@ Currently, no way to uninstall/update server. Run this command again, newer vers | Reason | reason-language-server | Yes | | TeX | texlab | Yes | | TeX | digestif | No | +| Nim | nimls | No | +| D | dls | No | ## License -- cgit v1.2.3-54-g00ecf From 3d9eda0cf7b7340c4e9ece535e181e10bab5c55d Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 22:32:38 +0900 Subject: Add installer for dls --- installer/install-dls.cmd | 15 +++++++++++++++ installer/install-dls.sh | 27 +++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 installer/install-dls.cmd create mode 100755 installer/install-dls.sh diff --git a/installer/install-dls.cmd b/installer/install-dls.cmd new file mode 100644 index 0000000..1a78b25 --- /dev/null +++ b/installer/install-dls.cmd @@ -0,0 +1,15 @@ +@echo off + +setlocal + +cd /d %~dp0 + +set installer_dir=%cd% +set server_dir=..\servers\dls +if exist %server_dir% rd /Q /S "%server_dir%" +md "%server_dir%" +cd /d "%server_dir%" + +curl -L -o dls-v0.26.0.windows.x86_64.zip https://github.com/d-language-server/dls/releases/download/v0.26.0/dls-v0.26.0.windows.x86_64.zip" +call %installer_dir%\run_unzip dls-v0.26.0.windows.x86_64.zip +del dls-v0.26.0.windows.x86_64.zip diff --git a/installer/install-dls.sh b/installer/install-dls.sh new file mode 100755 index 0000000..478329f --- /dev/null +++ b/installer/install-dls.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +set -e + +cd $(dirname $0) + +server_dir="../servers/dls" +[ -d $server_dir ] && rm -rf $server_dir +mkdir $server_dir && cd $server_dir + +os=$(uname -s | tr "[:upper:]" "[:lower:]") + +case $os in +linux) ;; +darwin) + os="osx" + ;; +*) + printf "%s doesn't supported by bash installer" "$os" + exit 1 + ;; +esac + +version="v0.26.0" +url="https://github.com/d-language-server/dls/releases/download/$version/dls-$version.$os.x86_64.zip" +curl -LO "$url" +unzip "dls-$version.$os.x86_64.zip" -- cgit v1.2.3-54-g00ecf From 2db366c8b5e401afac50831282b82e0f5faa9d61 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 22:35:22 +0900 Subject: chmod +x --- installer/install-texlab.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 installer/install-texlab.sh diff --git a/installer/install-texlab.sh b/installer/install-texlab.sh old mode 100644 new mode 100755 -- cgit v1.2.3-54-g00ecf From 7acb14c3bc9ae10181ef03e86f704ff4e5a06051 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 23:48:14 +0900 Subject: Add elixir-ls --- installer/install-elixir-ls.cmd | 22 ++++++++++++++++++++++ installer/install-elixir-ls.sh | 24 ++++++++++++++++++++++++ settings.json | 8 ++++++++ settings/elixir-ls.vim | 14 ++++++++++++++ 4 files changed, 68 insertions(+) create mode 100644 installer/install-elixir-ls.cmd create mode 100644 installer/install-elixir-ls.sh create mode 100644 settings/elixir-ls.vim 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 < 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 + -- cgit v1.2.3-54-g00ecf From c9be6328a4ffaadb7b420ccf665df1d654e69aab Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 23:49:18 +0900 Subject: chmod +x --- installer/install-elixir-ls.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 installer/install-elixir-ls.sh diff --git a/installer/install-elixir-ls.sh b/installer/install-elixir-ls.sh old mode 100644 new mode 100755 -- cgit v1.2.3-54-g00ecf From c743c433a7b83091c03cea406bd20633662f1847 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 28 Dec 2019 23:53:35 +0900 Subject: Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index ec37da7..c4a07d9 100644 --- a/README.md +++ b/README.md @@ -92,6 +92,7 @@ Currently, no way to uninstall/update server. Run this command again, newer vers | TeX | digestif | No | | Nim | nimls | No | | D | dls | No | +| Elixir | elixir-ls | Yes | ## License -- cgit v1.2.3-54-g00ecf From 38c4e67140ee3e37c8c06765e111d00e2d1211dd Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sun, 29 Dec 2019 00:21:32 +0900 Subject: Check command exists --- plugin/lsp_settings.vim | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/plugin/lsp_settings.vim b/plugin/lsp_settings.vim index 5284203..51aae02 100644 --- a/plugin/lsp_settings.vim +++ b/plugin/lsp_settings.vim @@ -184,7 +184,9 @@ function! s:vimlsp_load_or_suggest(ft) abort endif endif - delcommand LspRegisterServer + if !exists(':LspRegisterServer') + delcommand LspRegisterServer + endif endfunction function! s:load_or_suggest_group_name(ft) abort -- cgit v1.2.3-54-g00ecf