diff --git a/.gitignore b/.gitignore index 55273366..6ee50f54 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,7 @@ temp_dirs/undodir/* -sources_non_forked/ack.vim/.netrwhist +sources_non_forked_cache/ temp_dirs/yankring_history_v2.txt sources_forked/yankring/doc/tags -sources_non_forked/tlib/doc/tags -sources_non_forked/ctrlp.vim/doc/tags* my_plugins/ my_configs.vim tags diff --git a/README.md b/README.md index 79bd924e..357cec60 100644 --- a/README.md +++ b/README.md @@ -60,13 +60,8 @@ If you have vim aliased as `vi` instead of `vim`, make sure to either alias it: ## How to update to latest version? -Just do a git rebase! - - cd ~/.vim_runtime - git reset --hard - git clean -d --force - git pull --rebase - python update_plugins.py # use python3 if python is unavailable + git pull + python update_plugins.py || python3 update_plugins.py # use python3 if python is unavailable ## Some screenshots diff --git a/sources_non_forked/tlib/test/tlib.vim b/sources_non_forked/tlib/test/tlib.vim deleted file mode 100644 index 2277d361..00000000 --- a/sources_non_forked/tlib/test/tlib.vim +++ /dev/null @@ -1,219 +0,0 @@ -" tLib.vim -" @Author: Thomas Link (mailto:micathom AT gmail com?subject=vim-tLib) -" @Website: http://www.vim.org/account/profile.php?user_id=4037 -" @License: GPL (see http://www.gnu.org/licenses/gpl.txt) -" @Created: 2006-12-17. -" @Last Change: 2008-11-23. -" @Revision: 129 - -if !exists("loaded_tassert") - echoerr 'tAssert (vimscript #1730) is required' -endif - - -TAssertBegin! "tlib" - - -" List {{{2 -fun! Add(a,b) - return a:a + a:b -endf -TAssert IsEqual(tlib#list#Inject([], 0, function('Add')), 0) -TAssert IsEqual(tlib#list#Inject([1,2,3], 0, function('Add')), 6) -delfunction Add - -TAssert IsEqual(tlib#list#Compact([]), []) -TAssert IsEqual(tlib#list#Compact([0,1,2,3,[], {}, ""]), [1,2,3]) - -TAssert IsEqual(tlib#list#Flatten([]), []) -TAssert IsEqual(tlib#list#Flatten([1,2,3]), [1,2,3]) -TAssert IsEqual(tlib#list#Flatten([1,2, [1,2,3], 3]), [1,2,1,2,3,3]) -TAssert IsEqual(tlib#list#Flatten([0,[1,2,[3,""]]]), [0,1,2,3,""]) - -TAssert IsEqual(tlib#list#FindAll([1,2,3], 'v:val >= 2'), [2,3]) -TAssert IsEqual(tlib#list#FindAll([1,2,3], 'v:val >= 2', 'v:val * 10'), [20,30]) - -TAssert IsEqual(tlib#list#Find([1,2,3], 'v:val >= 2'), 2) -TAssert IsEqual(tlib#list#Find([1,2,3], 'v:val >= 2', 0, 'v:val * 10'), 20) -TAssert IsEqual(tlib#list#Find([1,2,3], 'v:val >= 5', 10), 10) - -TAssert IsEqual(tlib#list#Any([1,2,3], 'v:val >= 2'), 1) -TAssert IsEqual(tlib#list#Any([1,2,3], 'v:val >= 5'), 0) - -TAssert IsEqual(tlib#list#All([1,2,3], 'v:val < 5'), 1) -TAssert IsEqual(tlib#list#All([1,2,3], 'v:val >= 2'), 0) - -TAssert IsEqual(tlib#list#Remove([1,2,1,2], 2), [1,1,2]) -TAssert IsEqual(tlib#list#RemoveAll([1,2,1,2], 2), [1,1]) - -TAssert IsEqual(tlib#list#Zip([[1,2,3], [4,5,6]]), [[1,4], [2,5], [3,6]]) -TAssert IsEqual(tlib#list#Zip([[1,2,3], [4,5,6,7]]), [[1,4], [2,5], [3,6], ['', 7]]) -TAssert IsEqual(tlib#list#Zip([[1,2,3], [4,5,6,7]], -1), [[1,4], [2,5], [3,6], [-1,7]]) -TAssert IsEqual(tlib#list#Zip([[1,2,3,7], [4,5,6]], -1), [[1,4], [2,5], [3,6], [7,-1]]) - - -" Vars {{{2 -let g:foo = 1 -let g:bar = 2 -let b:bar = 3 -let s:bar = 4 - -TAssert IsEqual(tlib#var#Get('bar', 'bg'), 3) -TAssert IsEqual(tlib#var#Get('bar', 'g'), 2) -TAssert IsEqual(tlib#var#Get('foo', 'bg'), 1) -TAssert IsEqual(tlib#var#Get('foo', 'g'), 1) -TAssert IsEqual(tlib#var#Get('none', 'l'), '') - -TAssert IsEqual(eval(tlib#var#EGet('bar', 'bg')), 3) -TAssert IsEqual(eval(tlib#var#EGet('bar', 'g')), 2) -" TAssert IsEqual(eval(tlib#var#EGet('bar', 'sg')), 4) -TAssert IsEqual(eval(tlib#var#EGet('foo', 'bg')), 1) -TAssert IsEqual(eval(tlib#var#EGet('foo', 'g')), 1) -TAssert IsEqual(eval(tlib#var#EGet('none', 'l')), '') - -unlet g:foo -unlet g:bar -unlet b:bar - - - -" Filenames {{{2 -TAssert IsEqual(tlib#file#Split('foo/bar/filename.txt'), ['foo', 'bar', 'filename.txt']) -TAssert IsEqual(tlib#file#Split('/foo/bar/filename.txt'), ['', 'foo', 'bar', 'filename.txt']) -TAssert IsEqual(tlib#file#Split('ftp://foo/bar/filename.txt'), ['ftp:/', 'foo', 'bar', 'filename.txt']) - -TAssert IsEqual(tlib#file#Join(['foo', 'bar', 'filename.txt']), 'foo/bar/filename.txt') -TAssert IsEqual(tlib#file#Join(['', 'foo', 'bar', 'filename.txt']), '/foo/bar/filename.txt') -TAssert IsEqual(tlib#file#Join(['ftp:/', 'foo', 'bar', 'filename.txt']), 'ftp://foo/bar/filename.txt') - -TAssert IsEqual(tlib#file#Relative('foo/bar/filename.txt', 'foo'), 'bar/filename.txt') -TAssert IsEqual(tlib#file#Relative('foo/bar/filename.txt', 'foo/base'), '../bar/filename.txt') -TAssert IsEqual(tlib#file#Relative('filename.txt', 'foo/base'), '../../filename.txt') -TAssert IsEqual(tlib#file#Relative('/foo/bar/filename.txt', '/boo/base'), '../../foo/bar/filename.txt') -TAssert IsEqual(tlib#file#Relative('/bar/filename.txt', '/boo/base'), '../../bar/filename.txt') -TAssert IsEqual(tlib#file#Relative('/foo/bar/filename.txt', '/base'), '../foo/bar/filename.txt') -TAssert IsEqual(tlib#file#Relative('c:/bar/filename.txt', 'x:/boo/base'), 'c:/bar/filename.txt') - - - -" Prototype-based programming {{{2 -let test = tlib#Test#New() -TAssert test.IsA('Test') -TAssert !test.IsA('foo') -TAssert test.RespondTo('RespondTo') -TAssert !test.RespondTo('RespondToNothing') -let test1 = tlib#Test#New() -TAssert test.IsRelated(test1) -let testworld = tlib#World#New() -TAssert !test.IsRelated(testworld) - -let testc = tlib#TestChild#New() -TAssert IsEqual(testc.Dummy(), 'TestChild.vim') -TAssert IsEqual(testc.Super('Dummy', []), 'Test.vim') - - - -" Optional arguments {{{2 -function! TestGetArg(...) "{{{3 - exec tlib#arg#Get(1, 'foo', 1) - return foo -endf - -function! TestGetArg1(...) "{{{3 - exec tlib#arg#Get(1, 'foo', 1, '!= ""') - return foo -endf - -TAssert IsEqual(TestGetArg(), 1) -TAssert IsEqual(TestGetArg(''), '') -TAssert IsEqual(TestGetArg(2), 2) -TAssert IsEqual(TestGetArg1(), 1) -TAssert IsEqual(TestGetArg1(''), 1) -TAssert IsEqual(TestGetArg1(2), 2) - -function! TestArgs(...) "{{{3 - exec tlib#arg#Let([['foo', "o"], ['bar', 2]]) - return repeat(foo, bar) -endf -TAssert IsEqual(TestArgs(), 'oo') -TAssert IsEqual(TestArgs('a'), 'aa') -TAssert IsEqual(TestArgs('a', 3), 'aaa') - -function! TestArgs1(...) "{{{3 - exec tlib#arg#Let(['foo', ['bar', 2]]) - return repeat(foo, bar) -endf -TAssert IsEqual(TestArgs1(), '') -TAssert IsEqual(TestArgs1('a'), 'aa') -TAssert IsEqual(TestArgs1('a', 3), 'aaa') - -function! TestArgs2(...) "{{{3 - exec tlib#arg#Let(['foo', 'bar'], 1) - return repeat(foo, bar) -endf -TAssert IsEqual(TestArgs2(), '1') -TAssert IsEqual(TestArgs2('a'), 'a') -TAssert IsEqual(TestArgs2('a', 3), 'aaa') - -function! TestArgs3(...) - TVarArg ['a', 1], 'b' - return a . b -endf -TAssert IsEqual(TestArgs3(), '1') -TAssert IsEqual(TestArgs3('a'), 'a') -TAssert IsEqual(TestArgs3('a', 3), 'a3') - -delfunction TestGetArg -delfunction TestGetArg1 -delfunction TestArgs -delfunction TestArgs1 -delfunction TestArgs2 -delfunction TestArgs3 - - - -" Strings {{{2 -TAssert IsString(tlib#string#RemoveBackslashes('foo bar')) -TAssert IsEqual(tlib#string#RemoveBackslashes('foo bar'), 'foo bar') -TAssert IsEqual(tlib#string#RemoveBackslashes('foo\ bar'), 'foo bar') -TAssert IsEqual(tlib#string#RemoveBackslashes('foo\ \\bar'), 'foo \\bar') -TAssert IsEqual(tlib#string#RemoveBackslashes('foo\ \\bar', '\ '), 'foo \bar') - - - -" Regexp {{{2 -for c in split('^$.*+\()|{}[]~', '\zs') - let s = printf('%sfoo%sbar%s', c, c, c) - TAssert (s =~ '\m^'. tlib#rx#Escape(s, 'm') .'$') - TAssert (s =~ '\M^'. tlib#rx#Escape(s, 'M') .'$') - TAssert (s =~ '\v^'. tlib#rx#Escape(s, 'v') .'$') - TAssert (s =~ '\V\^'. tlib#rx#Escape(s, 'V') .'\$') -endfor - - -" Encode, decode -TAssert IsEqual(tlib#url#Decode('http://example.com/foo+bar%25bar'), 'http://example.com/foo bar%bar') -TAssert IsEqual(tlib#url#Decode('Hello%20World.%20%20Good%2c%20bye.'), 'Hello World. Good, bye.') - -TAssert IsEqual(tlib#url#Encode('foo bar%bar'), 'foo+bar%%bar') -TAssert IsEqual(tlib#url#Encode('Hello World. Good, bye.'), 'Hello+World.+Good%2c+bye.') - -TAssertEnd test test1 testc testworld - - -TAssert IsEqual(tlib#string#Count("fooo", "o"), 3) -TAssert IsEqual(tlib#string#Count("***", "\\*"), 3) -TAssert IsEqual(tlib#string#Count("***foo", "\\*"), 3) -TAssert IsEqual(tlib#string#Count("foo***", "\\*"), 3) - - -finish "{{{1 - - -" Input {{{2 -echo tlib#input#List('s', 'Test', ['barfoobar', 'barFoobar']) -echo tlib#input#List('s', 'Test', ['barfoobar', 'bar foo bar', 'barFoobar']) -echo tlib#input#List('s', 'Test', ['barfoobar', 'bar1Foo1bar', 'barFoobar']) -echo tlib#input#EditList('Test', ['bar1', 'bar2', 'bar3', 'foo1', 'foo2', 'foo3']) - - diff --git a/sources_non_forked/vim-colors-solarized/doc/tags b/sources_non_forked/vim-colors-solarized/doc/tags deleted file mode 100644 index 3785a094..00000000 --- a/sources_non_forked/vim-colors-solarized/doc/tags +++ /dev/null @@ -1,27 +0,0 @@ -'solarized_bold' solarized.txt /*'solarized_bold'* -'solarized_contrast' solarized.txt /*'solarized_contrast'* -'solarized_degrade' solarized.txt /*'solarized_degrade'* -'solarized_hitrail' solarized.txt /*'solarized_hitrail'* -'solarized_italic' solarized.txt /*'solarized_italic'* -'solarized_menu' solarized.txt /*'solarized_menu'* -'solarized_termcolors' solarized.txt /*'solarized_termcolors'* -'solarized_termtrans' solarized.txt /*'solarized_termtrans'* -'solarized_underline' solarized.txt /*'solarized_underline'* -'solarized_visibility' solarized.txt /*'solarized_visibility'* -before solarized.txt /*before* -solarized solarized.txt /*solarized* -solarized-colors solarized.txt /*solarized-colors* -solarized-colorscheme solarized.txt /*solarized-colorscheme* -solarized-help solarized.txt /*solarized-help* -solarized-install solarized.txt /*solarized-install* -solarized-menu solarized.txt /*solarized-menu* -solarized-options solarized.txt /*solarized-options* -solarized-term solarized.txt /*solarized-term* -solarized-togglebg solarized.txt /*solarized-togglebg* -solarized.vim solarized.txt /*solarized.vim* -toggle-background solarized.txt /*toggle-background* -toggle-bg solarized.txt /*toggle-bg* -togglebg solarized.txt /*togglebg* -urxvt solarized.txt /*urxvt* -vim-colors-solarized solarized.txt /*vim-colors-solarized* -without solarized.txt /*without* diff --git a/update_plugins.py b/update_plugins.py index 2b5d53e0..47b33c3d 100644 --- a/update_plugins.py +++ b/update_plugins.py @@ -12,7 +12,7 @@ import tempfile import urllib.request import zipfile from io import BytesIO -from os import path +from os import listdir, path # --- Globals ---------------------------------------------- PLUGINS = """ @@ -67,7 +67,8 @@ dracula https://github.com/dracula/vim GITHUB_ZIP = "%s/archive/master.zip" -SOURCE_DIR = path.join(path.dirname(__file__), "sources_non_forked") +FALLBACK_SOURCE_DIR = path.join(path.dirname(__file__), "sources_non_forked") +SOURCE_DIR = path.join(path.dirname(__file__), "sources_non_forked_cache") def download_extract_replace(plugin_name, zip_path, temp_dir, source_dir): @@ -104,6 +105,9 @@ def update(plugin): if __name__ == "__main__": temp_directory = tempfile.mkdtemp() + if not path.isdir(SOURCE_DIR) or not listdir(SOURCE_DIR): + shutil.copytree(FALLBACK_SOURCE_DIR, SOURCE_DIR) + try: if futures: with futures.ThreadPoolExecutor(16) as executor: diff --git a/vimrcs/plugins_config.vim b/vimrcs/plugins_config.vim index 255dcd88..fdbe2b96 100644 --- a/vimrcs/plugins_config.vim +++ b/vimrcs/plugins_config.vim @@ -10,7 +10,10 @@ """""""""""""""""""""""""""""" let s:vim_runtime = expand(':p:h')."/.." call pathogen#infect(s:vim_runtime.'/sources_forked/{}') -call pathogen#infect(s:vim_runtime.'/sources_non_forked/{}') +if !isdirectory(s:vim_runtime.'/sources_non_forked_cache') + call system("cp -r " . s:vim_runtime.'/sources_non_forked' . " " . s:vim_runtime.'/sources_non_forked_cache') +endif +call pathogen#infect(s:vim_runtime.'/sources_non_forked_cache/{}') call pathogen#infect(s:vim_runtime.'/my_plugins/{}') call pathogen#helptags()