Tengo una función de tabulación que robé/modifiqué de alguna parte, pero me gustaría que el nombre de archivo tenga un asterisco antes si ha sido modificado desde la última vez que se escribió en el disco (es decir, si: up realizaría una acción)¿Qué es una función vimrc para determinar si un buffer ha sido modificado?
Por ejemplo, este es mi tabline al abrir el archivo .txt Vim * -p
file1.txt file2.txt file3.txt
A continuación, después de cambiar file1.txt y no lo guarda:
*file1.txt file2.txt file3.txt
Mi tabline función:
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
posible duplicado de [Vim Buffer ha sido modificado] (http://stackoverflow.com/questions/5606914/vim-buffer-has-been-modified) –