Mercurial > vim
diff src/misc1.c @ 18463:18d7337b6837 v8.1.2225
patch 8.1.2225: the "last used" info of a buffer is under used
Commit: https://github.com/vim/vim/commit/52410575be50d5c40bbe6380159df48cfc382ceb
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Oct 27 05:12:45 2019 +0100
patch 8.1.2225: the "last used" info of a buffer is under used
Problem: The "last used" info of a buffer is under used.
Solution: Add "lastused" to getbufinfo(). List buffers sorted by last-used
field. (Andi Massimino, closes #4722)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 27 Oct 2019 05:15:06 +0100 |
parents | 9f51d0cef8da |
children | 6ad15a9b7c89 |
line wrap: on
line diff
--- a/src/misc1.c +++ b/src/misc1.c @@ -2576,3 +2576,34 @@ path_with_url(char_u *fname) ; return path_is_url(p); } + +/* + * Put timestamp "tt" in "buf[buflen]" in a nice format. + */ + void +add_time(char_u *buf, size_t buflen, time_t tt) +{ +#ifdef HAVE_STRFTIME + struct tm tmval; + struct tm *curtime; + + if (vim_time() - tt >= 100) + { + curtime = vim_localtime(&tt, &tmval); + if (vim_time() - tt < (60L * 60L * 12L)) + /* within 12 hours */ + (void)strftime((char *)buf, buflen, "%H:%M:%S", curtime); + else + /* longer ago */ + (void)strftime((char *)buf, buflen, "%Y/%m/%d %H:%M:%S", curtime); + } + else +#endif + { + long seconds = (long)(vim_time() - tt); + + vim_snprintf((char *)buf, buflen, + NGETTEXT("%ld second ago", "%ld seconds ago", seconds), + seconds); + } +}