O que é uma função vimrc para determinar se um buffer foi modificad
Eu tenho uma função tabline que eu roubei / modifiquei de algum lugar, mas gostaria que o nome do arquivo tivesse um asterisco antes dele, se ele foi modificado desde a última vez em que foi gravado no disco (ou seja, se: up executaria uma ação) .
Por exemplo, esta é minha tabline quando abro o arquivo vim -p * .txt
file1.txt file2.txt file3.txt
Depois de alterar file1.txt e não o salve:
*file1.txt file2.txt file3.txt
inha função tabline:
if exists("+showtabline")
function MyTabLine()
let s = ''
let t = tabpagenr()
let i = 1
while i <= tabpagenr(')
let buflist = tabpagebuflist(i)
let winnr = tabpagewinnr(i)
let s .= ' %*'
let s .= (i == t ? '%#TabLineSel#' : '%#TabLine#')
let file = bufname(buflist[winnr - 1])
let file = fnamemodify(file, ':p:t')
if file == ''
let file = '[No Name]'
endif
let s .= file
let i = i + 1
endwhile
let s .= '%T%#TabLineFill#%='
let s .= (tabpagenr(') > 1 ? '%999XX' : 'X')
return s
endfunction
set stal=2
set tabline=%!MyTabLine()
endif