diff options
Diffstat (limited to 'autoload')
-rw-r--r-- | autoload/ale/assert.vim | 8 | ||||
-rw-r--r-- | autoload/ale/debugging.vim | 2 | ||||
-rw-r--r-- | autoload/ale/lsp_linter.vim | 16 |
3 files changed, 18 insertions, 8 deletions
diff --git a/autoload/ale/assert.vim b/autoload/ale/assert.vim index 7db0a22e..8c7a5461 100644 --- a/autoload/ale/assert.vim +++ b/autoload/ale/assert.vim @@ -265,11 +265,11 @@ function! ale#assert#SetUpLinterTest(filetype, name) abort call ale#linter#Reset() call ale#linter#PreventLoading(a:filetype) - Save g:ale_lsp_root - let g:ale_lsp_root = {} + Save g:ale_root + let g:ale_root = {} - Save b:ale_lsp_root - unlet! b:ale_lsp_root + Save b:ale_root + unlet! b:ale_root call ale#assert#ResetVariables(a:filetype, a:name) diff --git a/autoload/ale/debugging.vim b/autoload/ale/debugging.vim index 5e6d5906..1f7ea467 100644 --- a/autoload/ale/debugging.vim +++ b/autoload/ale/debugging.vim @@ -33,13 +33,13 @@ let s:global_variable_list = [ \ 'ale_list_vertical', \ 'ale_list_window_size', \ 'ale_loclist_msg_format', -\ 'ale_lsp_root', \ 'ale_max_buffer_history_size', \ 'ale_max_signs', \ 'ale_maximum_file_size', \ 'ale_open_list', \ 'ale_pattern_options', \ 'ale_pattern_options_enabled', +\ 'ale_root', \ 'ale_set_balloons', \ 'ale_set_highlights', \ 'ale_set_loclist', diff --git a/autoload/ale/lsp_linter.vim b/autoload/ale/lsp_linter.vim index 2a3902b6..0d039198 100644 --- a/autoload/ale/lsp_linter.vim +++ b/autoload/ale/lsp_linter.vim @@ -201,7 +201,11 @@ function! ale#lsp_linter#GetConfig(buffer, linter) abort endfunction function! ale#lsp_linter#FindProjectRoot(buffer, linter) abort - let l:buffer_ale_root = getbufvar(a:buffer, 'ale_lsp_root', {}) + let l:buffer_ale_root = getbufvar( + \ a:buffer, + \ 'ale_root', + \ getbufvar(a:buffer, 'ale_lsp_root', {}) + \) if type(l:buffer_ale_root) is v:t_string return l:buffer_ale_root @@ -218,9 +222,15 @@ function! ale#lsp_linter#FindProjectRoot(buffer, linter) abort endif endif + let l:global_root = g:ale_root + + if empty(g:ale_root) && exists('g:ale_lsp_root') + let l:global_root = g:ale_lsp_root + endif + " Try to get a global setting for the root - if has_key(g:ale_lsp_root, a:linter.name) - let l:Root = g:ale_lsp_root[a:linter.name] + if has_key(l:global_root, a:linter.name) + let l:Root = l:global_root[a:linter.name] if type(l:Root) is v:t_func return l:Root(a:buffer) |