Include most linter variables in ALEInfo

This commit is contained in:
w0rp
2017-02-13 22:11:35 +00:00
parent f6bc73b749
commit 0589022c76
4 changed files with 105 additions and 32 deletions

View File

@@ -180,7 +180,7 @@ function! ale#linter#GetAll(filetype) abort
return s:linters[a:filetype]
endfunction
function! s:ResolveFiletype(original_filetype) abort
function! ale#linter#ResolveFiletype(original_filetype) abort
" Try and get an aliased file type either from the user's Dictionary, or
" our default Dictionary, otherwise use the filetype as-is.
let l:filetype = get(
@@ -201,7 +201,7 @@ function! ale#linter#Get(original_filetypes) abort
" Handle dot-seperated filetypes.
for l:original_filetype in split(a:original_filetypes, '\.')
let l:filetype = s:ResolveFiletype(l:original_filetype)
let l:filetype = ale#linter#ResolveFiletype(l:original_filetype)
" Try and get a list of linters to run, using the original file type,
" not the aliased filetype. We have some linters to limit by default,
@@ -235,25 +235,3 @@ function! ale#linter#Get(original_filetypes) abort
return l:combined_linters
endfunction
function! ale#linter#Info() abort
let l:original_filetypes = &filetype
" We get the list of enabled linters for free by the above function.
let l:enabled_linters = deepcopy(ale#linter#Get(l:original_filetypes))
" But have to build the list of available linters ourselves.
let l:all_linters = []
for l:original_filetype in split(l:original_filetypes, '\.')
let l:filetype = s:ResolveFiletype(l:original_filetype)
let l:filetype_linters = ale#linter#GetAll(l:filetype)
call extend(l:all_linters, l:filetype_linters)
endfor
let l:all_names = map(l:all_linters, 'v:val[''name'']')
let l:enabled_names = map(l:enabled_linters, 'v:val[''name'']')
echom ' Current Filetype: ' . l:original_filetypes
echom 'Available Linters: ' . string(l:all_names)
echom ' Enabled Linters: ' . string(l:enabled_names)
endfunction