Adding option: buffers#buffer_idx_mode = 3

By using `buffer_idx_mode = 3`, indexing will start at 1, instead of 11.
This commit is contained in:
Jonathan Feinberg
2019-12-26 19:15:13 +01:00
parent 5a87ca631a
commit 892c9ad6b5
2 changed files with 25 additions and 8 deletions

View File

@@ -162,7 +162,9 @@ function! s:get_number(index)
endif
let bidx_mode = get(g:, 'airline#extensions#tabline#buffer_idx_mode', 0)
if bidx_mode > 1
return join(map(split(a:index+11, '\zs'), 'get(s:number_map, v:val, "")'), '')
let count = bidx_mode == 2 ? a:index+11 : a:index+1
return join(map(split(printf('%02d', count), '\zs'),
\ 'get(s:number_map, v:val, "")'), '')
else
return get(s:number_map, a:index+1, '')
endif
@@ -170,7 +172,7 @@ endfunction
function! s:select_tab(buf_index)
" no-op when called in 'keymap_ignored_filetypes'
if count(get(g:, 'airline#extensions#tabline#keymap_ignored_filetypes',
if count(get(g:, 'airline#extensions#tabline#keymap_ignored_filetypes',
\ ['vimfiler', 'nerdtree']), &ft)
return
endif
@@ -201,8 +203,9 @@ function! s:map_keys()
exe printf('noremap <silent> <Plug>AirlineSelectTab%d :call <SID>select_tab(%d)<CR>', i, i-1)
endfor
else
for i in range(11, 99)
exe printf('noremap <silent> <Plug>AirlineSelectTab%d :call <SID>select_tab(%d)<CR>', i, i-11)
let start_idx = bidx_mode == 2 ? 11 : 1
for i in range(start_idx, 99)
exe printf('noremap <silent> <Plug>AirlineSelectTab%02d :call <SID>select_tab(%d)<CR>', i, i-start_idx)
endfor
endif
noremap <silent> <Plug>AirlineSelectPrevTab :<C-u>call <SID>jump_to_tab(-v:count1)<CR>