On Dec 3, 8:25 am, Dennis Benzinger <[EMAIL PROTECTED]> wrote:
> Hi Nicolas!
>
> Am 03.12.2008 15:10, Nicolas Aggelidis schrieb:
>
> > hi to all the list,
>
> > is there any way to make the tabline of gvim display only the basename
> > of the file and not its full name.
>
> You want to set the guitablabel option. See :help guitablabel and :help
> statusline for the fields you can use in the guitablabel option. You
> probably want the %t field.
>
Assuming that you're using the GUI version of Vim, of course.
Here's my setup, which I am quite fond of. It only shows the base name
like you want, and it additionally shows the tab number for easy
jumping between tabs with [count]gt. I additionally set up the
guitabtooltip option to allow me to see the full path. I'm fairly
certain that the google group will strip out all the indentation, so
you'll probably want to reindent the entire thing if you end up using
it:
set showtabline=2
" set up tab labels with tab number, buffer name, number of windows
function! GuiTabLabel()
let label = ''
let bufnrlist = tabpagebuflist(v:lnum)
" Add '+' if one of the buffers in the tab page is modified
for bufnr in bufnrlist
if getbufvar(bufnr, "&modified")
let label = '+'
break
endif
endfor
" Append the tab number
let label .= tabpagenr().': '
" Append the buffer name
let name = bufname(bufnrlist[tabpagewinnr(v:lnum) - 1])
if name == ''
" give a name to no-name documents
if &buftype=='quickfix'
let name = '[Quickfix List]'
else
let name = '[No Name]'
endif
else
" get only the file name
let name = fnamemodify(name,":t")
endif
let label .= name
" Append the number of windows in the tab page
let wincount = tabpagewinnr(v:lnum, '$')
return label . ' [' . wincount . ']'
endfunction
" set up tab tooltips with every buffer name
function! GuiTabToolTip()
let tip = ''
let bufnrlist = tabpagebuflist(v:lnum)
for bufnr in bufnrlist
" separate buffer entries
if tip!=''
let tip .= ' | '
endif
" Add name of buffer
let name=bufname(bufnr)
if name == ''
" give a name to no name documents
if getbufvar(bufnr,'&buftype')=='quickfix'
let name = '[Quickfix List]'
else
let name = '[No Name]'
endif
endif
let tip.=name
" add modified/modifiable flags
if getbufvar(bufnr, "&modified")
let tip .= ' [+]'
endif
if getbufvar(bufnr, "&modifiable")==0
let tip .= ' [-]'
endif
endfor
return tip
endfunction
set guitablabel=%{GuiTabLabel()}
set guitabtooltip=%{GuiTabToolTip()}
--~--~---------~--~----~------------~-------~--~----~
You received this message from the "vim_use" maillist.
For more information, visit http://www.vim.org/maillist.php
-~----------~----~----~----~------~----~------~--~---