Updated plugins

This commit is contained in:
amix
2015-12-08 10:20:04 -03:00
parent 768c72a3ed
commit 3b37bba6cd
239 changed files with 8132 additions and 3198 deletions

View File

@@ -1,17 +1,29 @@
" file.vim
" @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)
" @Created: 2007-06-30.
" @Last Change: 2014-07-07.
" @Revision: 0.0.150
" @Revision: 168
if &cp || exists("loaded_tlib_file_autoload")
finish
if !exists('g:tlib#file#drop')
" If true, use |:drop| to edit loaded buffers (only available with GUI).
let g:tlib#file#drop = has('gui') "{{{2
endif
let loaded_tlib_file_autoload = 1
if !exists('g:tlib#file#use_tabs')
let g:tlib#file#use_tabs = 0 "{{{2
endif
if !exists('g:tlib#file#edit_cmds')
let g:tlib#file#edit_cmds = g:tlib#file#use_tabs ? {'buffer': 'tab split | buffer', 'edit': 'tabedit'} : {} "{{{2
endif
if !exists('g:tlib#file#absolute_filename_rx')
let g:tlib#file#absolute_filename_rx = '^\~\?[\/]' "{{{2
endif
""" File related {{{1
" For the following functions please see ../../test/tlib.vim for examples.
@@ -36,21 +48,32 @@ function! tlib#file#Split(filename) "{{{3
endf
" :display: tlib#file#Join(filename_parts, ?strip_slashes=1)
" :display: tlib#file#Join(filename_parts, ?strip_slashes=1, ?maybe_absolute=0)
" EXAMPLES: >
" tlib#file#Join(['foo', 'bar', 'filename.txt'])
" => 'foo/bar/filename.txt'
function! tlib#file#Join(filename_parts, ...) "{{{3
TVarArg ['strip_slashes', 1]
TVarArg ['strip_slashes', 1], 'maybe_absolute'
" TLogVAR a:filename_parts, strip_slashes
if maybe_absolute
let filename_parts = []
for part in a:filename_parts
if part =~ g:tlib#file#absolute_filename_rx
let filename_parts = []
endif
call add(filename_parts, part)
endfor
else
let filename_parts = a:filename_parts
endif
if strip_slashes
" let rx = tlib#rx#Escape(g:tlib#dir#sep) .'$'
let rx = '[/\\]\+$'
let parts = map(copy(a:filename_parts), 'substitute(v:val, rx, "", "")')
let parts = map(copy(filename_parts), 'substitute(v:val, rx, "", "")')
" TLogVAR parts
return join(parts, g:tlib#dir#sep)
else
return join(a:filename_parts, g:tlib#dir#sep)
return join(filename_parts, g:tlib#dir#sep)
endif
endf
@@ -181,3 +204,75 @@ function! tlib#file#With(fcmd, bcmd, files, ...) "{{{3
endf
" Return 0 if the file isn't readable/doesn't exist.
" Otherwise return 1.
function! tlib#file#Edit(fileid) "{{{3
if type(a:fileid) == 0
let bn = a:fileid
let filename = fnamemodify(bufname(bn), ':p')
else
let filename = fnamemodify(a:fileid, ':p')
let bn = bufnr(filename)
endif
if filename == expand('%:p')
return 1
else
" TLogVAR a:fileid, bn, filename, g:tlib#file#drop, filereadable(filename)
if bn != -1 && buflisted(bn)
if g:tlib#file#drop
" echom "DBG" get(g:tlib#file#edit_cmds, 'drop', 'drop') fnameescape(filename)
exec get(g:tlib#file#edit_cmds, 'drop', 'drop') fnameescape(filename)
else
" echom "DBG" get(g:tlib#file#edit_cmds, 'buffer', 'buffer') bn
exec get(g:tlib#file#edit_cmds, 'buffer', 'buffer') bn
endif
return 1
elseif filereadable(filename)
try
" let file = tlib#arg#Ex(filename)
" " TLogVAR file
" echom "DBG" get(g:tlib#file#edit_cmds, 'edit', 'edit') fnameescape(filename)
exec get(g:tlib#file#edit_cmds, 'edit', 'edit') fnameescape(filename)
catch /E325/
" swap file exists, let the user handle it
catch
echohl error
echom v:exception
echohl NONE
endtry
return 1
else
echom "TLIB: File not readable: " . filename
if filename != a:fileid
echom "TLIB: original filename: " . a:fileid
endif
endif
endif
return 0
endf
if v:version > 704 || (v:version == 704 && has('patch279'))
function! tlib#file#Glob(pattern) abort "{{{3
return glob(a:pattern, 0, 1)
endf
function! tlib#file#Globpath(path, pattern) abort "{{{3
return globpath(a:path, a:pattern, 0, 1)
endf
else
" :nodoc:
function! tlib#file#Glob(pattern) abort "{{{3
return split(glob(a:pattern), '\n')
endf
" :nodoc:
function! tlib#file#Globpath(path, pattern) abort "{{{3
return split(globpath(a:path, a:pattern), '\n')
endf
endif