1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-03-25 19:32:20 +08:00

fix(core): fix parser_argv function

close https://github.com/SpaceVim/SpaceVim/issues/4640
This commit is contained in:
wsdjeg 2022-04-20 22:16:18 +08:00
parent a1b65988e7
commit c8035f713f

View File

@ -1582,13 +1582,10 @@ endfunction
" argc() return number of files " argc() return number of files
" argv() return a list of files/directories " argv() return a list of files/directories
function! s:parser_argv() abort function! s:parser_argv() abort
if !exists('v:argv') if exists('v:argv')
\ || (len(v:argv) >=# 3 && index(v:argv, '--embed') ==# -1) " if use embed nvim
" or do not support v:argv " for exmaple: neovim-qt
return [0, get(v:, 'argv', ['failed to get v:argv'])] if index(v:argv, '--dembed') !=# -1
elseif len(v:argv) ==# 1 || index(v:argv, '--embed') !=# -1
" if there is no arguments
" or use embed nvim
return [0] return [0]
elseif v:argv[1] =~# '/$' elseif v:argv[1] =~# '/$'
let f = fnamemodify(expand(v:argv[1]), ':p') let f = fnamemodify(expand(v:argv[1]), ':p')
@ -1604,6 +1601,11 @@ function! s:parser_argv() abort
else else
return [2, get(v:, 'argv', ['failed to get v:argv'])] return [2, get(v:, 'argv', ['failed to get v:argv'])]
endif endif
else
if !argc() && line2byte('$') == -1
return [0]
endif
endif
endfunction endfunction
function! SpaceVim#begin() abort function! SpaceVim#begin() abort