diff options
Diffstat (limited to 'vim/bundle/tlib_vim/autoload/tlib/var.vim')
| m--------- | vim/bundle/tlib_vim | 0 | ||||
| -rwxr-xr-x | vim/bundle/tlib_vim/autoload/tlib/var.vim | 83 | 
2 files changed, 0 insertions, 83 deletions
| diff --git a/vim/bundle/tlib_vim b/vim/bundle/tlib_vim new file mode 160000 +Subproject 5636472e5dba1a4104376ce6bd93cc2546e0248 diff --git a/vim/bundle/tlib_vim/autoload/tlib/var.vim b/vim/bundle/tlib_vim/autoload/tlib/var.vim deleted file mode 100755 index dcd9264..0000000 --- a/vim/bundle/tlib_vim/autoload/tlib/var.vim +++ /dev/null @@ -1,83 +0,0 @@ -" @Author:      Tom Link (micathom AT gmail com?subject=[vim]) -" @Website:     http://www.vim.org/account/profile.php?user_id=4037 -" @License:     GPL (see http://www.gnu.org/licenses/gpl.txt) -" @Revision:    30 - - -" Define a variable called NAME if yet undefined. -" You can also use the :TLLet command. -" -" EXAMPLES: > -"   exec tlib#var#Let('g:foo', 1) -"   TLet g:foo = 1 -function! tlib#var#Let(name, val) "{{{3 -    return printf('if !exists(%s) | let %s = %s | endif', string(a:name), a:name, string(a:val)) -    " return printf('if !exists(%s) | let %s = %s | endif', string(a:name), a:name, a:val) -endf - - -" :def: function! tlib#var#EGet(var, namespace, ?default='') -" Retrieve a variable by searching several namespaces. -" -" EXAMPLES: > -"   let g:foo = 1 -"   let b:foo = 2 -"   let w:foo = 3 -"   echo eval(tlib#var#EGet('foo', 'vg'))  => 1 -"   echo eval(tlib#var#EGet('foo', 'bg'))  => 2 -"   echo eval(tlib#var#EGet('foo', 'wbg')) => 3 -function! tlib#var#EGet(var, namespace, ...) "{{{3 -    let pre  = [] -    let post = [] -    for namespace in split(a:namespace, '\zs') -        let var = namespace .':'. a:var -        call add(pre,  printf('exists("%s") ? %s : (', var, var)) -        call add(post, ')') -    endfor -    let default = a:0 >= 1 ? a:1 : '' -    return join(pre) . string(default) . join(post) -endf - - -" :def: function! tlib#var#Get(var, namespace, ?default='') -" Retrieve a variable by searching several namespaces. -" -" EXAMPLES: > -"   let g:foo = 1 -"   let b:foo = 2 -"   let w:foo = 3 -"   echo tlib#var#Get('foo', 'bg')  => 1 -"   echo tlib#var#Get('foo', 'bg')  => 2 -"   echo tlib#var#Get('foo', 'wbg') => 3 -function! tlib#var#Get(var, namespace, ...) "{{{3 -    let var_ = substitute(a:var, '#', '_', 'g') -    for namespace in split(a:namespace, '\zs') -        let vname = namespace == 'g' ? a:var : var_ -        let var = namespace .':'. vname -        if exists(var) -            return {var} -        endif -    endfor -    return a:0 >= 1 ? a:1 : '' -endf - - -" :def: function! tlib#var#List(rx, ?prefix='') -" Get a list of variables matching rx. -" EXAMPLE: -"   echo tlib#var#List('tlib_', 'g:') -function! tlib#var#List(rx, ...) "{{{3 -    TVarArg ['prefix', 'g:'] -    if v:version >= 704 -        exec 'let varlist = keys('. prefix .')' -    else -        redir => vars -        silent! exec 'let '. prefix -        redir END -        let varlist = split(vars, '\n') -        call map(varlist, 'matchstr(v:val, ''^\S\+'')') -    endif -    call filter(varlist, 'v:val =~ a:rx') -    return varlist -endf - | 
