Misc / Update Files In Vim Without Changing Modification Date
The backend of Shobute is very simple, all the blog posts are HTML files stored in the directory posts/
, the modification time of each file is used to tell when they were last updated.
Occasionally I want to make a very small change to a file without updating its modification time, I wrote the following Vim function to do that:
function! WriteSmall() let mtime = system("date -d @`stat -c %Y ".shellescape(expand('%:p')) . "`") write call system("touch --date='".mtime."' ".shellescape(expand('%:p'))) endfunction map <F4> :call WriteSmall()<CR>
I’m sure there are other uses for it. You can put it in your Vim configuration and then press F4 (or map it to another key) every time you want to write the file without updating the modification time. It assumes you have date
, stat
and touch
from the GNU userland.