From 3ec4f3ff36a6cb89fec459bd9e3d9f2cd2baabdb Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 1 Feb 2020 01:01:14 +0900 Subject: [WIP] Add julia-language-server --- settings.json | 14 ++++++++++++++ settings/julia-language-server.vim | 13 +++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 settings/julia-language-server.vim diff --git a/settings.json b/settings.json index d7bf7bd..02cf1a3 100644 --- a/settings.json +++ b/settings.json @@ -252,6 +252,20 @@ } } ], + "julia": [ + { + "command": "julia-language-server", + "requires": [ + "julia" + ], + "vim-plugin": { + "extensions": [ + "jl" + ], + "name": "ajpaulson/julia-syntax.vim" + } + } + ], "kotlin": [ { "command": "kotlin-language-server", diff --git a/settings/julia-language-server.vim b/settings/julia-language-server.vim new file mode 100644 index 0000000..ce07288 --- /dev/null +++ b/settings/julia-language-server.vim @@ -0,0 +1,13 @@ +augroup vimlsp_settings_julia_language_server + au! + LspRegisterServer { + \ 'name': 'julia-language-server', + \ 'cmd': {server_info->lsp_settings#get('julia-language-server', 'cmd', [lsp_settings#exec_path('julia-language-server')])}, + \ 'root_uri':{server_info->lsp_settings#get('julia-language-server', 'root_uri', lsp_settings#root_uri(g:lsp_settings_root_markers))}, + \ 'initialization_options': lsp_settings#get('julia-language-server', 'initialization_options', v:null), + \ 'whitelist': lsp_settings#get('julia-language-server', 'whitelist', ['julia']), + \ 'blacklist': lsp_settings#get('julia-language-server', 'blacklist', []), + \ 'config': lsp_settings#get('julia-language-server', 'config', {}), + \ 'workspace_config': lsp_settings#get('julia-language-server', 'workspace_config', {}), + \ } +augroup END -- cgit v1.2.3-54-g00ecf From 495e43f70c4ccd0ef72f262f8149d54175fa7a77 Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Wed, 12 Feb 2020 11:20:13 +0900 Subject: Add installer --- installer/install-julia-language-server.sh | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100755 installer/install-julia-language-server.sh diff --git a/installer/install-julia-language-server.sh b/installer/install-julia-language-server.sh new file mode 100755 index 0000000..1e15cba --- /dev/null +++ b/installer/install-julia-language-server.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash + +set -e + +julia -e 'using Pkg; Pkg.add(PackageSpec(name="LanguageServer", rev="master"))' +julia -e 'using Pkg; Pkg.add(PackageSpec(name="SymbolServer", rev="master"))' +julia -e 'using Pkg; Pkg.add(PackageSpec(name="CSTParser", rev="master"))' + +cat <languageserver.jl +import LanguageServer +import Pkg +import SymbolServer + +envpath = dirname(Pkg.Types.Context().env.project_file) +server = LanguageServer.LanguageServerInstance(stdin, stdout, false, envpath) +server.runlinter = true +run(server) +EOF + +cat <julia-language-server +#!/usr/bin/env bash + +DIR=\$(cd \$(dirname \$0); pwd) +julia \$DIR/languageserver.jl \$* +EOF + +chmod +x julia-language-server -- cgit v1.2.3-54-g00ecf