2013-07-09 08:51:33 +08:00
|
|
|
let s:sections = ['a','b','c','gutter','x','y','z']
|
|
|
|
|
2013-07-09 10:52:07 +08:00
|
|
|
function! s:override_left_only(section1, section2)
|
|
|
|
let w:airline_section_a = a:section1
|
|
|
|
let w:airline_section_b = a:section2
|
|
|
|
let w:airline_section_c = ''
|
|
|
|
let w:airline_left_only = 1
|
|
|
|
endfunction
|
|
|
|
|
2013-07-10 23:02:34 +08:00
|
|
|
function! airline#extensions#clear_window_overrides()
|
2013-07-18 10:28:21 +08:00
|
|
|
unlet! w:airline_left_only
|
2013-07-09 08:51:33 +08:00
|
|
|
for section in s:sections
|
2013-07-18 10:28:21 +08:00
|
|
|
unlet! w:airline_section_{section}
|
2013-07-09 08:51:33 +08:00
|
|
|
endfor
|
2013-07-10 23:02:34 +08:00
|
|
|
endfunction
|
2013-07-09 08:51:33 +08:00
|
|
|
|
2013-07-10 23:02:34 +08:00
|
|
|
function! airline#extensions#apply_window_overrides()
|
2013-07-09 08:51:33 +08:00
|
|
|
if &ft == 'netrw'
|
2013-07-09 10:52:07 +08:00
|
|
|
call s:override_left_only('netrw', '%f')
|
2013-07-09 08:51:33 +08:00
|
|
|
elseif &ft == 'unite'
|
2013-07-09 10:52:07 +08:00
|
|
|
call s:override_left_only('Unite', unite#get_status_string())
|
|
|
|
elseif &ft == 'nerdtree'
|
|
|
|
call s:override_left_only('NERD', '')
|
|
|
|
elseif &ft == 'undotree'
|
|
|
|
call s:override_left_only('undotree', '')
|
|
|
|
elseif &ft == 'gundo'
|
|
|
|
call s:override_left_only('Gundo', '')
|
|
|
|
elseif &ft == 'diff'
|
|
|
|
call s:override_left_only('diff', '')
|
|
|
|
elseif &ft == 'tagbar'
|
2013-07-15 04:45:03 +08:00
|
|
|
call s:override_left_only('Tagbar', '')
|
2013-07-18 10:28:21 +08:00
|
|
|
elseif &ft == 'vimshell'
|
|
|
|
call s:override_left_only('vimshell', vimshell#get_status_string())
|
2013-07-10 06:32:35 +08:00
|
|
|
elseif &ft == 'minibufexpl'
|
|
|
|
call s:override_left_only('MiniBufExplorer', '')
|
2013-07-09 08:51:33 +08:00
|
|
|
endif
|
|
|
|
endfunction
|
2013-07-09 21:48:57 +08:00
|
|
|
|
|
|
|
function! airline#extensions#load()
|
|
|
|
let g:unite_force_overwrite_statusline = 0
|
|
|
|
|
|
|
|
if exists('g:loaded_ctrlp') && g:loaded_ctrlp
|
|
|
|
call airline#extensions#ctrlp#load_ctrlp_hi()
|
|
|
|
let g:ctrlp_status_func = {
|
|
|
|
\ 'main': 'airline#extensions#ctrlp#ctrlp_airline',
|
|
|
|
\ 'prog': 'airline#extensions#ctrlp#ctrlp_airline_status',
|
|
|
|
\ }
|
|
|
|
endif
|
|
|
|
|
|
|
|
call add(g:airline_window_override_funcrefs, function('airline#extensions#apply_window_overrides'))
|
|
|
|
endfunction
|
|
|
|
|