#3599 - Use ale_root instead of ale_lsp_root

The `ale_lsp_root` setting is now deprecated, and `ale_root` should be
used instead. The setting will be used for both setting the root easily
for LSP linters, and for running other linters over whole projects.
This commit is contained in:
w0rp
2021-03-01 20:51:29 +00:00
parent 9fe7b1fe6a
commit 680ba68d81
8 changed files with 91 additions and 52 deletions

View File

@@ -1,4 +1,12 @@
Before:
Save g:ale_lsp_root
Save g:ale_root
Save b:ale_lsp_root
Save b:ale_root
unlet! g:ale_lsp_root
let g:ale_root = {}
call ale#assert#SetUpLinterTest('c', 'clangd')
function! Hook1(buffer)
@@ -6,52 +14,72 @@ Before:
endfunction
After:
let g:ale_lsp_root = {}
unlet! b:ale_lsp_root
Restore
delfunction Hook1
call ale#assert#TearDownLinterTest()
Execute(The buffer-specific variable can be a string):
let b:ale_lsp_root = '/some/path'
let b:ale_root = '/some/path'
call ale#test#SetFilename('other-file.c')
AssertLSPProject '/some/path'
Execute(The buffer-specific variable can be a dictionary):
let b:ale_lsp_root = {'clangd': '/some/path', 'golangserver': '/other/path'}
let b:ale_root = {'clangd': '/some/path', 'golangserver': '/other/path'}
call ale#test#SetFilename('other-file.c')
AssertLSPProject '/some/path'
Execute(The buffer-specific variable can have funcrefs):
let b:ale_lsp_root = {'clangd': function('Hook1'), 'golangserver': '/path'}
let b:ale_root = {'clangd': function('Hook1'), 'golangserver': '/path'}
call ale#test#SetFilename('other-file.c')
AssertLSPProject 'abc123'
Execute(The buffer-specific variable can be the old ale_lsp_root setting):
let b:ale_lsp_root = '/some/path'
call ale#test#SetFilename('other-file.c')
AssertLSPProject '/some/path'
Execute(The global variable can be a dictionary):
let g:ale_lsp_root = {'clangd': '/some/path', 'golangserver': '/other/path'}
let g:ale_root = {'clangd': '/some/path', 'golangserver': '/other/path'}
call ale#test#SetFilename('other-file.c')
AssertLSPProject '/some/path'
Execute(The global variable can have funcrefs):
let g:ale_lsp_root = {'clangd': function('Hook1'), 'golangserver': '/path'}
let g:ale_root = {'clangd': function('Hook1'), 'golangserver': '/path'}
call ale#test#SetFilename('other-file.c')
AssertLSPProject 'abc123'
Execute(The buffer-specific variable overrides the global variable):
let b:ale_lsp_root = {'clangd': '/some/path', 'golangserver': '/other/path'}
let g:ale_lsp_root = {'clangd': '/not/this/path', 'golangserver': '/elsewhere'}
let b:ale_root = {'clangd': '/some/path', 'golangserver': '/other/path'}
let g:ale_root = {'clangd': '/not/this/path', 'golangserver': '/elsewhere'}
call ale#test#SetFilename('other-file.c')
AssertLSPProject '/some/path'
Execute(The global variable is queried if the buffer-specific has no value):
let b:ale_lsp_root = {'golangserver': '/other/path'}
let g:ale_lsp_root = {'clangd': '/some/path', 'golangserver': '/elsewhere'}
let b:ale_root = {'golangserver': '/other/path'}
let g:ale_root = {'clangd': '/some/path', 'golangserver': '/elsewhere'}
call ale#test#SetFilename('other-file.c')
AssertLSPProject '/some/path'
Execute(The global variable can be the old ale_lsp_root setting):
let g:ale_root = {}
let g:ale_lsp_root = {'clangd': '/some/path', 'golangserver': '/other/path'}
call ale#test#SetFilename('other-file.c')
AssertLSPProject '/some/path'
Execute(A non-empty ale_root setting should replace the old ale_lsp_root):
let g:ale_root = {'clangd': '/some/path', 'golangserver': '/other/path'}
let g:ale_lsp_root = {'clangd': '/xxx', 'golangserver': '/xxx'}
call ale#test#SetFilename('other-file.c')
AssertLSPProject '/some/path'

View File

@@ -30,13 +30,13 @@ Before:
Save g:ale_list_window_size
Save g:ale_loclist_msg_format
Save g:ale_lsp_error_messages
Save g:ale_lsp_root
Save g:ale_max_buffer_history_size
Save g:ale_max_signs
Save g:ale_maximum_file_size
Save g:ale_open_list
Save g:ale_pattern_options
Save g:ale_pattern_options_enabled
Save g:ale_root
Save g:ale_set_balloons
Save g:ale_set_highlights
Save g:ale_set_loclist
@@ -88,13 +88,13 @@ Before:
let g:ale_list_window_size = 10
let g:ale_loclist_msg_format = '%code: %%s'
let g:ale_lsp_error_messages = {}
let g:ale_lsp_root = {}
let g:ale_max_buffer_history_size = 20
let g:ale_max_signs = -1
let g:ale_maximum_file_size = 0
let g:ale_open_list = 0
let g:ale_pattern_options = {}
let g:ale_pattern_options_enabled = 0
let g:ale_root = {}
let g:ale_set_balloons = 0
let g:ale_set_highlights = 1
let g:ale_set_loclist = 1
@@ -167,13 +167,13 @@ Before:
\ 'let g:ale_list_vertical = 0',
\ 'let g:ale_list_window_size = 10',
\ 'let g:ale_loclist_msg_format = ''%code: %%s''',
\ 'let g:ale_lsp_root = {}',
\ 'let g:ale_max_buffer_history_size = 20',
\ 'let g:ale_max_signs = -1',
\ 'let g:ale_maximum_file_size = 0',
\ 'let g:ale_open_list = 0',
\ 'let g:ale_pattern_options = {}',
\ 'let g:ale_pattern_options_enabled = 0',
\ 'let g:ale_root = {}',
\ 'let g:ale_set_balloons = 0',
\ 'let g:ale_set_highlights = 1',
\ 'let g:ale_set_loclist = 1',

View File

@@ -1,9 +1,9 @@
Before:
Save g:ale_lsp_root
Save b:ale_lsp_root
Save g:ale_root
Save b:ale_root
let g:ale_lsp_root = {}
unlet! b:ale_lsp_root
let g:ale_root = {}
unlet! b:ale_root
let g:linter = {}