Show YouCompleteMe error and warning count in the statusline

Signed-off-by: Evgeny Firsov <firs1978@gmail.com>
This commit is contained in:
Evgeny Firsov
2015-12-25 21:10:55 -08:00
parent 06f2cb5a89
commit 6d81660fd8
6 changed files with 53 additions and 7 deletions

View File

@@ -9,7 +9,7 @@ let s:section_truncate_width = get(g:, 'airline#extensions#default#section_trunc
\ })
let s:layout = get(g:, 'airline#extensions#default#layout', [
\ [ 'a', 'b', 'c' ],
\ [ 'x', 'y', 'z', 'warning' ]
\ [ 'x', 'y', 'z', 'error', 'warning' ]
\ ])
function! s:get_section(winnr, key, ...)
@@ -26,7 +26,7 @@ endfunction
function! s:build_sections(builder, context, keys)
for key in a:keys
if key == 'warning' && !a:context.active
if (key == 'warning' || key == 'error') && !a:context.active
continue
endif
call s:add_section(a:builder, a:context, key)
@@ -37,11 +37,11 @@ if v:version >= 704 || (v:version >= 703 && has('patch81'))
function s:add_section(builder, context, key)
" i have no idea why the warning section needs special treatment, but it's
" needed to prevent separators from showing up
if a:key == 'warning'
if (a:key == 'warning' || a:key == 'error')
call a:builder.add_raw('%(')
endif
call a:builder.add_section('airline_'.a:key, s:get_section(a:context.winnr, a:key))
if a:key == 'warning'
if (a:key == 'warning' || a:key == 'error')
call a:builder.add_raw('%)')
endif
endfunction
@@ -50,6 +50,8 @@ else
function s:add_section(builder, context, key)
if a:key == 'warning'
call a:builder.add_raw('%#airline_warning#'.s:get_section(a:context.winnr, a:key))
else if a:key == 'error'
call a:builder.add_raw('%#airline_error#'.s:get_section(a:context.winnr, a:key))
else
call a:builder.add_section('airline_'.a:key, s:get_section(a:context.winnr, a:key))
endif