From 90af4618f5998229fff3375ce5c50105abd8e447 Mon Sep 17 00:00:00 2001 From: Christian Brabandt Date: Thu, 28 Jan 2016 17:38:59 +0100 Subject: [PATCH 1/2] only init ycm extension, when YCM is available --- autoload/airline/extensions.vim | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/autoload/airline/extensions.vim b/autoload/airline/extensions.vim index 93f2b9c6..25f47ec9 100644 --- a/autoload/airline/extensions.vim +++ b/autoload/airline/extensions.vim @@ -138,7 +138,9 @@ function! airline#extensions#load() call airline#extensions#netrw#init(s:ext) endif - call airline#extensions#ycm#init(s:ext) + if exists(':YcmDiag') + call airline#extensions#ycm#init(s:ext) + endif if get(g:, 'loaded_vimfiler', 0) let g:vimfiler_force_overwrite_statusline = 0 From e5c4306698acb2beac89794e1a8998d611ef5c52 Mon Sep 17 00:00:00 2001 From: Christian Brabandt Date: Thu, 28 Jan 2016 19:01:05 +0100 Subject: [PATCH 2/2] Do not add empty error section This prevents, adding a separator in error highlighting, also there exists no error. --- autoload/airline/extensions/default.vim | 3 +++ autoload/airline/init.vim | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/autoload/airline/extensions/default.vim b/autoload/airline/extensions/default.vim index 8129ec95..9060ec37 100644 --- a/autoload/airline/extensions/default.vim +++ b/autoload/airline/extensions/default.vim @@ -37,6 +37,9 @@ 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 == 'error' || a:key == 'warning') && empty(s:get_section(a:context.winnr, a:key))) + return + endif if (a:key == 'warning' || a:key == 'error') call a:builder.add_raw('%(') endif diff --git a/autoload/airline/init.vim b/autoload/airline/init.vim index 255bd959..500daae6 100644 --- a/autoload/airline/init.vim +++ b/autoload/airline/init.vim @@ -84,7 +84,8 @@ function! airline#init#bootstrap() \ 'raw': '%{g:airline_symbols.linenr}%#__accent_bold#%4l%#__restore__#', \ 'accent': 'bold'}) call airline#parts#define_function('ffenc', 'airline#parts#ffenc') - call airline#parts#define_empty(['hunks', 'branch', 'tagbar', 'syntastic', 'eclim', 'whitespace','windowswap']) + call airline#parts#define_empty(['hunks', 'branch', 'tagbar', 'syntastic', + \ 'eclim', 'whitespace','windowswap', 'ycm_error_count', 'ycm_warning_count']) call airline#parts#define_text('capslock', '') unlet g:airline#init#bootstrapping