Improve cmd.exe shell escaping

This commit is contained in:
Tim Pope 2012-04-21 10:11:02 -04:00
parent 60fdd95b95
commit 1b6c0cbfb6

View File

@ -29,8 +29,8 @@ endfunction
function! s:shellesc(arg) abort
if a:arg =~ '^[A-Za-z0-9_/.-]\+$'
return a:arg
elseif &shell =~# 'cmd' && a:arg !~# '"'
return '"'.a:arg.'"'
elseif &shell =~# 'cmd'
return '"'.s:gsub(s:gsub(a:arg, '"', '""'), '\%', '"%"').'"'
else
return shellescape(a:arg)
endif