Sun, 05 May 2024 02:13:36 -0500
pull out last_modified_days
1022 | 1 | func! vimrc#AutoFmtToggle() abort |
2 | if &formatoptions =~# 'a' | |
3 | setl formatoptions-=a | echo '-a' | |
4 | else | |
5 | setl formatoptions+=a | echo '+a' | |
6 | endif | |
7 | endfunc | |
8 | ||
9 | func! vimrc#SafeFilterFile(cmd) | |
10 | let errors = tempname() | |
11 | try | |
12 | exec 'silent %!' . a:cmd . ' 2>' . shellescape(errors) | |
13 | if v:shell_error | |
14 | for line in readfile(errors) | |
15 | echomsg line | |
16 | endfor | |
17 | endif | |
18 | finally | |
19 | call delete(errors) | |
20 | endtry | |
21 | endfunc | |
22 | ||
23 | if has('ruby') | |
24 | func! s:PruneFiles(path, days) abort | |
25 | ruby <<END_RUBY | |
26 | require 'pathname' | |
27 | ||
28 | (path, days) = VIM.evaluate('[a:path, a:days]') | |
29 | sunset = Time.now - (days * 86400) | |
30 | ||
31 | Pathname(path).realpath.each_child do |file| | |
32 | file.delete if file.mtime < sunset | |
33 | end | |
34 | END_RUBY | |
35 | endfunc | |
36 | else | |
37 | func! s:PruneFiles(path, days) abort | |
38 | endfunc | |
39 | endif | |
40 | ||
41 | func! vimrc#PruneFiles(path, days) abort | |
42 | call s:PruneFiles(a:path, a:days) | |
43 | endfunc | |
44 |