当我在vim
中打开多个标签时,文件的路径会显示在标签中:
请注意,只使用目录的第一个字符:
p/c/game.js
而不是
public/controllers/game.js
是否可以使用完整的目录名称而不仅仅是首字母来显示选项卡中的完全展开的路径?
答案 0 :(得分:0)
这应该有效:
function! MyTabLine()
let s = ''
for i in range(tabpagenr('$'))
" select the highlighting
if i + 1 == tabpagenr()
let s .= '%#TabLineSel#'
else
let s .= '%#TabLine#'
endif
" set the tab page number (for mouse clicks)
let s .= '%' . (i + 1) . 'T'
" the label is made by MyTabLabel()
let s .= ' %{MyTabLabel(' . (i + 1) . ')} '
endfor
" after the last tab fill with TabLineFill and reset tab page nr
let s .= '%#TabLineFill#%T'
" right-align the label to close the current tab page
if tabpagenr('$') > 1
let s .= '%=%#TabLine#%999Xclose'
endif
return s
endfunction
function! MyTabLabel(n)
let buflist = tabpagebuflist(a:n)
let winnr = tabpagewinnr(a:n)
return fnamemodify(bufname(buflist[winnr - 1]), ':p')
endfunction
set tabline=%!MyTabLine()
此代码几乎100%来自vim帮助(请参阅:help setting-tabline
)。唯一的调整是在MyTabLabel
中使用fnamemodify来获取完整路径。