GetlinterStatus gets status from ale or signs
This commit is contained in:
parent
ef052d91a5
commit
fcd199af39
|
@ -165,9 +165,19 @@ endfunction
|
||||||
"}}}
|
"}}}
|
||||||
|
|
||||||
function! GetLinterStatus(key) abort
|
function! GetLinterStatus(key) abort
|
||||||
let l:linter = ale#statusline#Count(bufnr(''))"{{{
|
"{{{
|
||||||
|
let l:statuscount = 0
|
||||||
|
|
||||||
return l:linter[a:key]
|
if exists('b:ale_linted')
|
||||||
|
let l:linter = ale#statusline#Count(bufnr(''))
|
||||||
|
else
|
||||||
|
let l:linter = GetDiagnosticCountsFromSigns(bufnr(''))
|
||||||
|
endif
|
||||||
|
|
||||||
|
if has_key(l:linter, a:key)
|
||||||
|
let l:statuscount = l:linter[a:key]
|
||||||
|
endif
|
||||||
|
return l:statuscount
|
||||||
endfunction
|
endfunction
|
||||||
"}}}
|
"}}}
|
||||||
|
|
||||||
|
@ -228,6 +238,37 @@ command! -complete=shellcmd -nargs=+ Shell call s:RunShellCommand(<q-args>)
|
||||||
let g:shell_scratch_buffer_nr = -1
|
let g:shell_scratch_buffer_nr = -1
|
||||||
"}}}
|
"}}}
|
||||||
|
|
||||||
|
function! GetDiagnosticCountsFromSigns(buffer) abort
|
||||||
|
let l:error = 0
|
||||||
|
let l:warn = 0
|
||||||
|
let l:info = 0
|
||||||
|
let l:hint = 0
|
||||||
|
|
||||||
|
redir => l:result
|
||||||
|
silent exec 'sign place buffer=' . a:buffer
|
||||||
|
redir end
|
||||||
|
|
||||||
|
let l:lines = split(l:result, '\n')
|
||||||
|
|
||||||
|
for l:line in l:lines
|
||||||
|
if l:line =~? 'Error'
|
||||||
|
let l:error += 1
|
||||||
|
endif
|
||||||
|
if l:line =~? 'Warning'
|
||||||
|
let l:warn += 1
|
||||||
|
endif
|
||||||
|
if l:line =~? 'Info'
|
||||||
|
let l:info += 1
|
||||||
|
endif
|
||||||
|
if l:line =~? 'Hint'
|
||||||
|
let l:hint += 1
|
||||||
|
endif
|
||||||
|
endfor
|
||||||
|
|
||||||
|
return {'error': l:error, 'warning': l:warn, 'info': l:info, 'hint': l:hint}
|
||||||
|
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
|
||||||
" https://stackoverflow.com/a/40195855
|
" https://stackoverflow.com/a/40195855
|
||||||
" ex_command: command to run to execute file
|
" ex_command: command to run to execute file
|
||||||
|
|
Loading…
Reference in New Issue