如何从vim函数中获取返回值?

Rem*_*man 5 vim return return-value capture

例:

function! MyFunction()
  exe 'call Include("'.mykeyw.'")'
  Return value???
endfunction

function! Include(keyw)
   if condition == ""
     return 0
   endif
endfunction
Run Code Online (Sandbox Code Playgroud)

如果调用returnin Include(),我也想停止执行MyFunction() .

似乎除了returnInclude()MyFunction中检查return语句中的值之外别无他法.

但我怎么检查从返回值Include()MyFunction()

PE在这种情况下,我该如何捕捉return从值"0" Include()MyFunction()

rom*_*inl 8

函数可以用作表达式; 所以你可以简单地将Include()变量值存储在变量中或在条件中使用它:

function! MyFunction()
  let value = Include(mykeyw)    " stored as a variable
                                 " or
  if Include(mykeyw) == 1        " used in a conditional
    echo "Yay!"
  else
    echo "Nay!"
  endif
endfunction

function! Include(keyw)
  if condition == ""
    return 0
  endif
endfunction
Run Code Online (Sandbox Code Playgroud)