--- /dev/null
+" Borrowed from https://gist.github.com/mllg/5353184
+" It's like `find ~/.vim/tmp/undo -type f -mtime +31 -delete` but portable
+function Tmpwatch(path, days)
+ let l:path = expand(a:path)
+ if isdirectory(l:path)
+ for file in split(globpath(l:path, "*"), "\n")
+ if localtime() > getftime(file) + 86400 * a:days && delete(file) != 0
+ echo "Tmpwatch(): Error deleting '" . file . "'"
+ endif
+ endfor
+ else
+ echo "Tmpwatch(): Directory '" . l:path . "' not found"
+ endif
+endfunction
+
+" undofile part of your .vimrc
+if exists("+undofile")
+ " remove undo files which have not been modified for 31 days
+ call Tmpwatch(&undodir, 31)
+endif
+
+