mirror of
https://github.com/mattn/vim-lsp-settings.git
synced 2025-12-12 20:35:54 +01:00
Merge user's env
This commit is contained in:
@@ -358,9 +358,9 @@ function! s:vim_lsp_install_server_post(command, job, code, ...) abort
|
||||
let l:script = printf('%s/%s.vim', s:settings_dir, a:command)
|
||||
if filereadable(l:script)
|
||||
if has('patch-8.1.1113')
|
||||
command! -nargs=1 LspRegisterServer autocmd User lsp_setup ++once call lsp#register_server(<args>)
|
||||
command! -nargs=1 LspRegisterServer autocmd User lsp_setup ++once call lsp_settings#register_server(<args>)
|
||||
else
|
||||
command! -nargs=1 LspRegisterServer autocmd User lsp_setup call lsp#register_server(<args>)
|
||||
command! -nargs=1 LspRegisterServer autocmd User lsp_setup call lsp_settings#register_server(<args>)
|
||||
endif
|
||||
exe 'source' l:script
|
||||
delcommand LspRegisterServer
|
||||
@@ -454,6 +454,15 @@ function! s:vim_lsp_suggest_plugin() abort
|
||||
endfor
|
||||
endfunction
|
||||
|
||||
function! lsp_settings#register_server(...) abort
|
||||
let l:name = a:000[0]['name']
|
||||
let l:env = lsp_settings#get(l:name, 'env', {})
|
||||
if !empty(l:env)
|
||||
let a:000[0]['env'] = l:env
|
||||
endif
|
||||
return call('lsp#register_server', a:000)
|
||||
endfunction
|
||||
|
||||
function! s:vim_lsp_load_or_suggest(ft) abort
|
||||
if (a:ft !=# '_' && &filetype !=# a:ft) || !has_key(s:settings, a:ft)
|
||||
return
|
||||
@@ -489,9 +498,9 @@ function! s:vim_lsp_load_or_suggest(ft) abort
|
||||
exe 'augroup!' l:group_name
|
||||
|
||||
if has('patch-8.1.1113')
|
||||
command! -nargs=1 LspRegisterServer autocmd User lsp_setup ++once call lsp#register_server(<args>)
|
||||
command! -nargs=1 LspRegisterServer autocmd User lsp_setup ++once call lsp_settings#register_server(<args>)
|
||||
else
|
||||
command! -nargs=1 LspRegisterServer autocmd User lsp_setup call lsp#register_server(<args>)
|
||||
command! -nargs=1 LspRegisterServer autocmd User lsp_setup call lsp_settings#register_server(<args>)
|
||||
endif
|
||||
|
||||
let l:default = get(g:, 'lsp_settings_filetype_' . a:ft, '')
|
||||
|
||||
Reference in New Issue
Block a user