mirror of
https://github.com/vim-airline/vim-airline.git
synced 2025-07-23 22:15:28 +02:00
Problem: Cannot disable displaying buffers for ctrlspace tabline
Solution: Implement the show_buffers option which is used by the default airline tab as well.
This commit is contained in:
parent
ad5194244b
commit
2f2797becb
@ -9,7 +9,8 @@ let s:current_tabline = ''
|
|||||||
|
|
||||||
let s:buffers_label = get(g:, 'airline#extensions#tabline#buffers_label', 'buffers')
|
let s:buffers_label = get(g:, 'airline#extensions#tabline#buffers_label', 'buffers')
|
||||||
let s:tabs_label = get(g:, 'airline#extensions#tabline#tabs_label', 'tabs')
|
let s:tabs_label = get(g:, 'airline#extensions#tabline#tabs_label', 'tabs')
|
||||||
let s:switch_buffers_and_tabs = get(g:, 'airline#extensions#tabline#switch_buffers_and_tabs', 1)
|
let s:switch_buffers_and_tabs = get(g:, 'airline#extensions#tabline#switch_buffers_and_tabs', 0)
|
||||||
|
let s:show_buffers = get(g:, 'airline#extensions#tabline#show_buffers', 1)
|
||||||
|
|
||||||
function! airline#extensions#tabline#ctrlspace#off()
|
function! airline#extensions#tabline#ctrlspace#off()
|
||||||
augroup airline_tabline_ctrlspace
|
augroup airline_tabline_ctrlspace
|
||||||
@ -31,7 +32,6 @@ endfunction
|
|||||||
|
|
||||||
function! airline#extensions#tabline#ctrlspace#add_buffer_section(builder, cur_tab, cur_buf, pos)
|
function! airline#extensions#tabline#ctrlspace#add_buffer_section(builder, cur_tab, cur_buf, pos)
|
||||||
if a:pos == 0
|
if a:pos == 0
|
||||||
call a:builder.add_section_spaced('airline_tabtype', s:buffers_label)
|
|
||||||
let pos_extension = ''
|
let pos_extension = ''
|
||||||
else
|
else
|
||||||
let pos_extension = '_right'
|
let pos_extension = '_right'
|
||||||
@ -58,15 +58,10 @@ function! airline#extensions#tabline#ctrlspace#add_buffer_section(builder, cur_t
|
|||||||
let buf_name = '%(%{airline#extensions#tabline#get_buffer_name('.buffer.index.')}%)'
|
let buf_name = '%(%{airline#extensions#tabline#get_buffer_name('.buffer.index.')}%)'
|
||||||
call a:builder.add_section_spaced(group, buf_name)
|
call a:builder.add_section_spaced(group, buf_name)
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
if a:pos == 1
|
|
||||||
call a:builder.add_section_spaced('airline_tabtype', s:buffers_label)
|
|
||||||
endif
|
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! airline#extensions#tabline#ctrlspace#add_tab_section(builder, pos)
|
function! airline#extensions#tabline#ctrlspace#add_tab_section(builder, pos)
|
||||||
if a:pos == 0
|
if a:pos == 0
|
||||||
call a:builder.add_section_spaced('airline_tabtype', s:tabs_label)
|
|
||||||
let pos_extension = ''
|
let pos_extension = ''
|
||||||
else
|
else
|
||||||
let pos_extension = '_right'
|
let pos_extension = '_right'
|
||||||
@ -89,10 +84,6 @@ function! airline#extensions#tabline#ctrlspace#add_tab_section(builder, pos)
|
|||||||
|
|
||||||
call a:builder.add_section_spaced(group, tab.title.ctrlspace#api#TabBuffersNumber(tab.index))
|
call a:builder.add_section_spaced(group, tab.title.ctrlspace#api#TabBuffersNumber(tab.index))
|
||||||
endfor
|
endfor
|
||||||
|
|
||||||
if a:pos == 1
|
|
||||||
call a:builder.add_section_spaced('airline_tabtype', s:tabs_label)
|
|
||||||
endif
|
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! airline#extensions#tabline#ctrlspace#get()
|
function! airline#extensions#tabline#ctrlspace#get()
|
||||||
@ -111,20 +102,34 @@ function! airline#extensions#tabline#ctrlspace#get()
|
|||||||
|
|
||||||
let builder = airline#extensions#tabline#new_builder()
|
let builder = airline#extensions#tabline#new_builder()
|
||||||
|
|
||||||
if s:switch_buffers_and_tabs == 0
|
" Add left tabline content
|
||||||
call airline#extensions#tabline#ctrlspace#add_buffer_section(builder, cur_tab, cur_buf, 0)
|
if s:show_buffers == 0
|
||||||
|
call airline#extensions#tabline#ctrlspace#add_tab_section(builder, 0)
|
||||||
else
|
else
|
||||||
call airline#extensions#tabline#ctrlspace#add_tab_section(builder, 0)
|
if s:switch_buffers_and_tabs == 0
|
||||||
|
call builder.add_section_spaced('airline_tabtype', s:buffers_label)
|
||||||
|
call airline#extensions#tabline#ctrlspace#add_buffer_section(builder, cur_tab, cur_buf, 0)
|
||||||
|
else
|
||||||
|
call builder.add_section_spaced('airline_tabtype', s:tabs_label)
|
||||||
|
call airline#extensions#tabline#ctrlspace#add_tab_section(builder, 0)
|
||||||
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
call builder.add_section('airline_tabfill', '')
|
call builder.add_section('airline_tabfill', '')
|
||||||
call builder.split()
|
call builder.split()
|
||||||
call builder.add_section('airline_tabfill', '')
|
call builder.add_section('airline_tabfill', '')
|
||||||
|
|
||||||
if s:switch_buffers_and_tabs == 0
|
" Add right tabline content
|
||||||
call airline#extensions#tabline#ctrlspace#add_tab_section(builder, 1)
|
if s:show_buffers == 0
|
||||||
|
call builder.add_section_spaced('airline_tabtype', s:tabs_label)
|
||||||
else
|
else
|
||||||
call airline#extensions#tabline#ctrlspace#add_buffer_section(builder, cur_tab, cur_buf, 1)
|
if s:switch_buffers_and_tabs == 0
|
||||||
|
call airline#extensions#tabline#ctrlspace#add_tab_section(builder, 1)
|
||||||
|
call builder.add_section_spaced('airline_tabtype', s:tabs_label)
|
||||||
|
else
|
||||||
|
call airline#extensions#tabline#ctrlspace#add_buffer_section(builder, cur_tab, cur_buf, 1)
|
||||||
|
call builder.add_section_spaced('airline_tabtype', s:buffers_label)
|
||||||
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let s:current_bufnr = cur_buf
|
let s:current_bufnr = cur_buf
|
||||||
|
Loading…
x
Reference in New Issue
Block a user