diff --git a/autoload/bufferline.vim b/autoload/bufferline.vim index 9be66c9..0f3e321 100644 --- a/autoload/bufferline.vim +++ b/autoload/bufferline.vim @@ -9,7 +9,7 @@ function! s:generate_names() let i = 1 let last_buffer = bufnr('$') let current_buffer = bufnr('%') - while i <= last_buffer + for i in g:Bufferline_get_buffers_list() if bufexists(i) && buflisted(i) let modified = ' ' if getbufvar(i, '&mod') @@ -46,8 +46,7 @@ function! s:generate_names() call add(names, [i, name]) endif endif - let i += 1 - endwhile + endfor if len(names) > 1 if g:bufferline_rotate == 1 diff --git a/plugin/bufferline.vim b/plugin/bufferline.vim index 24c05cc..aef6837 100644 --- a/plugin/bufferline.vim +++ b/plugin/bufferline.vim @@ -9,6 +9,10 @@ function! s:check_defined(variable, default) endif endfunction +function! s:get_buffers_list_default() + return range(1, bufnr('$')) +endfunction + call s:check_defined('g:bufferline_active_buffer_left', '[') call s:check_defined('g:bufferline_active_buffer_right', ']') call s:check_defined('g:bufferline_separator', ' ') @@ -23,6 +27,7 @@ call s:check_defined('g:bufferline_fixed_index', 1) call s:check_defined('g:bufferline_solo_highlight', 0) call s:check_defined('g:bufferline_excludes', ['\[vimfiler\]']) call s:check_defined('g:bufferline_pathshorten', 0) +call s:check_defined('g:Bufferline_get_buffers_list', function('s:get_buffers_list_default')) function! bufferline#generate_string() return "bufferline#generate_string() is obsolete! Please consult README."