From 4b3fbd1592e72843021e0ae79adbfc5c902ddfa7 Mon Sep 17 00:00:00 2001 From: Junegunn Choi Date: Sat, 18 Oct 2014 11:25:38 +0900 Subject: [PATCH] Workaround for PlugUpgrade error on Neovim (#111) --- plug.vim | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/plug.vim b/plug.vim index 36b7f71..b5977f8 100644 --- a/plug.vim +++ b/plug.vim @@ -1268,12 +1268,7 @@ function! s:upgrade() throw get(s:lines(output), -1, v:shell_error) endif elseif has('ruby') - ruby << EOF - require 'open-uri' - File.open(VIM::evaluate('new'), 'w') do |f| - f << open(VIM::evaluate('s:plug_src')).read - end -EOF + call s:upgrade_using_ruby(new) else return s:err('curl executable or ruby support not found') endif @@ -1294,6 +1289,15 @@ EOF endif endfunction +function! s:upgrade_using_ruby(new) + ruby << EOF + require 'open-uri' + File.open(VIM::evaluate('a:new'), 'w') do |f| + f << open(VIM::evaluate('s:plug_src')).read + end +EOF +endfunction + function! s:upgrade_specs() for spec in values(g:plugs) let spec.frozen = get(spec, 'frozen', 0)