diff --git a/autoload/lsp_settings.vim b/autoload/lsp_settings.vim index d233b63..a86f046 100644 --- a/autoload/lsp_settings.vim +++ b/autoload/lsp_settings.vim @@ -170,6 +170,16 @@ function! lsp_settings#merge(name, key, default) abort return lsp_settings#utils#extend(l:config, a:default) endfunction +function! lsp_settings#get(name, key, value) abort + if !has_key(g:, 'lsp_settings') + let g:lsp_settings = {} + endif + if !has_key(g:lsp_settings, a:name) + let g:lsp_settings[a:name] = {} + endif + let g:lsp_settings[a:name] = a:value +endfunction + function! lsp_settings#get(name, key, default) abort let l:config = get(g:, 'lsp_settings', {}) if !has_key(l:config, a:name) diff --git a/checkers/cl-lsp.vim b/checkers/cl-lsp.vim index 1923f0f..b145bcb 100644 --- a/checkers/cl-lsp.vim +++ b/checkers/cl-lsp.vim @@ -3,5 +3,6 @@ function! LspCheckCommand() abort if !filereadable(l:command) return '' endif + call lsp_settings#set('cl-lsp', 'cmd', l:command) return l:command endfunction