File: persistent.vim

package info (click to toggle)
vim-tlib 1.28-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid, trixie
  • size: 752 kB
  • sloc: ruby: 61; makefile: 5
file content (54 lines) | stat: -rw-r--r-- 1,697 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
" persistent.vim -- Persistent data
" @Author:      Tom Link (mailto:micathom AT gmail com?subject=[vim])
" @License:     GPL (see http://www.gnu.org/licenses/gpl.txt)
" @Created:     2012-05-11.
" @Last Change: 2017-03-29.
" @Revision:    15

" The directory for persistent data files. If empty, use 
" |tlib#dir#MyRuntime|.'/share'.
TLet g:tlib_persistent = ''


" :display: tlib#persistent#Dir(?mode = 'bg')
" Return the full directory name for persistent data files.
function! tlib#persistent#Dir() "{{{3
    TVarArg ['mode', 'bg']
    let dir = tlib#var#Get('tlib_persistent', mode)
    if empty(dir)
        let dir = tlib#file#Join([tlib#dir#MyRuntime(), 'share'])
    endif
    return dir
endf

" :display: tlib#persistent#EncodedFilename(type, file, ?mkdir=0, ?dir='')
" Encode `file` and call |tlib#persistent#Filename()|.
function! tlib#persistent#EncodedFilename(type, file, ...) "{{{3
    let file = tlib#url#Encode(a:file)
    return call(function('tlib#persistent#Filename'), [a:type, file] + a:000)
endf

" :def: function! tlib#persistent#Filename(type, ?file=%, ?mkdir=0)
function! tlib#persistent#Filename(type, ...) "{{{3
    " TLogDBG 'bufname='. bufname('.')
    let file = a:0 >= 1 ? a:1 : ''
    let mkdir = a:0 >= 2 ? a:2 : 0
    return tlib#cache#Filename(a:type, file, mkdir, tlib#persistent#Dir())
endf

function! tlib#persistent#Get(...) "{{{3
    return call('tlib#cache#Get', a:000)
endf

function! tlib#persistent#MTime(cfile) "{{{3
    return tlib#cache#MTime(a:cfile)
endf

function! tlib#persistent#Value(...) "{{{3
    return call('tlib#cache#Value', a:000)
endf

function! tlib#persistent#Save(...) "{{{3
    call call(function('tlib#cache#Save'), a:000)
endf