44 lines
950 B
Lua
44 lines
950 B
Lua
vim.cmd([[
|
|
set showtabline=2
|
|
set tabline=%!TabLineNumbered()
|
|
|
|
function! TabLineNumbered()
|
|
let s = ''
|
|
let wn = ''
|
|
let t = tabpagenr()
|
|
let i = 1
|
|
while i <= tabpagenr('$')
|
|
let buflist = tabpagebuflist(i)
|
|
let buf = buflist[tabpagewinnr(i) - 1]
|
|
let file = fnamemodify(bufname(buf), ':t')
|
|
if i == t
|
|
let s .= '%' . i . 'T'
|
|
let s .= '%#TabLineSel#'
|
|
let wn .= '%' . i . 'T'
|
|
let wn .= '%#TabLineSel#'
|
|
else
|
|
let s .= '%' . i . 'T'
|
|
let s .= '%#TabLine#'
|
|
let wn .= '%' . i . 'T'
|
|
let wn .= '%#TabLine#'
|
|
endif
|
|
|
|
let s .= ' ' . i . ' '
|
|
let wn .= ' ' . i . ' '
|
|
|
|
" Truncate the file name if it's too long
|
|
if len(file) > 20
|
|
let file = strpart(file, 0, 20) . '..'
|
|
endif
|
|
let s .= file . ' '
|
|
let wn .= file . ' '
|
|
let s .= '%T'
|
|
let wn .= '%T'
|
|
let s .= '%#TabLine#|'
|
|
let wn .= '%#TabLine#|'
|
|
let i += 1
|
|
endwhile
|
|
return s
|
|
endfunction
|
|
]])
|