是否有内置方法列出上次编辑文件的所有保存时间?

时间:2013-03-10 08:56:01

标签: vim time-tracking

我作为网络程序员的工作涉及使用vim从远程服务器编辑大量文件。我需要报告解决一个特定案例花了多少时间,而且我遇到了一些麻烦:我不习惯跟踪软件的时间,因为我总是忘记我需要跟踪时间的事实。这只是一个问题,需要花费一点时间,大约5到60分钟。

然而,就我在vim中完成的所有工作而言,我想知道是否有任何方法可以查看哪个文档在哪个时间保存。当然,我可以定义一些自动命令,将当前时间和文件名保存到某个文件,但是有内置的功能吗?

2 个答案:

答案 0 :(得分:1)

如果Vim仍处于打开状态,您可以列出所有列出的缓冲区的文件修改时间:

for bufnr in filter(range(1, bufnr('$')), 'buflisted(v:val)')
    echo bufname(bufnr) strftime('%c', getftime(bufname(bufnr)))
endfor

如果您使用 MRU 插件,则可以从那里检索上次编辑过的文件的列表。

答案 1 :(得分:0)

如果有人感兴趣,我自己的解决方案有自动命令:

function! ReportFileSaveTime()
" Saves current time and file to a certain file
    call system('echo `date +"%Y-%m-%d %H:%M:%S"` ' . @% . ' >> ' . g:fileSaveLog)
endfunction
au! BufWritePost * call ReportFileSaveTime()
let fileSaveLog='~/.vim/filesave'

然后,您可以,例如,$ tail -n 30 ~/.vim/filesave查看最后30个文件保存时间标记。