diff options
-rw-r--r-- | checkers/cl-lsp.vim | 6 | ||||
-rw-r--r-- | checkers/perl-languageserver.vim | 7 | ||||
-rw-r--r-- | checkers/slp.vim | 3 | ||||
-rw-r--r-- | settings/perl-languageserver.vim | 2 | ||||
-rw-r--r-- | settings/slp.vim | 2 |
5 files changed, 15 insertions, 5 deletions
diff --git a/checkers/cl-lsp.vim b/checkers/cl-lsp.vim index e8e7d9f..1923f0f 100644 --- a/checkers/cl-lsp.vim +++ b/checkers/cl-lsp.vim @@ -1,7 +1,7 @@ function! LspCheckCommand() abort let l:command = trim(filter(systemlist('ros version'), 'v:val =~# "^homedir="')[0][8:], '''"') . '/bin/cl-lsp' - if filereadable(l:command) - return l:command + if !filereadable(l:command) + return '' endif - return '' + return l:command endfunction diff --git a/checkers/perl-languageserver.vim b/checkers/perl-languageserver.vim new file mode 100644 index 0000000..be76ac2 --- /dev/null +++ b/checkers/perl-languageserver.vim @@ -0,0 +1,7 @@ +function! LspCheckCommand() abort + call system('perl -e "use Perl::LanguageServer"') + if v:shell_error + return '' + endif + return 'perl -MPerl::LanguageServer -e "Perl::LanguageServer->run"' +endfunction diff --git a/checkers/slp.vim b/checkers/slp.vim new file mode 100644 index 0000000..a76188d --- /dev/null +++ b/checkers/slp.vim @@ -0,0 +1,3 @@ +function! LspCheckCommand() abort + return lsp_settings#exec_path('slp.pl') +endfunction diff --git a/settings/perl-languageserver.vim b/settings/perl-languageserver.vim index f43c624..1195cc8 100644 --- a/settings/perl-languageserver.vim +++ b/settings/perl-languageserver.vim @@ -2,7 +2,7 @@ augroup vimlsp_settings_perl_languageserver au! LspRegisterServer { \ 'name': 'perl-languageserver', - \ 'cmd': {server_info->lsp_settings#get('perl-languageserver', 'cmd', [lsp_settings#exec_path('perl-languageserver')])}, + \ 'cmd': {server_info->lsp_settings#get('perl-languageserver', 'cmd', ['perl', '-MPerl::LanguageServer', '-e', 'Perl::LanguageServer->run'])}, \ 'root_uri':{server_info->lsp_settings#get('perl-languageserver', 'root_uri', lsp_settings#root_uri(['.git/']))}, \ 'initialization_options': lsp_settings#get('perl-languageserver', 'initialization_options', v:null), \ 'whitelist': lsp_settings#get('perl-languageserver', 'whitelist', ['perl']), diff --git a/settings/slp.vim b/settings/slp.vim index 380bdf4..7cb3fa2 100644 --- a/settings/slp.vim +++ b/settings/slp.vim @@ -2,7 +2,7 @@ augroup vimlsp_settings_slp au! LspRegisterServer { \ 'name': 'slp', - \ 'cmd': {server_info->lsp_settings#get('slp', 'cmd', [lsp_settings#exec_path('slp')])}, + \ 'cmd': {server_info->lsp_settings#get('slp', 'cmd', [lsp_settings#exec_path('slp.pl')])}, \ 'root_uri':{server_info->lsp_settings#get('slp', 'root_uri', lsp_settings#root_uri(['.git/']))}, \ 'initialization_options': lsp_settings#get('slp', 'initialization_options', v:null), \ 'whitelist': lsp_settings#get('slp', 'whitelist', ['perl']), |