From a7f3d49b69adfdfa37586afbe2f9e4da960bfd2f Mon Sep 17 00:00:00 2001 From: Yasuhiro Matsumoto Date: Sat, 14 Dec 2019 22:27:35 +0900 Subject: Fix structure --- plugin/lsp_setup.vim | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) (limited to 'plugin') diff --git a/plugin/lsp_setup.vim b/plugin/lsp_setup.vim index 8c22b00..dc5fe48 100644 --- a/plugin/lsp_setup.vim +++ b/plugin/lsp_setup.vim @@ -1,13 +1,29 @@ let s:setting_dir = expand(':h:h').'/setting' let s:setting = json_decode(join(readfile(expand(':h:h').'/setting.json'), "\n")) +function! s:vimlsp_settings_suggest(cmd) abort + echomsg "Do you install " . a:cmd +endfunction + function! s:vimlsp_setting() abort for l:ft in keys(s:setting) - for l:command in keys(s:setting[l:ft]) - if executable(l:command) - exe 'source' printf('%s/%s.vim', s:setting_dir, l:command) + let l:found = 0 + if empty(s:setting[l:ft]) + continue + endif + for l:server in s:setting[l:ft] + if executable(l:server.command) + exe 'source' printf('%s/%s.vim', s:setting_dir, l:server.command) + let l:found += 1 + break endif endfor + if l:found == 0 + exe printf('augroup vimlsp_suggest_%s', l:ft) + au! + exe printf('autocmd FileType %s call s:vimlsp_settings_suggest(%s)', l:ft, string(s:setting[l:ft][0].command)) + augroup END + endif endfor endfunction -- cgit v1.2.3-54-g00ecf