X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=vim%2F.vim%2Fplugin%2Fbuftabline.vim;h=60c067b7a9a16b077f3fa32ba6190c27751a659b;hb=1280549be01e3ce72d9e0aeef6254a1ff14a25a3;hp=24a3547376ea0271b65b27c6ddf619ddb9e9d7a6;hpb=50295e8d1d1b2ab4d5514d441ba28e45e7699c55;p=dotfiles.git diff --git a/vim/.vim/plugin/buftabline.vim b/vim/.vim/plugin/buftabline.vim index 24a3547..60c067b 100644 --- a/vim/.vim/plugin/buftabline.vim +++ b/vim/.vim/plugin/buftabline.vim @@ -1,26 +1,3 @@ -if exists("g:loaded_mein_buftabline") | finish | endif -let g:loaded_mein_buftabline = 1 - -function! BufTabline() - redir => bufsRaw - silent buffers - redir END - let bufs = [] - for buf in split(bufsRaw, "\n")[:16] - let leftIdx = stridx(buf, '"') - let rightIdx = strridx(buf, '"') - let filename = substitute(buf[leftIdx + 1 : rightIdx - 1], "%", "%%", "g") - let linenum = split(buf[rightIdx:], " ")[-1] - let attrs = split(buf[:leftIdx-1], '\s\+') - let attrs = map(attrs, 'substitute(v:val, "%", "%%", "g")') - let attrs = (len(attrs) == 1) ? attrs[0] : attrs[0] . ":" . join(attrs[1:], "") - let attrs = "%#TabLine#" . attrs . "%*" - if len(filename) > 20 | let filename = "<" . filename[-(20-1):] | endif - let hl = (match(attrs, "%%") == -1) ? "%#TabLine#:" : "%#TabLineSel#" - let bufs = add(bufs, attrs . hl . filename . ":" . linenum . "%*") - endfor - return join(bufs, " ") -endfunction - +if exists("*buftabline#do") | finish | endif set showtabline=2 -set tabline=%!BufTabline() +set tabline=%!buftabline#do()