improve bufferline integration; revert to default in inactive splits.

This commit is contained in:
Bailey Ling
2013-08-11 19:20:41 +00:00
parent 2413babe8b
commit 14dacaab68
2 changed files with 22 additions and 9 deletions

View File

@@ -1,6 +1,21 @@
" MIT license. Copyright (c) 2013 Bailey Ling.
" MIT License. Copyright (c) 2013 Bailey Ling.
" vim: ts=2 sts=2 sw=2 fdm=indent
function! airline#extensions#bufferline#apply()
" revert to default in non-active splits
for nr in filter(range(1, winnr('$')), 'v:val != winnr()')
if matchstr(getwinvar(nr, '&statusline'), '%{bufferline') != ''
call setwinvar(nr, 'airline_section_c', '%f%m')
call setwinvar(nr, '&statusline', airline#get_statusline(nr, 0))
endif
endfor
" check for other plugin overrides first
if !exists('w:airline_section_c')
let w:airline_section_c = '%{bufferline#refresh_status()}'.bufferline#get_status_string()
endif
endfunction
function! airline#extensions#bufferline#init(ext)
highlight AlBl_active gui=bold cterm=bold term=bold
highlight link AlBl_inactive Al6
@@ -11,6 +26,6 @@ function! airline#extensions#bufferline#init(ext)
let g:bufferline_separator = ' '
if g:airline_section_c == '%f%m'
let g:airline_section_c = '%{bufferline#refresh_status()}'.bufferline#get_status_string()
call a:ext.add_statusline_funcref(function('airline#extensions#bufferline#apply'))
endif
endfunction